APP下载

基于区块链的多方隐私保护公平合同签署协议*

2018-06-09吴进喜张宗洋殷大鹏

信息安全学报 2018年3期
关键词:参与方数字签名公钥

吴进喜, 高 莹, 张宗洋, 殷大鹏

1北京航空航天大学 数学与系统科学学院, 北京 中国100191

2北京航空航天大学 网络空间安全学院, 北京 中国100191

1 引言

随着电子商务的发展, 互联网上的公平合同签署日益普遍。公平合同签署协议本质上是参与方公平地交换对合同的数字签名, 这是基于公平交换协议的实际应用。按照是否有第三方参与, 公平交换协议可分为两类: 一类是不需要第三方参与的。比如基于逐步交换协议的思想[1], 参与双方一步一步地释放所交换的信息。由于网络的异步性, 该类协议总是存在“一比特的不公平性”, 从而不能满足真正的公平性。另外一类依赖于可信第三方, 比如半可信第三方的公平交换协议[2]。大部分(半)可信第三方是高度中心化的, 掌握着一些敏感信息, 例如合同信息、签署合同方的身份信息以及合同签名信息等。如果第三方不诚实, 将敏感信息泄露给他人, 那么这显然对参与方是不利的, 并且对参与方的隐私造成极大的威胁。因此, 在设计公平合同签署协议时, 不仅需要考虑第三方的中心化问题, 还要考虑用户的隐私保护需求。

近年来, 由于区块链具有无中心化、公开透明等特点, 受到人们的广泛关注[3,4]。直观来看, 它是一个无中心化的可信第三方, 可以消除中心化可信第三方的不可靠性。不仅如此, 比特币采用一次性公钥作为用户的假名身份, 在一定程度上保护了用户的身份隐私。因此, 在公平合同签署协议中引入区块链技术是一个值得尝试的方法[5-8]。

但是因为区块链的无中心化特点, 当争端发生时,又产生了新的隐私泄露问题[6]。普通的公平合同签署协议, 可信第三方可以提取合同的数字签名, 然后转交给签署方。基于区块链的公平合同签署协议, 区块链上的每个节点上都可以提取合同的数字签名。这违背了用户隐私保护的原则。文献[5]基于时间戳服务器,提出了一个无可信第三方的公平合同签署协议, 该协议可以通过区块链技术实现。文献[9-12]主要研究的是基于区块链的公平交换协议, 可用于公平合同签署协议的技术实现。但这些公平合同签署协议都没有考虑用户的隐私保护需求。因此, 文献[6]提出了盲的可验证加密签名(Blind verifiably encrypted signature,BVES), 并将它应用于公平合同签署协议的设计当中。该协议保护了所签署的合同信息、数字签名以及身份信息, 同时基于保证金来达到协议的公平性。

而区块链是公开透明的, 每个节点都可以查看区块上的交易信息。文献[13,14]中说明了在区块链上可以通过追溯比特币的资金流动分析出资金的拥有者, 即用户身份。例如, 买家去商店利用比特币购买商品时, 商家可以同时记录买家所使用的比特币公钥信息和真实身份, 并且可以持续追踪买家的比特币零钱去向, 所以买家的身份信息已经泄露[14]。因此,区块链并非真正地具有匿名性, 而是假名性。文献[6]设计了基于区块链技术的满足隐私保护的公平合同签署协议。但由于区块链自身存在的假名性问题, 当合同签署双方达成一个Commit交易时, 指定的两笔保证金交易会泄露出他们的身份信息。因此, 设计出既满足公平性又达到隐私保护需求的合同签署协议仍然是一个难点。

1.1 本文工作

本文基于混币思想[15], 改进基于公开区块链的隐私保护公平合同签署协议[6], 并提出一个新的基于区块链的公平合同签署协议, 满足以下性质:

(1) 公平性:利用区块链技术实现公平性。签署方在交换签名前需要交纳保证金, 诚实方可以通过释放签名来赎回保证金, 而不诚实方将会受到惩罚,失去交纳的保证金。

