Page 359 - 《软件学报》2021年第7期
P. 359

姚前  等:区块链系统中身份管理技术研究综述                                                          2277


                 可链接自组织匿名群签名方案 MLSAG(multilayer linkable  spontaneous anonymous group signature,简称
                 MLSAG) [62] .Ring CT 是将环签名、同态承诺与范围证明相结合来构建的基于自主混淆的身份隐私保护方案.
                 Ring CT 使用了基于 Pedersen 承诺的保密交易技术来实现交易金额的隐藏,在交易平衡性验证上使用了类似于
                 MimbleWimble 的盲化因子差值的签名验证(关于保密交易技术的详细介绍可参见第 4.5 节中的分析),不同点在
                 于门罗币在通过同态承诺隐藏金额的同时还需通过混淆过程实现交易身份的隐藏.Ring CT 方案在如下几个方
                 面进行了改进:首先,Ring CT 方案通过交易内容的隐藏避免了 CryptoNote 混淆方案中明文金额易追踪和相同
                 金额用户匿名集合过小的问题.其次,为了在确保交易身份和输入承诺一一绑定的情况下支持多输入交易成组
                 混淆和密态交易平衡性验证,MLSAG 方案将 UTXO 中 Pedersen 承诺的交易平衡性证明加入到环签名中,并一
                 次性地对用户密钥组进行运算生成多层环签名.在 MLSAG 方案中,假设有 n 个环成员,每个环成员都有 m 对密
                 钥,则这些成员公钥组成的密钥向量为               i j 1...n  , 签名用户 π 的镜像向量为  j 1...m  , 其中,i 为环成员的索引,
                                                    1..m
                                                                               j
                                                 j
                                                                              P
                                                P
                                                                              
                                                 i
                 表示环集合中第 i 个成员,j 为成员密钥的索引,表示某成员的第 j 个密钥.对于一个用户的一组交易输入而言,
                 构成如下的交易组向量           1  1    PC  ,..., P   m  m   ,C  ,   m j  1 P      j  m j  1 C      j  i   C  , i out  , 其中的公钥即可构成了该成员的
                                              ,
                 公钥向量,MLSAG 可使用匿名集合成员的公钥向量构造多层环签名以实现交易的成组混淆.假设运算密钥为
                 n·m 个,则 MLSAG 生成的多层环签名为           1 ,...,I m , , ,...,c r 1 1  r 1 m ,..., ,...,r n 1  r n m  .不同于 LSAG 使用匿名集合用户的
                                                    I
                                                           1
                 n 个密钥签名,MLSAG 是使用用户的 n 个密钥向量进行签名.验证者(矿工)在未知具体交易输入 UTXO 的情况
                 下可通过验证该签名确保交易平衡性并通过镜像向量                      j 1...m  的重复性检测实现防双花.这既支持了多输入
                                                              j
                                                             I
                                                              
                 交易成组混淆,又有效提高了签名效率.2019 年,Brandon 等人又提出了紧凑可链接自组织匿名群签名方案
                 (compact linkable spontaneous anonymous group signature,简称 CLSAG),CLSAG 方案在运算密钥数为 n·m 的情
                 况下,生成的多层环签名为=(I 1 ,…,I m ,,c 1 ,r 1 ,…,r n ),提供了更高的运算效率以及更短的签名长度         [70] .
                    综上所述,门罗币在使用匿名身份认证的同时,在交易过程中又提供了基于自主混币的交易身份隐藏技术.
                 它通过隐蔽地址技术实现交易接收方的身份隐藏,在设定系统总用户数为 N 的情况下,观察者有效识别接收方
                 身份的概率为 1/N,具有很好的隐私保护特性;通过可链接环签名完成了交易发送方的自主混币过程,从而实现
                 了发送方的身份隐藏.理想情况下,环成员个数为 M 时观察者可有效识别发送方身份的概率为 1/M.
                    门罗币通过一次性地址和环签名所构建的自主混币与协同混币技术存在着类似的混淆过程,但二者又存
                 在不同:(1)  门罗币的混淆过程无需发起方与参与方间的交互;(2)  参与方无需真正发起交易.这些特点使得门
                 罗币基于非交互模式的自主混淆过程实现了发送方的身份隐私保护.
                    但门罗币的自主混币方案也存在一定的风险:首先,在接收方身份隐藏机制方面,如果交易发送方在与同一
                 用户交互过程中使用相同的随机数,则两笔不同交易的接收地址相同,会带来两笔交易产生关联的问题.因此,
                 接收方交易关联的隐私问题会一定程度地依赖于发送方的行为可信.其次,在发送方身份隐藏机制方面,发送方
                 身份隐私的保护程度依赖于混淆过程中环成员的多少以及参与混淆的 UTXO 在其他交易中的使用情况.相关
                 研究工作表明,在用户自主混淆过程中选择较少的环成员(如 2 个)会带来一定的隐私泄露风险                             [71,72] ;而参与混淆
                 的 UTXO 在其他交易中的信息泄露又进一步增加了分析成功的概率                      [73,74] .由此也说明,在区块链交易模型中账
                 本公开的特性使得交易方的身份隐私强度并不简单等同于所采用的密码算法所提供的匿名性.以门罗币交易
                 发送方的身份隐藏为例:在文献[73,74]中分析的特定情况下,当环成员个数为 M 时,观察者可有效识别发送方身
                 份的概率是大于 1/M 的.
                 4.4    全局混币技术
                    全局混币技术的典型代表是零币(Zcash)           [75] .它是由麻省理工学院和霍普金斯大学的研究者发起的一种强
                 隐私保护的开源加密货币.它仍然沿用了比特币中的 UTXO 交易结构,但对于完全基于零币的隐蔽(shielded)交
                 易而言,交易结构中隐去了交易地址,通过引入承诺 Merkle 树、零知识证明和加密技术提供了更强的隐私保护
                 特性.零币的设计思想来源于 1999 年 Sander 等人设计的一种可审计匿名电子货币系统                      [76] ,它将传统电子货币的
   354   355   356   357   358   359   360   361   362   363   364