参考文档:https://blog.csdn.net/u011068702/article/details/73357150
对称加密(数据保密性)
算法:DES 、 3DES 、 RC5、AES特点:加密和解密使用相同的密钥
加密原文
非对称加密(数据保密性)
算法:DH、RSA特点:需要两个秘钥公钥和私钥
加密速度慢,只可用其加密小数据(如对称密钥、消息摘要)
加密后密文会变长
数字签名(数据完整性和验证发送方身份)
解决发送方身份是否合法的问题,防止信息被篡改数字签名:原文 通过 散列算法生成 摘要,摘要 通过私钥加密得到 签名信息,
签名信息追加到原文一起发送。
接收方 用发送方 公钥 解密签名信息得到摘要,同时用相同散列算法计算 原文
得到摘要,两个摘要比较就可以判断发送方身份问题以及解决文件是否被篡改。
数字签名使用到非对称加密技术和摘要(散列)技术。
散列算法:MD5、SHA-1、SHA_256。
数字证书(公钥所属人身份)
在用公钥解密签名信息时,接收方不能确定此公钥一定是发送方的。数字证书把公钥和公钥所属人绑定来证明公钥一定是发送方的。
数字证书:对公钥所属人信息以及公钥经过证书授权中心数字签名得到的。相当于发送方的身份证。
数字证书是由CA(Certificate Authority)证书授权机构发放。承担公钥体系中公钥的合法性检验的责任。
因为数字证书是公开的,就像公开的电话簿一样,在实践中,发送者(即甲)会将一份自己的数字证书的拷贝连同密文、摘要等放在一起发送给接收者(即乙),而乙则通过验证证书上权威机构的签名来检查此证书的有效性(只需用那个可信的权威机构的公钥来验证该证书上的签名就可以了),如果证书检查一切正常,那么就可以相信包含在该证书中的公钥的确属于列在证书中的那个人(即甲)。