对称加密和非对称加密
在密码学中,加密(Encryption)是将明文信息通过加密方法变成难以读取的密文内容,使之不可读的过程,加密算法就是加密的方法,通过算法生成随机密钥。解密时拥有解密方法的对象将密文还原为正常可读的内容。加密本身不能防止信息被截取,但加密可以防止信息不被截取者理解,早期加密常用于军事通讯,现在加密被大量用于计算机通讯
加密的分类
密码学从密钥的数量角度把加密分为两类:对称加密和非对称加密
对称加密(密钥加密)
对称加密是加密和解密使用相同密钥的算法,加密和解密的速度快、效率高适用于大量数据的加密。对称加密的算法公开,安全性取决于密钥的大小和密钥的保密性。
所以密钥的传输和管理也成为对称加密的缺点,密钥在传输过程中会有泄露的风险,每次对称加密都会产生一个密钥,大量密钥的管理会双方的负担
对称加密常用的算法:DES、3DES、AES
DES:数据加密标准,加密强度小,不安全
3DES:原理和DES一样,使用3个密钥对数据进行3次加密,增加加密强度,但要维护3个密钥
AES:高级加密标准,目前美国国家安全局使用的,苹果的钥匙串访问采用的就AES加密。是现在公认的最安全的加密方式,是对称密钥加密中最流行的算法
image-20220419144822191.png
非对称加密(公钥加密)
非对称加密会生成一对密钥,公钥(Public Key)和私钥(Private Key);由公钥加密的信息,只有私钥才能解密,相反由私钥加密的信息,也只有公钥才能解密;由于加密的公钥是公开给别人加密,解密的私钥自己保存,所以解决了密钥在传输过程中暴露的风险,缺点是算法强度大,速度慢;优点是安全
非对称加密常用的算法:RSA
image-20220419150032892.png