非对称加密技术介绍
对称加密技术被称为初等加密技术,非对称加密技术即为高级数据加密技术,安全性更高。非对称加密算法突破了对称加密算法的一些弱点尤其是强以来密钥的长度和保密性的特性。
特点
非对称加密技术一般有两把密钥:公钥和私钥
公钥用来加密,私钥用来解密是非对称加密技术的特点;
私钥加密,公钥解密也可以,这种用法是在数字签名技术中使用,加密中不要使用;
- 优势:安全;
- 劣势:效率低,极端场景下比对称加密技术能慢1000倍;
家族发展历史
对称加密技术
解决了信息加密技术
问题,但是对称加密技术
有一个很大的问题就是密钥管理问题,这是一个技术和管理手段并行才能解决的难题,而且密钥一般情况下不能被传输,以防止密钥被截获。
非对称加密技术
解决了密钥管理难题
,非对称加密算法源于DH
算法(密钥交换算法),DH算法可以称为非对称加密算法的鼻祖。
- 1976年,非对称加密算法在IEEE刊物上被首次提出;
应用场景
非对称加密算法虽然安全性高,解决了密码管理问题,但是非对称加密算法有两个致命问题:
- 加密效率:算法运行效率慢,这是无法忽视的,很多场合无法忍受的;
- 待加密数据长度要求高:不适合加密大量数据,适合加密短小的数据;
由于以上两个问题,<font color = 'red'>非对称加密数据更适合交换对称加密算法的密钥,而非数据加密。</font>这个特性很关键,这决定了非对称加密技术在数字证书、整体实践过程中的使用时机和地位。
关于非对称加密算法的应用,很多学者建议,对称加密和非对称加密结合使用。
- 使用对称加密算法(如AES)加密要传输的数据,效率高,且无数据大小限制;
- 使用非对称加密算法(如RSA)加密对称加密算法的密钥;
算法家族
加密算法其实本质上就是数学公式和数学求解,非对称加密算法主要分为三类,基于大数因子分解算法
和基于整数有限域离散对数算法
以及更复杂的基于椭圆曲线加密的算法
,具体包括以下算法:
-
RSA算法
,由MIT的学者提出,典型的基于因子分解算法
,也是当今应用最广泛的非对称加密算法; -
ElGamal算法
,基于离散对数
的算法,可用于加解密,也是数字签名算法的参考标准,DSS
(数字签名标准)中的DSA
(数字签名算法)由此演变而来; -
ECC算法
,椭圆曲线加密
,ECC算法建立密钥时可以做到更快、更小、更有效,由椭圆曲线方程式产生密钥,区别于传统的大质数的积产生算法,效率高;
DSA应该作为数字签名技术中的核心算法对待而不是非对称加密算法来对待。
网友评论