Page 344 - 《软件学报》2021年第7期
P. 344
2262 Journal of Software 软件学报 Vol.32, No.7, July 2021
1 区块链中的身份管理问题
1.1 区块链交易模型
区块链系统中的交易在交易模型方面与传统系统有着很大的不同.首先,在传统系统中,所有交易过程的记
录和确认都是由系统的中心机构集中来完成的.而在区块链系统中,客户端首先将交易发送到区块链网络中,由
[1]
网络中的特定节点来对交易进行背书确认,确认后的交易才能写入区块链账本中并全网分发 .传统交易系统
与区块链交易系统的比较如图 1 所示.
Fig.1 Comparison between traditional transaction system and blockchain transaction system
图 1 传统交易系统与区块链交易系统的比较
[9]
其次,在交易结构的表示方面,以比特币为代表的公有链(如:达世币 、门罗币 [10] 、零币 [11] 等)、央行数字
货币原型系统 RSCoin [12] 和一些联盟链(如:Corda [13] 、Fabric [14] 中的 Fabcoin [15] 等)大多采用了未花费交易
(unspent transaction output,简称 UTXO)的表示方法.每一单元的 UTXO 代表特定属主的一定数值的数字资产,
对手方之间的一笔交易由若干输入和输出 UTXO 组成,输入的 UTXO 代表交易发送方支出的数字资产,输出的
UTXO 代表交易接收方收到的数字资产,可在将来作为输入的 UTXO 来使用.支付过程中产生的找零输出也会
发送回交易发送方.简言之,UTXO 是一种带有属主信息和资产数量的编码型数字资产表达方式.基于 UTXO 模
型的交易结构如图 2 所示.
Fig.2 UTXO structures in blockchain system
图 2 区块链系统中的 UTXO 交易结构
公有链的另一个典型代表项目以太坊 [16] 则采用了传统的基于账户的交易模型.用户的以太坊账户中存有
当前余额、交易次数、账户信息哈希值等,交易的发生反映到不同账户的余额变化上.为了便于以太坊上代币
(token)的使用,以太坊社区制订了 ERC 20 标准 [17] 用于描述在智能合约中实现代币的标准 API,这些 API 主要提
供了代币使用的一些基本功能,如转移代币、授权代币给第三方使用等.
从身份管理和隐私保护的角度来分析,传统中心化系统与区块链系统存在着显著差异.
(1) 在身份认证方面,传统交易系统采用中心化集中实名认证机制;区块链系统则大多采用用户匿名的身
份认证机制,用以确保用户隐私;