Ring Confidential Transactions(环机密交易)

目录

1. Introduction

1.1 一次性**:

1.2 隐藏交易金额:

      1.3 防止两次花费:

    1.4 范围证明:

2. MLSAG

      2.1 LSAG(Back)

      2.2 MLSAG(对LSAG的推广)

      2.3 Ring CT For Monero Protocol

3. rang proofs

3.1 Borromean Ring Signatures

3.2 Borromean Ring Signatures应用于范围证明


1. Introduction

门罗币给自己的定义就是一个匿名的数字加密货币,其采用CryptoNote协议。环机密交易需要实现:(1)去中心化;(2)匿名;(3)隐藏交易金额。 其中(1)是通过proof-of-work“挖矿”机制来实现的。(2)是通过一次性**实现的。(3)是通过多层可链接自发匿名群签名(MLSAGS)并结合Pedersen Commitment实现的。另外还应抵抗“二次花费”攻击,并进行性范围证明。

1.1 一次性**:

P=H(rB),其中P是交易的一次性**,H是哈希函数,B是转账接收方的公开**,r是发送方选取的随机数。发送方阿把rG发送给接收方,接受方由rG的到brG=rB,进而计算出P。即可通过P来检验交易的有效性。

1.2 隐藏交易金额:

Confifidential Transactions加入MLSAGS

Ring Confidential Transactions(环机密交易)

      1.3 防止两次花费:

      通过链接机制实现,链接机制通过I:“key-image”实现:

Ring Confidential Transactions(环机密交易)

      在签名的链接阶段,将相同的I进行链接,第二次签名作废,避免用同一个**对进行两次环签名,即:每个**对只允许签名一次,从而避免了重复花费。

    1.4 范围证明:

      由于货币金额是定义在有限域上的,所以攻击者可以在满足输入等于输出的情况下,通过输出溢出(输出大于有限域的阶)来产生巨额自由货币(有限域阶的整数倍)。比如有限域的阶是10,输入是1,输出是5和6,虽然满足(5+6)mod 10=1,但发生溢出,即5+6大于10,故凭空多了10个货币。所以检测并阻止溢出而产生自由货币是十分必要的。

     范围证明就是证明每一个输出都在某一正整数范围内。溢出可分为两种情况:(1)存在一些较大的输出(等价于绝对值较小的负输出)(2)大量较小的输出。可以通过设置有限域的阶+范围证明来共同检测和阻止这两种情况。通过把有限域的阶设置得足够大(比如2得256次方),把范围证明中的正整数设置得足够小(比如2的64次方,大于系统内货币总额即可),使得(1)时范围证明不通过,(2)时因输出个数巨大而不可行(比如上个例子在通过范围证明的情况下产生溢出最少需要2的196次方个输出)。

2. MLSAG

      2.1 LSAG(Back)

Ring Confidential Transactions(环机密交易)

 

Ring Confidential Transactions(环机密交易)

 

Ring Confidential Transactions(环机密交易)

      2.2 MLSAG(对LSAG的推广)

Ring Confidential Transactions(环机密交易)

Ring Confidential Transactions(环机密交易)

Ring Confidential Transactions(环机密交易)

 

      2.3 Ring CT For Monero Protocol

Ring Confidential Transactions(环机密交易)

                                 (2)ransaction Verifification

                                     与MLSAG验证步骤相同。

3. rang proofs

假设取范围证明中的正整数是2的n次方,即证明每个输出都在0到2的n次方之间。

Ring Confidential Transactions(环机密交易)

 

 可以使用Borromean Ring Signatures来实现。

3.1 Borromean Ring Signatures

Ring Confidential Transactions(环机密交易)

 

Ring Confidential Transactions(环机密交易)

3.2 Borromean Ring Signatures应用于范围证明

Ring Confidential Transactions(环机密交易)