PKI技术理论知识

概念

对称加密:加密和解密用同一个密钥,这种加密主要用在对数据的加密上。比如DES

非对称加密:公钥、私钥成对出现,公钥加密的数据要私钥解密,反之亦然,这种加密一般用在身份认证上。比如RSA

签名:用私钥对数据进行加密,称为签名

数字签名:对数据提取摘要,对摘要进行签名,签名和数据一起合称为数字签名

PKI:公开密钥基础,其实是一种基于非对称加密的身份认证机制

PKI原理

PKI要由三方来组成:CA、参与者甲、参与者乙
先去除CA,从参与者甲、参与者乙的角度说明一下身份认证的原理。

比如银行向客户发送对帐单,客户向银行发回置这一交易(通过Email)
银行发送时:客户收到mail后要确认是银行发过来的,并且没有被修改过,银行也必须确认发给客户了,而没有被别人偷看。
银行发送时先用自己的私钥加密内容,再用客户的公钥进行二次加密。这样,只有客户才可以用私钥解开信件,而不是别人。
客户用私钥打开后,再用银行的公钥进行解密才可以得到内容。因为只有银行私钥加密的内容才可以用对应的公钥解开,确保了是银行发送的。

客户回置给银行时也是一样的原理。

从上面可以看到,为实现这个双向认证,要求双方都要有对方的公钥。并且在里层用自己的私钥加密,外层用对方的公钥加密。也可以理解为发送时,先用自己的私钥加密,再用对方的公钥加密(对应接收时就要先用自己的私钥解密,再用对方的公钥解密)。

上面所说的是原理,实际中为保证效率不会对所有数据进行加密,而是提取信息摘要,对摘要进行加密来进行身份认证。

CA的作用

上面提到交易双方都要有对方的公钥,假如我冒充银行把自己的公钥提供给客户,客户在使用这个公钥时,就可以被我的私钥解密,而失去了安全保障。这时就需要有一个第三方机构来认证交易的双方公钥的合法性。
银行把自己的公钥等信息发送给CA,CA用自己的私钥对银行的公钥进行加密,形成证书,客户端可下载证书以得到银行的公钥
在使用时,先用CA的公钥对证书进行解密,得到银行的公钥,然后做进一步的使用。
这个过程就是通过CA来验证对方公钥的合法性。所以CA的作用也就是验证交易双方公钥的合法性。
那么如果有人问我用CA的公钥进行解密,谁来认证CA的身份呢?这个问题不用再进一步讨论,因为CA要是一个权威机构,在交易双方都信任CA的基础上才可以进行,所以不用验证CA的身份。

 

你可能感兴趣的:(PKI技术理论知识)