Skip to main content

PKI

终端设备与区块链节点(拓展到任意节点好了)进行安全身份交互认证的方案参考2:Public Key Infrastructure(PKI)

参考原文

具体例子#

假设甲公司要给乙公司发送一份机密的文件,那么这次传输需要确保以下几点:

  1. 文件内容不能被读取(加密)
  2. 文件内容不能被篡改(数字签名)
  3. 文件不能被掉包(数字证书)

再假设存在一黑客,试图作怪

分析#

加密#

  • 对称加密:风险:在密钥约定阶段密钥可能被黑客截获
  • 非对称加密:甲用乙发来的公钥加密文件,发给乙。风险:黑客可能截获乙发的公钥,从而伪装成甲来加密发送另外一份文件

数字签名#

  • 数字签名定义:用摘要算法提取出源文件的摘要,并用私钥对之加密,所得到的信息
  • 甲发送加密文件时,附带源文件的数字签名。解决:黑客最多能够用甲的公钥解密出文件摘要,但还是无法还原源文件。
  • 风险:到目前为止乙无法确定自己用的公钥就是甲提供的,如果黑客将乙手里的甲的公钥替换成自己的并用自己的私钥生成数字签名,那么乙还是会收到被篡改的文件。

数字证书#

  • 定义:数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。一般会包含以下信息:
    • 公钥、公钥拥有者名称、
    • CA 的数字签名、
    • 有效期、授权中心名称、证书序列号
  • 关键:CA 的数字签名,CA会用自己的私钥将证书内容的摘要进行加密。因为 CA 的公钥是公开的,任何人都可以用公钥解密出 CA 的数字签名的摘要,再用同样的摘要算法提取出证书的摘要和解密 CA 数字签名后的摘要比对,一致则说明这个证书没有被篡改过,可以信任。

PKI#

  • 定义:PKI是一组由硬件、软件、参与者、管理政策与流程组成的基础架构,其目的在于创造、管理、分配、使用、存储以及撤销数字证书。

PKI 既不是一个协议,也不是一个软件,它是一个标准,在这个标准之下发展出的为了实现安全基础服务目的的技术统称为 PKI。

组成#

  • CA(Certificate Authority):存储、发行、校检数字证书
  • RA(Registration Authority):个体请求将他们的数字证书存到CA时,RA验证其身份
  • Central Directory:存储、定位索引密钥
  • Certificate Management System:管理已存储证书的读取权限、证书的下发
  • Certificate Policy:声明PKI系统的流程要求等
  • VA(Validation Authority):确保一个CA域内每个个体身份的唯一性