当前位置:首页 >资讯 >三千年的加密算法发展史


乍一看,加密算法似乎与大多数人的日常生活息息相关,但实际上却息息相关。从网络层到主机文件层,加密层的应用程序或协议都是由各种加密算法支撑的。即使你不使用任何加密产品,所有使用HTTPS的网站都使用了TLS/SSL的加密协议。您还被动地享受加密算法和通信安全带来的隐私保护。今天,让我们把肤浅的应用放在一边,选择各种有趣的加密算法。

加密算法发展史浅析三千年。

采用加密算法需满足以下三点诉求:

机密性

确保小偷不知道是什么,即使数据被盗取;

完整性

确保在传输过程中,即使被劫持修改,接收者也能发现信息已被截取,而选择更改;

可用性

保证加密算法的费用.复杂性在可用范围内。

加密算法的发展结合上述诉求,主要经历了两个重要时期:古典密码和现代密码。

一.古代人民如何加密?

加密算法是历史上最早的。

军队中主要采用早期加密算法。历史上第一个关于加密算法的记载来自周朝军事书籍《六涛龙涛》中的阴符和阴书。

太公说:主将,有阴符,八等。有大胜敌的符,长一英尺。破军抓将的符,长九英寸。降城得城的符,长八英寸。但是敌人回报的符,长七英寸。警察坚守的符,长六英寸。请粮益兵的符,长五英寸。战败将军的符,长四英寸。失败者的符,长三英寸。所有的人都遵从使者的象征和记忆。如果他们听说了什么,他们就会被泄露出去的人杀死。八个象的人,大师的秘密,所以阴言,不泄密。虽然敌人很聪明,但他们无法知道。

吴王问太公说:……符不能说清楚;彼此相隔遥远,言语不通。为什么?太公说:有阴谋的顾虑,当书不用。主以书的将军,将以书问主。所有的书都在一起,然后离开,三发而一知。再离开的人,分为三本书。三发而一知,三人说,人操一分,互不相识。这叫阴书。虽然敌人是智慧的,但他们无法理解。

简而言之,阴符是用八等长的符号表达不同的信息和指令。它们属于密码学中的替代方法。在应用程序中,它们将信息转化为敌人无法理解的符号,但知道这些符号的人知道它们代表什么。这种符号方法不能表达丰富的意义,只能表达最关键的八种意义。作为对阴符的补充,阴书使用文本拆分法直接将一个文本分成三个部分,并通过三个渠道将其发送给目标方。只有当敌人同时拦截三个部分时,他才能破解阴符上写的内容。

以上简单的加密算法思想主要采用替代法。同样,在遥远的西方加密算法中也在战争中大规模使用。公元前五世纪,希腊城邦和波斯帝国发生了许多冲突和战争,这些冲突和战争记录在希罗多德的历史上。在这些战争中,希腊城邦广泛采用移位法加密战争通信信息,这使得波斯帝国很难获得希腊城邦的军事情报,因此无法提前进行军事部署。

希腊城邦用于传递军事信息。指令的每个部分都有一个固定的字数,接收密码的人手中将有一个文本转移说明。在获得密文后,解密者将根据文本转移说明进行解密,以破解军事命令或新闻。

古典密码主要采用移动方法和替换方法。在逐步发展和完善之后,最著名的是凯撒密码。凯撒密码有两种模式——移动方法和替换方法。其中,移动方法是使明文移动到固定方向的特定位数,如爱右4位移动变成MPSzicsy。但在英语或拉丁语中,字母出现的频率并不一致。以英文字母为例:字母E出现的频率明显高于其他字母。在获得足够的秘密文本样本后,可以准确地通过频率计算找到移动规则,从而破解秘密文本。同时,由于需要可逆操作,钥匙的数量实际上是有限的,只有25种可能性。因此,通过暴力破解可以完全解决秘密文本。

因此,在实际应用中,大多数凯撒密码采用了第二种模式——替换方法。明文密文映射表定义:

在一定程度上,这种方法可以解决密钥可怜的问题,但是对于大数据量的频率攻击仍然是无助的。

后来,通过引入一些特定参数来扰乱频率,这种模式发展成为一种模式,这在一定程度上提高了理解密度的难度,但仍然属于替换法和移位法的范畴。

经典密码后期开发了一系列密码类型,如维吉尼亚密码.ROT5/13/18/47.摩尔斯密码等。但是,它们都是基于替换法和移位法,安全性主要取决于算法的不公开性。所使用的加密算法只能被视为当前加密算法的雏形,或者只是作为最初的加密理念可以借鉴。

二、现代人加密算法更科学

实质上经典加密算法关键考虑到语言学上方式的更改。直至二十世纪中期,香农发布了《秘密系统的通讯论》一文,标志着加密算法的重心转移到运用数学上的迁移。因此,渐渐地衍生出了如今关键的三种加密算法:非对称加密.对称加密和哈希算法。这三种算法在实际情况下也常常结合在一起应用,以充分发挥最好是实际效果。

对称加密算法

对称加密算法是应用最普遍的一种加密算法。常用的对称加密算法有DES算法.AES算法.3DES算法.TDES算法.TDES算法.Blowfish算法.Blowfish算法.RC5算法.IDEA算法等。对称加密的特性是,加密和解密两边用同一把钥匙开展加.解密。加密算法自身外漏不容易对安全性导致危害,钥匙是安全性的关键。依照原理不一样,对称加密能够大概分成流加密和分组加密两种类型。

加密算法不对称

非对称加密算法和对称加密算法最大的区别就是加密的钥匙和解密的钥匙不再是一个。这就好比两个人对着密码。这种加密方式主要是为了应付多加密一解密的模式,而对称钥匙只能解决一对一关系的解密用户。