(2) 隐私保护:结合BVES方案和混币思想实现隐私保护需求。BVES方案盲化合同消息和身份信息,并且只有签署方才能提取出普通签名; 引入半诚实可信第三方来提供混淆服务, 切断签署方之间的直接联系。让签署方与第三方公平地签署合同, 最后签署方能够在区块链上得到 BVES签名, 并计算出其他签署方的普通签名。

(3) 多方合同签署:不同于只满足两方的合同签署协议, 本协议可以满足多方合同签署。只要签署方通过第三方进行合同签署, 其他签署方就可以提取该方的普通签名, 直到所有签署方诚实地释放BVES签名, 该协议完成, 否则终止。

1.2 相关工作

已有大量工作致力于解决合同签署的公平交换问题。首先是无可信第三方的逐步交换协议[16], 虽然无可信第三方, 但是仍存在不公平性, 且通信代价高。随后, 部分工作引入可信第三方, 可分为在线可信第三方[17]和离线可信第三方[18]。在线可信第三方协议需要第三方可信且在线工作, 在多用户的系统中, 这会成为一个瓶颈。相比之下, 离线可信第三方协议更具实用性, 只需要在签署方有争端时才参与进来。但协议的公平性和隐私性均依赖于可信第三方。近期有一些工作基于区块链技术来设计公平合同签署协议。针对于隐私保护需求, 文献[6]构造一种盲的可验证加密签名算法, 并提出基于区块链的隐私保护公平合同签署协议。签署方首先在链下进行协商秘密因子, 用来盲化合同信息和身份信息来实现隐私保护; 在链上实现公平交换BVES签名, 从而实现双方公平合同签署。随后, 文献[8]基于实用性考虑, 提出一种专门签署合同的数字货币 Contract Coin。文献[7]提出一种基于区块链的三方公平合同签署协议。该协议在链下验证签名; 在链上只公平交换秘密因子, 从而保障签署方隐私。

但是由于比特币交易的可追踪性、可链接性以及交易金额公开, 导致其存在隐私泄露问题[13,14]。因此, 研究人员相继提出各种隐私保护方案。Maxwell提出 Coinjoin[19]混币技术, 把不同用户的多个交易合并成一个交易, 从而隐藏交易输入方和输出方的对应关系。Mixcoin[20]利用可信的第三方来混淆比特币地址, 但这个第三方可能侵犯用户的隐私并窃取用户的比特币。门罗币[21]利用环签名和隐蔽地址技术来达到隐私保护需求。为了提供更高的匿名性,Ben-Sasson 等在 Zerocoin[22]方案上进一步提出了Zerocash[23]方案, 利用非交互式零知识证明协议实现匿名性更强的电子现金系统, 保护用户信息和交易额的隐私。

现有公开工作没有考虑区块链系统自身存在的隐私泄露问题, 所以本文基于混币思想, 引入半诚实可信第三方提供混淆服务, 避免让区块链上的公开节点直接判断出签署方正在签署合同, 从而保护签署方隐私。

1.3 本文框架

本文的框架如下: 第 2节介绍比特币脚本和BVES方案; 第3节分析文献[6]中公平合同签署协议的不足之处, 并给出改进协议的目标; 第4节中给出改进的公平合同签署协议; 最后第 5节给出了协议的安全性分析并讨论其不足之处。

2 预备知识

本节介绍预备知识。在2.1节介绍比特币脚本知识, 在2.2节介绍BVES方案。

2.1 比特币脚本

比特币在交易中使用脚本系统, 其交易的灵活性依赖于输入和输出脚本, 可以通过设置合理的输出脚本来限定比特币花费的条件。在比特币交易中,最普遍的交易方式是标准交易(standard transactions)。该交易的输入脚本表示若用户提供的公钥和数字签名能通过上一笔交易的输出脚本的验证, 那么该用户是该比特币的拥有者, 可以花费该比特币。输出脚本则是限定了下一个比特币拥有者若要花费比特币就必须提供一个公钥以及一个数字签名。

例如, 图 1中TA表示交易, 资金来源于交易T1;表示输入脚本的参数信息为A对交易TA的签名, 若通过1T的输出脚本验证, 则能花费该比特币表示输出脚本验证函数的参数信息, 若签名Mσ验证通过,则交易TA是将比特币支付给 M; val:dB: 表示该交易的金额为dB。因此, 该图表示A支付给 M价值为dB的比特币, 然后M支付给C价值为dB的比特币。

图1 标准交易Figure 1 Standard transactions

为了设计合适的公平合同签署协议, 可以合理地设置输入脚本和输出脚本的参数并且加入交易时间锁。例如, 图2中交易Fuse的tclock:t表示该交易在时间t内被锁定。该图表示 A将TA交易作为输入生成Put交易, 支付给M价值为dB的比特币, 并且生成一个Fuse交易。限定条件为: 若时间t后, M还没有接收该比特币, 则 A可以对Fuse交易签名, 拿回比特币。

图2 特殊交易Figure 2 Special transactions

因此, 在设计公平合同签署协议时, 可以利用脚本系统选取合适参数来强迫参与方诚实地执行协议。

2.2 BVES方案

这部分简要介绍文献[6]中的 BVES方案, 该方案里有三个参与者, 即签名者 Alice, 签名提取者Bob以及验证者Minter。假设Alice和Bob都知道所签署的合同消息为m, 其索引消息为。Alice有一个有效证书, 而 Bob只需要一个临时的密钥对。Minter帮助Bob验证Alice的签名。该方案由以下八个算法组成:

Setup: 设G1是一个循环加法群, P为生成元。G2是一个循环乘法群且其中q为素数。 定义为一个双线性对, 并定义两个密码哈希函数

KeyGen: 随机选择并计算y=xP。将y作为公钥, x则作为私钥。此时Alice的密钥对为, Bob的密钥对为

Sign: 对于一个消息m, Alice计算生成一个普通签名:

Verify: 对于一个消息签名对验证签名的方程如下:

PreSignAgree: Alice签署消息m, 并发给Bob。

1.Alice随机选取然后计算αP以及最后计算syA和sH( m)。随后Alice把以下四元组发给Bob:

2.Bob计算。然后验证。若所有的验证都能通过,Bob返回true, 否则返回false。

BVESSign: Alice生成一个BVES签名:

BVESVer: 利用以下四元组作为输入:

Minter验证下面的等式:

BVESExt: Bob计算提取普通签名。

3 对公平合同签署协议的分析

文献[6]构造出 BVES方案, 并设计了基于公开区块链的隐私保护公平合同签署协议。该协议在链下验证对方的数字证书的长期 BVES公钥, 并交换临时 BVES密钥和比特币公钥。然后利用参与方共享的秘密因子s对合同信息m以及长期密钥对应的公钥进行加密, 隐藏了参与方的数字证书中的真实身份信息和合同信息。由于 BVES方案是可验证加密签名方案, 所以区块链上的每个节点都能验证BVES签名, 但只有参与方才能计算出普通的数字签名, 从而也保护了参与方的真实数字签名。

但是, 由于区块链本身的假名性, 在协议承诺部分, TA和TB两笔保证金交易可能分别泄露出 Alice和Bob的身份信息。这显然侵犯了参与方的隐私。为最大限度保护参与方隐私, 可以对该协议进行改进。

首先, 引入一个半诚实可信第三方 Minter作为中间服务方, 提供混淆服务, 让参与方分别跟Minter签署合同。这样, 区块链上的节点无法直接看出Alice和Bob要签署合同。为了隐藏参与方的身份信息和合同信息, 需要利用秘密因子对相关信息进行加密, 而且只有参与方知道秘密因子。由于参与方要分别与 Minter签署合同, 所以参与方需要共享两个秘密因子, 并各自选取一个秘密因子进行加密处理。

其次, 若直接应用文献[6]的公平合同签署协议,只有 Minter能够计算得出参与方的普通签名, 并且知道合同信息。此时Minter成为高度中心化的可信第三方, 变成系统的瓶颈。注意到, 公平合同签署协议本质上是交换参与方的数字签名, 所以只需要交换参与方的BVES签名, 并不需要Minter的BVES签名。但是计算普通签名时, 参与方不仅需要知道秘密因子, 还需要知道Minter的临时私钥。由于参与方的秘密因子是共享的, 所以只需要知道 Minter的临时私钥即可。因此, 设计协议时, 要限定Miner公布其临时私钥。

再次, 为了抵御DoS等攻击, 参照文献[24]的做法, 在接收服务之前, 参与方需要支付少量的服务费wB给第三方Minter。另外, 针对每笔成功的合同,Minter需要收取额外的服务费f B。此处要求w远小于f。这样一定程度上可以避免Minter偷盗服务费wB。

最后, 在文献[6]的基础上, 对于我们的协议增加以下假设:

1) 假定每一份合同的保证金都相同, 均为dB(为了防止攻击者通过比较保证金等额与否, 判断参与方签署同一份合同);

2) 第三方 Minter不能拒绝提供服务 (防止第三方拒绝服务而导致合同签署失败);

3) 合同具有时效性, 由参与方协定 (参与方在协定的任意时间内与第三方签署合同即可)。

综合以上分析, 协议目标如下:

1) 如果Alice和Bob成功地签署合同, 双方都只需要支付给Minter服务费f+wB。

2) 如果Alice和Bob都拒绝签署合同, 双方都失去保证金d+fB, 均需支付给 Minter服务费w+d+fB。

3) 如果仅仅是一方成功签署合同, 该方需支付给 Minter服务费f+wB。另一方需支付给 Minter服务费w+d+fB。

4) 协议满足隐私保护需求。

4 改进的公平合同签署协议

本节基于第 3节的分析给出改进的公平合同签署协议。在4.1节中简要介绍记号, 在4.2节中介绍协议的具体步骤。

4.1 记号介绍

假设参与方A和M, 其中A的密钥对为M的密钥对为。为了便于理解协议的具体流程图, 在介绍协议之前先在表1解释相关记号。

表1 记号Table 1 Notations

4.2 协议

该协议的签署方可以是多方, 并且每个签署方选择的第三方也可以不同。协议成功当且仅当所有签署方成功与各自选定的第三方进行合同签署。为了方便介绍, 本节采用同一个第三方Minter, 签署方只有两方Alice和Bob。因此, 该协议包括Alice以及Bob和Minter两个签署合同过程。因为两个过程类似, 所以只着重介绍Alice和Minter的签署合同过程, 并在图3中展示签署合同的主要步骤。

Pre-condition: 签署方和第三方生成协议所需的公私钥对; 签署方共享两个秘密因子, 并将盲化的合同信息和身份信息发给第三方, 第三方返回其临时公钥。

1.Alice、Bob以及第三方Minter分别有三组密钥对: 一对是比特币密钥, 一对是通过KeyGen算法产生的临时BVES密钥, 最后一对是包含在公钥证书中的长期BVES密钥。Alice的长期密钥对是临时密钥对是; Bob的长期密钥对是临时密钥对是; Minter的长期密钥对是, 临时密钥对是等。

2.Alice和Bob对合同m达成一致, 并产生了一个合同索引他们交换各自的长期以及临时两组密钥对。若公钥证书无效, 协议终止。否则, Alice和Bob分别运行PreSignAgree算法, 共享两个秘密因子s1和s2。然后分别计算siyA以及siyB, 其中i∈{1,2}。

3.Alice将包含合同信息的和包含身份信息的s1yA都发送给第三方Minter, 并预交给他价值为wB的服务费。然后Minter生成BVES临时公钥yM′,最后返回给Alice。同样, Bob将包含合同信息的和包含身份信息的s2yB都发送给第三方Minter, 并预交给他价值为wB的服务费。然后Minter生成BVES临时公钥 yM′′, 最后返回给Bob。

4.Alice和Bob分别指定交易TA和TB, 价值均为d+fB。Minter指定两个交易TM1和TM2, 价值均为dB。

Commit: 签署方和第三方交纳保证金, 生成对应的Commit交易。此过程分为两个阶段, 第一阶段是Commit1, 实现Alice和Minter交纳保证金; 第二阶段是Commit2, 实现Bob和Minter交纳保证金。

Commit1:

1.Alice和Minter将TA和TM1交易作为输入, 构成Commit1交易。

2.Alice对Commit1交易签名, 并发送给Minter。

3.Minter利用Alice的比特币公钥来验证这个签名, 并且核对Commit1交易中脚本的参数信息。若正确, Minter对这个Commit1交易签名, 然后广播出去。否则, 协议终止。

4.双方等待这个交易被记录在区块链上。

Commit2:

1.Bob和Minter将TB和TM2交易作为输入, 构成Commit2交易。

2.Bob对交易Commit2签名, 并发送给Minter。

3.Minter利用Bob的比特币公钥来验证这个签名, 并且核对Commit2交易中脚本的参数信息。若正确, Minter对这个Commit2交易签名, 然后广播出去。否则, 协议终止。

图3 公平合同签署协议Figure 3 A fair contract signing protocol

4.双方等待这个交易被记录在区块链上。

Open: 签署方诚实地公布其BVES签名生成OpenA交易, 赎回保证金;同样第三方诚实地公布其临时私钥生成OpenM1交易, 赎回保证金。此过程分为两个阶段, 第一阶段是Open1, 实现Alice和Minter签署合同并赎回保证金; 第二阶段是Open2, 实现Bob和Minter签署合同并赎回保证金。

Open1: 若Commit1出现在区块链上, 则Alice生成一个BVES签名

然后生成OpenA交易, 最后广播出去; Minter则是公布他BVES的临时私钥xM′, 然后生成M1Open交易,最后广播出去。否则, 协议终止。

Open2: 若Commit2出现在区块链上, 则Bob生成一个BVES签名

然后生成OpenB交易, 最后广播出去; Minter则是公布他BVES的临时私钥′′, 然后生成OpenM2交易,最后广播出去。否则, 协议终止。

Fuse: 协议的任一方不诚实, 另一方都可以在时间t后生成Fuse交易, 得到对方的保证金作为奖励。此过程分为两个阶段, 第一阶段是Fuse1, 实现若Alice或Minter不诚实, 则将其保证金奖励给对方; 第二阶段是Fuse2, 实现若Bob或Minter不诚实, 则将其交纳保证金奖励给对方。

Fuse1: 若在约定的时间t后, OpenA交易没有出现在区块链上, 此时Minter广播FuseM1交易, 拿回保证金d B; 同样, 如果在约定的时间t后, OpenM1交易没有出现在区块链上, 此时Alice广播FuseA交易,拿回保证金d+fB。

Fuse2: 若在约定的时间t后, OpenB交易没有出现在区块链上, 此时Minter广播FuseM2交易, 拿回保证金d B; 同样, 如果在约定的时间t后, OpenM2交易没有出现在区块链上, 此时Bob广播FuseA交易,拿回保证金d+fB。

Recover: 签署方在区块链上得到对方的BVES签名以及第三方的临时私钥, 结合共享的秘密因子计算出对方的普通签名。

若在时间t内, OpenA交易出现在区块链上, 此时Bob计算出Alice的普通签名:

同样, 若在时间t内, OpenB出现在区块链上,此时Alice计算Bob的普通签名:

Reward: 第三方提供混淆服务所获得的奖励。

Alice和Bob均交纳保证金d+fB, 但是只能拿回Minter交纳的保证金d B。剩余的 f B当作第三方Minter的服务费。因此, Minter提供一次服务能够获得总服务费f+wB。

5 协议安全性分析

本节对协议的安全性进行分析。在5.1节证明了协议满足公平性和安全性, 在5.2节说明了协议还存在的不足之处。

5.1 安全性分析

定理1 协议满足公平性。

证明.由于 Minter不能拒绝服务, 执行协议时需要交纳保证金d B。假设Minter不诚实, 此时他既拿不到服务费, 还损失保证金。所以有理由认为他是半诚实可信的, 即 Minter会诚实地执行协议。因此,证明只需要考虑参与方的情况, 分为以下三种:

(1) 有一方诚实。

假设Alice诚实而Bob不诚实。这种情况意味着Alice跟 Minter成功地签署合同, 只需要支付给Minter服务费f+wB。而Bob因为没有公布自己的BVES签名, 既无法拿到 Minter交纳的保证金d B,也失去了自己交纳的保证金d+fB。Bob因为不诚实而受到了惩罚, 总共损失d+f+wB。

(2) 双方都诚实。

这种情况意味着Alice和Bob跟Minter都成功地签署合同, 他们分别可以在区块链上得到对方的BVES数字签名以及Minter的BVES临时私钥, 最后可以通过计算得到对方对合同的普通数字签名。

(3) 双方都不诚实。

这种情况意味着Alice和Bob都没有跟Minter成功地签署合同, 都损失了d+f+wB。这个惩罚机制也符合实际意义, 因为双方是在谈好合同的前提下毁约, 理应受到惩罚。不仅如此, 正因为存在着双方会毁约的概率, 促使第三方不想拒绝提供服务,并且诚实地执行协议。

根据上面的讨论得知, 双方要么都能获得对方的签名, 要么需要付出代价获得对方的签名, 要么什么都得不到, 所以该协议满足公平性。

定理2 协议满足安全性。

证明.从以下三个方面来证:

(1) 该协议同样基于BVES方案。而田海博[6]等证明了该方案在基于可验证加密签名[25,26]安全模型下具有不可提取性且是不可伪造的。并且只有参与方知道秘密因子, 所以只有参与方才能得到合同的数字签名。

(2) 在同一时期里, 假设Minter分别与N个人成功地进行签署合同。因为攻击者不知道谁跟谁在签署合同, 所以他最好的策略就是瞎猜。若 Alice和 Bob都在这个集合中, 那么他成功的概率为若有一方不在这个集合中, 也就是说Alice跟Minter签署了合同, 但是Bob没有签署合同。此时, 这个隐私保护程度就相当强了, 攻击者成功的概率为0。因此,此时攻击者成功的最大概率为。当互联网中的N很大时, 这个概率是很小的。

(3) 更为一般的情况, Alice和Bob可能跟不同的第三方在不同时期执行公平合同签署协议。但只要他们以及各自的第三方能诚实地执行协议, Alice和Bob就能计算得到对方对合同的数字签名。此时, 攻击者成功的概率几乎为0。

根据上面的分析可知, 只有参与方能够得到对方对合同的数字签名, 且不会泄露出敏感信息。因此,协议满足安全性。

5.2 不足

本文引入第三方来提供混淆服务, 增强协议的隐私性。由于存在签署合同异步的情况, 即当 Alice先和Minter签署合同, 此时Bob免费拿到Alice的普通签名, 损失一定的公平性。但是考虑在实际应用场景中, 存在签署一方为了表示签署的强烈意愿, 可能先将普通签名发给对方。因此, 在执行协议之前,签署方可以随机协定签署的顺序, 并且规定合同签署的时效性, 若在规定时间内签署方没有签署成功就当做签署失败。

6 结论

本文利用盲的可验证加密签名方案以及区块链技术, 并且引入半诚实可信第三方来提供混淆服务, 设计出新的公平合同签署协议。该协议满足公平性和安全性, 不仅能支持多方合同签署, 还能克服区块链的假名性问题, 从而达到真正的隐私保护需求。

[1]Blum M, “How to exchange (secret) keys,” Acm Transactions on Computer Systems, vol.1, no.2, pp.175-193, 1983.

[2]Franklin M K and Reiter M K, “Fair Exchange with a Semi-Trusted Third Party,” in Acm Conference on Computer &Communications Security(CCS’99), pp.1-5, 1999.

[3]Nakamoto, S, “Bitcoin: A Peer-to-Peer Electronic Cash System,”http://bitcoin.org/bitcoin.pdf, 2008.

[4]Wallace B, “The Rise and Fall of Bitcoin,” http://www.wired.com/agazine/2011/11/mf bitcoin/all/, 2011.

[5]Wan Z, Deng R H and Lee D, “Electronic Contract Signing Without Using Trusted Third Party,” in International Conference on Network and System Security(NSS’15), pp.386-394, 2015.

[6]TIAN H B, HE J J and FU L Q, “A privacy preserving fair contract signing protocol based on public block chains,” Journal of Cryptologic Research, vol.4, no.2, pp.187-198, 2017.(田海博, 何杰杰, 付利青, “基于公开区块链的隐私保护公平合同签署协议”, 密码学报, 2017, 4(2): 187–198。)

[7]Huang H, Li K C and Chen X, “A Fair Three-Party Contract Singing Protocol Based on Blockchain,” in International Symposium on Cyberspace Safety and Security(CSS’17), pp.72-85, 2017.

[8]Tian H, He J and Fu L, “Contract Coin: Toward Practical Contract Signing on Blockchain,” in International Conference on Information Security Practice and Experience(ISPEC’17), pp.43-61,2017.

[9]Andrychowicz M, Dziembowski S, Malinowski D and Mazurek Łu kasz, “Fair Two-Party Computations via Bitcoin Deposits,” in Financial Cryptography and Data Security(FC’14), pp.105-121,2014.

[10]Kumaresan R and Bentov I, “How to Use Bitcoin to Incentivize Correct Computations,” in ACM Sigsac Conference on Computer and Communications Security(CCS’14), pp.30-41,2014.

[11]Bentov I and Kumaresan R, “How to Use Bitcoin to Design Fair Protocols,” in International Cryptology Conference(Crypto’14), pp.421-439,2014.

[12]Liu J, Li W, Karame G O, and Asokan N, “Towards Fairness of Cryptocurrency Payments,” https://arxiv.org/pdf/1609.07256.pdf,2016.

[13]Pomarole M, Pomarole M, Jordan G, et al, “A fistful of Bitcoins:characterizing payments among men with no names,” Communications of the Acm, vol.59, no.4, pp.86-93, 2016.

[14]Ron D and Shamir A, “Quantitative Analysis of the Full Bitcoin Transaction Graph,” in Financial Cryptography and Data Security(FC’13), pp.6-24, 2013.

[15]Chaum D L, “Untraceable electronic mail, return addresses, and digital pseudonyms,” Communications of the Acm, vol.24, no.2,1981.

[16]Goldreich O, “A Simple Protocol for Signing Contracts,” in Advances in Cryptology(Crypto’83), pp.133-136, 1983.

[17]Benor M, Goldreich O, Micali S and R L, “A fair protocol for signing contracts,” in IEEE Transactions on Information Theory,vol.36, no.1, pp.40-46, 1990.

[18]Asokan N, Schunter M and Waidner M, “Optimistic protocols for fair exchange,” in ACM Conference on Computer and Communications Security(CCS’97), pp.7-17, 1997.

[19]G.Maxwell, “CoinJoin: Bitcoin privacy for the real world,”https://bitcointalk.org/index.php?topic=279249.0, 2013.

[20]Bonneau J, Narayanan A, Miller A, et al, “Mixcoin: Anonymity for Bitcoin with Accountable Mixes,” in International Conference on Financial Cryptography and Data Security(FC’14), pp.486-504,2014.

[21]Bergan T, Anderson O, Devietti J, et al, “CryptoNote v 2.0,”https://cryptonote.org/whitepaper.pdf, 2013.

[22]Miers I, Garman C, Green M, et al, “Zerocoin: Anonymous Distributed E-Cash from Bitcoin,” in Security and Privacy(S&P’13),pp.397-411, 2013.

[23]Sasson E B, Chiesa A, Garman C, et al, “Zerocash: Decentralized Anonymous Payments from Bitcoin,” in Security and Privacy(S&P’14), pp.459-474, 2014.

[24]Heilman E, Baldimtsi F and Goldberg S, “Blindly Signed Contracts: Anonymous On-Blockchain and Off-Blockchain Bitcoin Transactions,” in International Conference on Financial Cryptography and Data Security(FC’16), pp.43-60, 2016.

[25]Zhang F, Safavi-Naini R and Susilo W, “Efficient verifiably encrypted signature and partially blind signature from bilinear pairings,” in International Conference on Cryptology in India(Indocrypt’03), pp.191-204, 2003.

[26]Zhang F, Safavi-Naini R and Susilo W, “An efficient signature scheme from bilinear pairings and its applications,” in International Workshop on Theory and Practice in Public Key Cryptography(PKC’04), pp.277-290, 2004.

猜你喜欢

参与方数字签名公钥
基于秘密分享的高效隐私保护四方机器学习方案
基于正交拉丁方理论的数字签名分组批量验证
交通运输行业数字签名系统的设计与实现分析
浅析计算机安全防护中数字签名技术的应用
基于SNA视角的PPP项目参与方行为风险研究
一种基于混沌的公钥加密方案
神奇的公钥密码
P2X7 receptor antagonism in amyotrophic lateral sclerosis
绿色农房建设伙伴关系模式初探
涉及多参与方的系统及方法权利要求的撰写