加密介绍


加密通讯总共有四大类,签名算法、对称加密算法、非对称加密算法与量子加密技术,下面分别对几大类算法进行介绍

1、签名算法

代表算法:md5、sha1、crc32
有的地方叫签名算法,有的地方叫哈希算法,有的地方叫指纹算法、数字摘要等等,都代表一个意思。在解释这个之前我先说说“哈希”的意思。哈希也叫散列,意思是,将一串任意长度数据经过某种特定的算法转为固定长度的输出。比如10000个字符将其转为20个字符,这样的算法就叫哈希算法。20个字符虽然容易重复,但随着字符的增多,重复概率将会指数级下降,但通过20个字符很容易就能确定10000个字符的范围,比如对N组10000个字符进行对比,这样做的好处是通过比对20个字符的签名就能筛选出绝大部分数据,剩下的数据经过简单的比对就行了,非常省时省力。
签名算法有什么优势呢?
(1)、校验数据准确性。数据的准确性在通信领域有着举足轻重的作用。纠错编码比如海明码等等可以使错误编码在一定范围内时对其进行纠正,但一旦超过阈值,就算使用编码纠错,最终得出的结果也是错误的。这时候就需要哈希算法对数据进行签名,以确保数据准确性。
(2)、对数据进行归纳整理。比如哈希表就基于哈希算法,将一堆数据均匀分布在哈希结构中,使得寻找某个数据非常简单方便。
(3)、做验证之用。比如用户登录界面,在客户端经过哈希算法计算之后,服务器端只需要验证结果是不是符合就可以了,不用传输整个密码。就算黑客在中途截获数据包也无法推算出密码(暂时不考虑彩虹表等玩意儿,哈希算法可以定义为信息不可逆)。
优势挺多,但劣势也比较严重:
(1)、数据不可逆。也就是说,生成的签名几乎不可能再推导回原数据。
(2)、相对来说不那么安全。彩虹表有一定概率可以在短时间破解MD5加密的密码,王小云研究出来的哈希碰撞也能在一定程度上削弱MD5的安全性。

2、对称加密算法

代表算法:des、3des、aes
对称加密算法的原理是,加密和解密使用同一个密钥。最简单的,每个字节分别XOR一个固定字节就实现了简单的对称加密,在解密时还原回来就行了。但这种算法很容易被破解,所以需要一些比较厉害的算法,使加密后的数据不那么容易的被破解。这时候,加密标准应运而生。代表算法是其中最流行的三种。优势是:
(1)、速度快。这个速度相对于非对称加密来说,速度就像飞起来一样。
(2)、可逆。相对于签名算法来说,加密后的信息可以通过密钥还原为加密前的信息。
(3)、用的比较广的算法相对于自己XOR来说,更安全,被破解的概率非常小。
对称加密也有它的劣势:
(1)、一旦获取到加密后的数据与加密的密码,即可推算出原始数据。
(2)、无法实现签名的效果,也就是无法避免中间人攻击。

3、非对称加密算法

代表算法:Diffie-Hellman、rsa
非对称加密的核心是,对同一块数据,加密和解密使用的密码是不同的。DH是非对称加密的开端,真正让非对称加密名扬天下的算法是rsa算法。rsa算法的原理这里不讲,这种算法非常难以破解的原理是,它使用两个非常大的质数的乘积,也就是说,这个大数字只能由这两个数字相乘得到。所以暴力因式分解就非常难了,几乎不可能。目前人类破解的最长的rsa密码是768位的,可以认为1024位比较安全,2048位非常安全。优势:
(1)、通讯双方分别使用了不同的公钥和私钥,使得加密信息非常安全,窃听者必须知道两者的密钥才能完整截获所有数据。
(2)、支持签名的操作,也就是说,可以用来做验证用(签名算法无法实现)。比如软件的数字签名,用于标识软件是否被更改等。
非对称加密的劣势:
(1)、加解密速度非常慢,不过在和对称加密配合使用后,可以弱化这个劣势。
(2)、在量子技术成熟后,单纯的非对称加密也不会太安全。

4、量子加密技术

量子加密技术基于量子力学原理从而诞生的技术,可以确定的是,只要量子力学还统治微观世界,那么这种技术就可以认为几乎是绝对安全的。量子信息技术可以说是和人工智能一样可以颠覆整个行业的技术。这种技术的原理和经典计算机原理很不一样,所以在使用上会比较费劲。另外网上关于量子力学很多言论都不准确,鉴别这个比较费劲。这种技术的优势有:
(1)、通信速度翻N倍。以前是以一堆光子代表一个信号,现在是一个量子代表一个信号。
(2)、可以确定的是,只要量子力学没有被推翻,那么这项技术就是绝对安全的。
量子加密技术劣势:
(1)、一旦有新的物理学推翻量子力学,则这个技术将会在一夜间变得非常不安全。
(2)、基于现有条件,这种技术还很难广泛投入使用。
(3)、只对窃听有效。通讯两者一旦一方被攻陷,那么再安全的加密技术也无济于事。

发布者

fawdlstty

又一只萌萌哒程序猿~~

《加密介绍》上有1条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注