本文的联盟链是以Fabric为例。本文中transaction翻译成事务,而非交易。
联盟链相对于公链,最大的不同在于:联盟链上的数据不是对所有人都公开的,只有联盟内的成员才可以访问、写入链上数据。
第二个重要的区别:联盟链不发币,所以联盟链里的账户没有以太坊比特币那样的账户地址。Fabric的访问控制、权限控制等,是通过MSP(Membership Service Provider)提供。这套机制与公链常见的账户模型差别甚大。
本文探讨下Fabric中基于PKI的账户体系,此处假设读者已经对非对称加密有一定了解,并能够回答以下几个问题:
- 私钥/公钥啥意思?各自的作用?
- 签名与加密有何区别,又有何共性?
- 为何需要数字证书?
首先简单捋一下Fabric-CA、MSP、 PKI三者的关系。
PKI
PKI是什么:一套软硬件系统和安全策略的集合
PKI的作用:它提供了一整套安全机制,使数据可以安全地、不可抵赖地在互联网上发送与接收
PKI提供的功能:
- 密钥管理(密钥对的创建、备份、恢复)
- 证书管理(证书的申请、颁发、吊销、验证)
PKI的结构: