首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

密码并不深奥,一文带你了解神秘的密码学,拿走不谢

说到“密码”二字,可能很多人都会感到神秘,这是因为密码学是一个小众学科,且其专业性不能被广大群众所了解和掌握,因此,密码和黑客一样,是一个神秘的词汇,那今天呢,小编就带大家了解密码学的前世今生,相信大家都能看懂!

密码学的历史:

密码学的起源其实很早,据史诗记载,最早的原始密码出现在公元前5世纪,那时古希腊的斯巴达就出现了原始的密码器,它是用带子缠绕木棍,沿着木棍纵向写好明文,然后将带子解下来就成为了杂乱无章的密文。

到了公元前1世纪,最为著名的当属凯撒密码,它被广泛用于高卢战争中,其实凯撒密码也是一种简单的单字母密码,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A都将被替换成D,B变成E,以此类推。

然后呢,到了公元16世纪晚期,在单一凯撒密码的基础上扩展,称为“维吉尼亚”密码,它是使用一系列凯撒密码组成密码字母表的加密算法,并且首次引入了经典的“密钥”的概念,也就是说是根据密钥来决定用哪一行的密表来进行替换操作。

其实在密码学的历史上,最为著名的当属恩尼格玛密码机,它是一种用于加密与解密文件的密码机。恩尼格玛在19世纪20年代早期开始应用于商业中,且在二战中被希特勒的纳粹德国的军队和政府广泛采用。

到了20世纪70年代中期,密码学界发生了两件跨时代的大事,它们分别是1976年,由美国国家标准局颁布的DES算法为国家标准算法,同年,在美国斯坦福大学的Diffie和Hellman两人提出了公开密钥密码的新思想,把密钥分为加密的公钥和加密的私钥,这是密码学历史上的一场真正的革命,它标志着从此密码学进行到现代密码学流行的大潮之中。

密码学概述:

要了解密码学,首先要了解密码学中一些基本概念,比如明文是利用密码技术变换前的消息,而加密就是用某种方法伪装消息、以隐藏信息内容的过程;密文则是被加密后的消息;解密则是把密文转化为明文的过程;加密算法是指用于加密的数学函数;而解密算法则是用于解密的数学函数加密和解密算法的操作通常都是在一组密钥的控制下进行的,分别称为加密密钥和解密密钥。

其实,密码算法可以分为三类,分别为对称密码算法、非对称密码算法和杂凑算法。

首先看一下对称密码算法:

对称密码算法,就是加密和解密使用同一密钥,或彼此之间相互容易推导。对称密码体质的通信模型如下:

根据加密方式的不同,对称密码体制可以分为两大类,分别是分组密码和流密码。

1) 分组密码,就是将明文分成固定长度的组(如64bit、128bit),然后以组为单位用同一密钥和算法对其尽心加/解密,输出的密文也是固定的长度。

2) 流密码,又称为序列密码,是按位进行加/解密,也就是用已知的密钥随机序列与明文按位进行异或操作。

到这可能大家有所疑问:对称密码体制是否有什么优点和缺点呢?

首先说一下优点,对称密码的优点就是运算速度快,硬件很容易实现;而对称密码体制的缺点也很明显,在密文传输之前发送者和接收者需要使用安全信道余弦通信密钥,而对于密钥管理,尤其是当通信的人数增加时,密钥的数目将会急剧膨胀,对传输信息的完整性它是不做检查的,这就无法解决消息确认问题,而且它缺乏自动检测密钥泄露的能力。

然后看一下非对称密码算法:

非对称密码算法,也成为公钥算法,它是1976年,Diffie和Hellmann提出的,其加密和解密使用的是不同的密钥,而且不能在有效的时间内相互推导,而对于加密密钥则是公开密钥,解密密钥则是秘密密钥。

其实,公钥密码体制的产生,对于密码学来说是一场革命性的存在,因为它为数据的保密性、完整性、真实性提供了有效方便的技术,而且科学地解决了对称密码技术密钥分配的问题。在公钥密码体制中,比较著名的算法有RSA、ELGamal、椭圆曲线等,其中,RSA算法是最经典也是影响最大的算法。

最后说一下杂凑算法:

杂凑算法是可以将任意长度的消息作为输入,产生固定长度的输出,也成为杂凑值,其实杂凑算法相当于产生输入的“指纹”,它用于广泛的应用,比如在谁签名中,可以先将很长的消息做杂凑变换,然后只对杂凑值签名,第二个著名的应用是在数据完整性校验中。

上面就是关于密码学的历史和概述的全部内容,对于密码学来说,由于其具有很强的专业性,且其理论和过程具备很强的数学性,如果你想掌握密码学相关的算法知识,首先你要掌握数学中数论、布尔运算和有限域运算等数学知识,上面小编知识概括性的带大家过了一遍密码学的历史和概述,如果你只是想了解一下这个小众学科的知识,只要你对上面的内容有所印象,就代表已经掌握,如果你想深入了解密码学相关的专业知识,建议查看专业的密码学书籍,好了,咱们今天就聊到这吧,下次再见哦!

敬请关注“品位集结号”,为您带来意外的小收获!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210215A05GXT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券