数字证书
数字证书是有权威的CA(第三方)机构所颁发的,CA通过接收方提供的相关信息生成证书,相关信息包含了接收方的信息,公钥,数字签名等。为了防止伪造证书,这些信息会被CA机构采用一定的算法进行保护。
证书内容通过 hash算法 生成摘要,然后CA通过私钥对摘要非对称加密,生成数字证书。
接收方如何验证证书的真实性?
接受方通过对CA提供的公钥,对数字证书中的密文解密得到摘要,再通过提供的散列算法对证书内容进行hash得到摘要1,比较:摘要1=?摘要。
例如,基于非对称密钥算法,Bob 生成了一对公私钥。Bob将公钥放在CA生成的证书中, Alice 想向Bob发送加密文件时必须要获得Bob的公钥,这时Alice就可以通过CA发布的Bob的数字证书来获取Bob的公钥而不用担心该公钥的真实性。