Hegel2011的博客

读书 - 工作 - 生活 - 笔记

CA证书略记

CA是Certificate Authority的缩写,就是一个证书颁发机构的意思。 它的作用是给某些公钥证书进行背书,以让调用者相信所获得的公钥证书确实的某个组织给予的。

具体做法可抽象为:
1. 某个组织自己生成一个公钥/私钥对
2. 该组织向某CA申请证书,需要把自己的身份信息、公钥交给ca,同时用自己的私钥给以上信息签名形成一个CSR,格式可以说pkcs10等
3. CA生成证书,比如P7b格式的证书。

此后,该申请的组织就可以把获得的证书交给客户,客户会去CA处验证证书的有效性等。

在现实中,浏览器、手机等默认内建很多知名CA,可能有几百个,对于这些CA颁发的证书均认为是安全的。

上述只是颁发完毕,之后进入使用阶段。

公钥与私钥的理解:  (1)私钥用来进行解密和签名,是给自己用的。
 (2)公钥由本人公开,用于加密和验证签名,是给别人用的。
(3)当该用户发送文件时,用私钥签名,别人用他给的公钥验证签名,可以保证该信息是由他发送的。当该用户接受文件时,别人用他的公钥加密,他用私钥解密,可以保证该信息只能由他接收到。

数字签名的基本用法

由于私钥加密东西长度是有限制的,所以一般私钥只用于对内容散列后的签名。 比如SHA1withRSA,顾名思义就是SHA1散列后用rsa加密散列值。

公钥端收到后,可对散列值进行解密,解密后再和收到的数据进行散列操作后的结果进行比对,如果散列值一致,那么该签名就是有效的。

Included file 'twitter_sharing.html' not found in _includes directory