先介绍一下相关基本概念(来自于HTTP权威指南)
密码:采用一定算法对文本进行编码,生成使偷窥者无法识别的字符串。
密钥:改变密码行为的数字化参数。
对称加密:编码、解码使用相同密钥的算法。
非对称加密:编码、解码使用不同密钥的算法。
数字签名:用来验证报文是否被伪造后者篡改的校验和。
数字证书:由一个可信任的组织验证和签发的识别信息。
1.数字加密技术的基本加密、解密过程如下图所示:
1)如果编码和解码的密钥使用相同的共享密钥,那么这个加密技术被大众称之为对称加密,这是我们经常用的一种加密方法,比如:DES、RC4等都属于对称加密技术。
2)如果编码采用公钥(对外公开),解码采用消息接收者才知道的私钥,那么这个加密技术被称之为非对称加密,RSA就是比较著名的非对称公开密钥加密系统。
2.数字签名就是在报文的后面增加一个摘要的校验和,这个校验和就是签名。接收方在接收到报文后,计算出报文摘要,再解码签名,比较两者是否一致,如果一致则认为报文未被修改。
如下图所示:
但是要注意的是,摘要的加密采用的是发送方A的私钥,解密采用的是发送方A的公钥。
密码:采用一定算法对文本进行编码,生成使偷窥者无法识别的字符串。
密钥:改变密码行为的数字化参数。
对称加密:编码、解码使用相同密钥的算法。
非对称加密:编码、解码使用不同密钥的算法。
数字签名:用来验证报文是否被伪造后者篡改的校验和。
数字证书:由一个可信任的组织验证和签发的识别信息。
1.数字加密技术的基本加密、解密过程如下图所示:
1)如果编码和解码的密钥使用相同的共享密钥,那么这个加密技术被大众称之为对称加密,这是我们经常用的一种加密方法,比如:DES、RC4等都属于对称加密技术。
2)如果编码采用公钥(对外公开),解码采用消息接收者才知道的私钥,那么这个加密技术被称之为非对称加密,RSA就是比较著名的非对称公开密钥加密系统。
2.数字签名就是在报文的后面增加一个摘要的校验和,这个校验和就是签名。接收方在接收到报文后,计算出报文摘要,再解码签名,比较两者是否一致,如果一致则认为报文未被修改。
如下图所示:
但是要注意的是,摘要的加密采用的是发送方A的私钥,解密采用的是发送方A的公钥。
3.数字证书是由一个可信任的组织(CA)颁发的,其实就是你想发布一个公钥,由CA来给你的公钥和其他信息加个密,CA是采用自己的私钥加密的,然后发布证书和CA的公钥给消息接收者。消息接收者在使用公钥时通过CA的公钥解密证书拿出发送者的公钥去使用。
这样做的好处就是,可以避免发送者的公钥被篡改活替换,防止接收者被欺骗。数字证书的生成如下图所示: