Page 203 - 《软件学报》2020年第12期
P. 203

于雷  等:FCSP-Blockchain:基于区块链技术的公平合约交换协议的实现                                        3869


         共识分片和共识协议算法方面展开了基础研究工作                   [8−10] .
             基于去中心化的点对点交易需求以及系统可靠性方面的考虑,区块链技术普遍基于 P2P 网络,网络中的每
         个节点以扁平式拓扑结构相互连通和交互,不存在任何中心化的特殊节点、不存在层级结构,每个节点均会承
         担网络路由、验证交易单、验证区块数据、传播区块数据、发现新节点等功能.
             本文的主要贡献如下:
             1)   利用区块链技术,实现了多方的、无 TTP 的、确定性的 FCSP 协议,并且提供了公平合约的追加、更
                 新和删除管理功能;
             2)   改变了区块链的“单向信任”模式,为区块链网络建立了双向信任(或称多向信任);
             3)   分析了方法的公平性、有效性和隐私性.
             本文第 2 节对 FCSP 协议的研究进行总结.第 3 节对本文实现的协议进行综述,包括区块链协议改造、系统
         搭建、公平合约的交换过程和更新过程.第 4 节对本文实现的协议进行公平性、隐私性和共识方面的讨论.第 5
         节描述本协议的概要内容并总结.

         2    相关工作

             线上公平合约交换协议(fair  contract signing protocol,简称 FCSP)可以被划分为两种类型:(1)  有可信第三
         方(trusted third party,简称 TTP)的实现方式,包括在线和离线两种情况;(2)  无可信第三方的实现方式.
             1.  无 TTP 的协议
             文献[11]中已经证明:如果没有第三方参与,利用数字签名方法,两方之间是不存在确定的 FCSP 协议的.原
         因在于双方之间发送签名的顺序,双方无论经过多少轮的顺序签名,被提前终止发送顺序签名的一方都会被质
         疑是否向对方传递顺序数字签名,而使得自身保存的顺序数字签名无法主张权利.鉴于此,Even                               [12] ,Goldreich [13]
         等人也给出了无 TTP 的、近似的 FCSP 实现.他们的方案是将己方的数字签名数据分散为多份,每份执行一个
         确定难度的加密运算.随后,将加密的签名数据分片传递给对方之后,双方同步发送己方的数字签名加密分片的
         解密密钥,己方获得一份密钥之后,发送己方的一份密钥给对方,如此往复,直到双方都收到全部的分片密钥.显
         而易见,这不是一个确定性的无 TTP 方案,因为当一方收到最后一份密钥之后,他可能拒绝发出自己最后的一份
         己方密钥.在这种情况下,另一方只能通过解密的方式求解最后一份密钥,虽然假定加密算法的难度是确定的,
         但是他仍然可能在有效的时间内无法破解最后一份密钥,从而使得自己处于被动劣势地位.
             2.  基于在线 TTP 的协议
             文献[14]的 FCSP 协议需要半信任的第三方来保证每一次交换的公平性,并且保证第三方在内的任何一方
         提前终止数据交换都不会获得任何益处,也不会使得利益不均衡.但是需要确保的前提是第三方不会与任何一
         方同谋.Alawi 等人在文献[15]中给出了名为 Halevi-Micali“承诺”方案,要求准备签署合同的双方把合同交给第
         三方做备案记录,这需要在线 TTP 的支持.该方案可以应用到互联网上,其实现的公平交换协议保证了“乐观、公
         平和无滥用”等安全特性,并且该方案使用无碰撞哈希函数,即建立在基础的计算机密码学之上,使得该方案很
         实用.而且只需要 4 轮数据交换即可完成协议过程,通信和计算成本相对较低.Wan 等人在文献[16]中号称实现
         了无任何 TTP 的 FCSP,但是实际上,该文献提到的可信时间戳服务充当了 TTP 角色.
             3.  离线 TTP 协议
             文献[17−21]分别利用数字签名技术的不同方面(包括聚合签名技术等)提出了 FCSP.文献[22]通过优化签
         名算法,无须解密密钥向 TTP 传递即可验证,降低了对 TTP 的要求,且协议过程和通信量更简单高效.文献[23]
         提出利用公开可验证秘密分享(publicly  verifiable secret sharing,简称 PVSS)原理,实现了签名者隐私的保护,有
         效地降低了签名者中的一方与离线半可信 TTP 合谋来获取另一方签名的概率.但是,以上研究都需要第三方离
         线 TTP 在争议时提供验证服务和仲裁.
             区块链技术以“去中心化”为核心特征,对应了 FCSP 的无 TTP 需求,其中,文献[24]给出了基于区块链技术的
         FCSP 的三方实现.其核心思想是:三方在对合约进行数字签名之后,在比特币网络上发布对赌交易,没有传递自
   198   199   200   201   202   203   204   205   206   207   208