基于区块链技术的公益时间银行系统
2019-09-04肖凯王蒙唐新余蒋同海
肖凯 王蒙 唐新余 蒋同海
摘 要:在现有的时间银行系统中,时间币的发行功能和结算功能完全集中到一个中心节点上。这种极度中心化的功能结构,不仅存在容易发生中心节点单点失效、数据容易被篡改等信息安全问题,还存在着时间币的发行和流通缺乏透明度以及时间币的结算依赖中心化的结算机构等问题。针对这些问题,提出了一种基于区块链技术的解决方法。首先,将时间币的发行功能和结算功能从中心节点上分离出来;然后,利用具有分布式去中心化、集体维护和不可篡改等特性的区块链技术,将分离出来的发行功能逐步去中心化,将分离出来的结算功能去中心化,形成公益时间链(PWTB);最终,PWTB利用区块链技术以去中心化的方式将时间银行系统由单个节点维护账本变成由集体维护一个分布式的共享账本,使时间币的发行和流通公开透明, 时间币的结算不依赖某个中心化的节点。安全分析表明所设计的PWTB能够实现安全的信息传输与存储,以及数据的共享。
关键词:区块链;时间银行;时间币;去中心化;信息安全
Abstract: In the existing time bank system, the issuance and settlement functions of time dollar are completely centralized on a central node. This central way not only suffers from many security problems including single point failure of central node and data tampering, but also has some problems such as lack of transparency in time dollar issuance and circulation, the dependance on centralized settlement agency in time dollar settlement process. In order to solve these problems, a public welfare time bank system based on blockchain was proposed. Firstly, the issuance function and settlement function of time dollar were separated from the central node. Then, the separated issuance function was gradually decentralized, and the separated settlement function was directly decentralized by the use of advantages of blockchain such as distributed decentration, collective maintenance and the feature of not easy to tamper, after that Public Welfare Time Blockchain (PWTB) was formed. Finally, PWTB used blockchain to decentralize the time bank system from a single node maintaining ledger to the collective maintaining distributed shared ledger, so the issuance and circulation of time dollar became open and transparent, and the settlement of time dollar did not rely on a central node. The security analysis shows that the PWTB can achieve safe information transmission and storage as well as safe data sharing.
Key words: blockchain; time bank; time dollar; decentralization; information security
0 引言
目前我國人口老龄化问题日趋严重,养老服务志愿者的需求缺口越来越大[1]。为了激励更多的人参与到志愿活动,时间银行[2]通过一种“有偿”的方式来激发公众参与志愿者活动的积极性,即志愿者参与志愿活动,提供相应的服务,然后会获得一定的时间币作为奖励[3]。短期来看,志愿者可以通过时间币在公益商店购买公益商品,还可以享受额外的社会福利,例如当前在南京地区,拥有一定数量的时间币就可以免费乘坐一定次数的公交,在医院可以享受优先排队的待遇等;从长期来看,志愿者可以在自己年老时,将积分兑换成等值的服务来帮助自己养老,实现“老有所依”。
在当前的时间银行中,时间币的发行和结算完全集中在一个中心机构上[4-6],这种中心化的结构存在许多的问题。比如:1)不透明化。当前全国各地的时间银行发行的时间币,具有不透明性,普通用户难以查询时间币的实际发行量,同时时间币的整个流通过程也缺乏透明性。2)数据不安全。数据存储在一个中心结构,这种方式数据极易被篡改,一旦中心结构的数据库发生损坏,则会导致无法挽救的损失。3)缺乏流通性。主要是指时间维度上的缺乏流通性,从储蓄到兑换,这中间可能长达数十年,中心结算机构的生命力决定并影响着时间维度上时间币的流通性,一旦中心化的结算节点失效,整个系统中的时间币将不可流通了。
针对上述问题,本文的解决思路是:第一步把发行和结算两个功能从这个中心机构分离出来;第二步将分离出来的发行功能,逐步去中心化,比如,最初是上级政府机构拥有发行的权力,然后放权到下级政府机构,接着再放权到经过审核的社会上的相关组织和机构,最后逐步形成一个去中心化的结构(一部分群体参与)。对于将抽离出来的结算功能,去中心化,使得系统中的所有节点都具有结算的功能(所有群体都可以参与,这意味需要系统中存在分布式共享账本),而这些问题大多数本身就存在于传统的技术方案所实现的系统中,因此急需新的技术来实现上述解决思路。
受到企业尤其是金融机构的追捧的区块链技术正好具备:公开透明、防篡改、去中心、自治性、集体维护、共享账本等特性[7-11],能够很好地实现上述的解决思路。目前,国内外还没有将区块链技术应用到时间银行系统的案例,为此,基于以上问题和解决思路,本文首次利用区块链技术来设计针对公益时间银行的系统,命名为公益时间链(Public Welfare Time Blockchain, PWTB)。
1 公益时间链的系统组成
依据引言中的解决思路,本章主要介绍两部分:第一部分,关于时间币的发行、服务资产的数字化即系统中初始资产审核认证平台;第二部分,关于时间币的结算流通,即公益时间链部分。另外在下文的介绍中出现了结算节点、应用节点、用户(成员)、应用等概念,它们的关系是用户使用结算节点或应用节点上的应用。
1.1 服务资产数字化
当前许多区块链系统中的资产(比如比特币中的资产)存在于虚拟世界中,系统中新的资产通过“挖矿”产生,这也使得整个系统的资产的发行可以完全的去中心化。
本文中研究的时间银行系统与上述系统存在很大不同,存储在时间银行系统中的资产——时间币来源于现实世界中,即志愿者参与志愿者活动,提供相应的服务,然后产生资产。由于资产来源于现实世界,这就决定需要一个现实世界中的审核平台对该资产进行审核认证,这一特性也就决定了在PWTB中资产的发行一开始无法作到完全的去中心化,于是本文将资产的发行设计成逐步地去中心化的机制。
如图1所示,整个系统的资产是通过向经过审核平台认证过的困难群体提供服务产生的。整个过程如下:
1)困难群体向审核平台提供贫困证明材料,审核平台对材料的真实性进行审核。
2)经过审核通过的困难群体,依据其困难程度在一段时间内将免费享受一定次数的服务。
3)依据困难群体的需求,志愿者向需要服务的困难群体提供相应的服务。
4)服务完成后,审核平台对整个服务过程进行审核。
5)整个服务过程审核通过后,并结合接受服务者的满意程度,审核平台将服务资产数字化,即将服务转换为等值的时间币。
6)最后将转换后的数字资产上链到PWTB中,即通过产生新增资产交易(交易中记录了资产的拥有者为提供服务的志愿者),并将交易信息发送到PWTB中(审核平台实际是图3中一个结算节点或者应用节点上的应用)。
从图1中可以看出,初始资产是通过审核平台审核认证的,即最初的资产是由审核平台发行的,这就意味着,与当前现实中的所有资产一样,需要审核平台为新认证的资产背书。本文的设计中,最初的背书机构选择政府机构主要在于:一方面是政府机构是现实世界中最具有公信力的机构;另一方面是政府机构的自身需求。当前中政府机构每年都会对贫困群体进行一定的现金补助,但是对于贫困群体后期的资助金的使用缺乏监管,而使用本系统后,所有的资助金——时间币的整个流通过程(即PWTB记录了整个过程并且不可篡改)是公开、透明的,正好可以很好地解决这个监管问题。
在下文中,统一将上述具有审核权力的群体称为审核组(Audit Group, AG)。如图2所示,系统中AG的初始成员只有部分的一级政府机构。随着系统的运行,这部机构可以将审核权力授权给一部分二级的政府机构(即AG的原始成员同意一部分二级政府机构加入到AG中)。这部分新获得审核权力的二级政府机构实际是经过一级政府机构背书的(经过当前AG的所有成员的同意才能加入到AG)。后期随着系统的稳定运行,AG中的现有成员可以将审核权力授权给社会上一些经过审核的公益组织、养老院等组织机构。后续新加入的组织机构都是经过先前成员的背书,从而形成一条背书链。
1.2 服务资产的共享流通
通过将现实世界的资产转换成数字资产后,PWTB提供了数字资产流通的渠道,而数字资产在流通的是通过一笔交易进行的,资产的交易(即资产的转让)的完成是通过结算功能实现的。
依據引言中解决思路的第二点,为了使资产在时间维度上具有流通性,需要使系统中的每一个用户都拥有结算的能力,而用户具有结算能力的基础是拥有一份共享账本或者能够获得共享账本的信息,即集体参与系统账本的维护。
如图3所示,公益时间链(PWTB)主要包括如下。
1)交易数据。系统中的所有交易数据最终存储在PWTB中,这些交易数据包括交易类型、交易发生的时间戳等。这些信息通过数字和数字签名技术保证可验性和准确性。
2)区块。在PWTB中,所有的交易数据都将被结算节点审计,合法有效的区块将被存储在结算节点的本地共享账本中,进而在所有网络节点中进行广播。
3)结算节点。在本地存储着一份共享账本。负责收集和广播网络中最新的合法交易和区块,依据这些合法数据维护并更新共享账本。结算节点除了具有基本的结算功能外,在应用节点上的应用也可以运行在结算节点上(例如:钱包APP、审核平台系统等)。
4)应用节点。本地并不存储完整的共享账本,通过连接到结算节点上按需获取共享账本的部分数据,然后基于这些数据为用户提供相关的服务(例如:钱包APP,为用户提供转账服务产生资产转让交易,审核平台系统为AG中的成员提供支持审核应用服务等)。
5)监管节点。监管部门可以在PWTB上部署审计监管节点,监管节点是结算节点,只不过监管节点上运行的是与监管相关的应用。
2 公益时间链的系统运行
如图4所示,公益时间链中的结算节点包括交易记录池、共享账本和本地控制器。交易记录池存储着当前公益时间链上最新发生的且尚未被整合到区块中的交易数据。共享账本记录着公益时间链上所有历史交易记录。本地控制器负责运行各种应用程序和算法(比如:共识算法[12]、智能合约[13-14]程序等),接受并广播来自网络中的合法数据(交易和区块)。类似于比特币,新的数据块在加入到PWTB前,PWTB某个时间段内的“结算权”由所有的结算节点竞争产生。结算节点通过Merkle哈希过程计算区块的Merkle Root,后将求解的随机数Nonce代入,计算Merkle Root的SHA256双哈希值,若该值小于目标哈希值Bites,则找到了有效的工作量证明(即随机数Nonce)[15]。每个结算节点竞争寻找有效的工作量证明,最快找到有效工作量证明的结算节点获得“结算权力”负责审计最新的交易数据并把他们组建到PWTB上新的区块并全网广播。本文使用的符号及其含义如表1。
1)身份认证。网络中的所有用户首先通过系统CA(Certificate Authority请补充CA的英文全称)的认证后,成为公益时间链中的合法用户,并获取用于加密数据的密钥和证书,表示为{PuKi,PrKi,Certi}。
2)新成员申请加入AG。新成员A要想加入AG,首先需要在AG中寻找一个推荐人(假设为Recmderi)推荐,然后由AG中的其他成员(假设为Otheri)达成共识才能够加入AG中。如图65所示此处存在图号引用顺序颠倒的问题,应该先引用图5,再引用图6。如何调整?请明确。,具体步骤如下。
步骤1 推荐人Recmderi背书产生一个成员推荐交易,交易中包含被推荐人(A,{PuKA,PrKA,CertA})的相关信息(比如:PuKA,CertA,被推人的资格审核材料等),以及推荐人的数字签名,然后向网络中广播该交易,则上述过程表示如下:
步骤2 系统中AG的其他成员(Otheri)收到该交易之后,对该交易的合法性进行验证以及对被推荐人A的相关材料进行审核,并把他们的意见(Result,即是否同意被推荐人A加入AG)同时附上各自的数字签名生成推荐反馈交易,并将该交易广播到网络中。具体过程如下:
步骤3 Recmderi汇总来自其他成员的审计结果。如果所有其他成员都同意被推荐人加入AG,则Recmderi则将所有其他成员的数字签名集合{SigOtheri}(是指对成员推荐交易中的核心内容的签名,比如:“推荐张三{PukA,CertA}加入AG”这部分核心内容的签名)和证书集合{CertOtheri}与先前的成员推荐交易整合成新成员加入交易,并将该交易广播到网络中的其他节点。
步骤4 假若反馈期内(比如:7个工作日)收到全部成员的投票结果之后有部分成员Otheri不同意新成员的加入,则此次推荐失败。针对多次未参与反馈的成员以及一些恶意成员,AG的其他成员可以产生剔除成员交易将该成员从AG中剔除,从而保证系统的安全稳定运行。
传统的通信方式中,消息的发送方是通过消息的接收方的及时反馈来确保接收方已经接收了消息。发送方等待接收方的反馈时间通常非常地短(比如:3s),但是本文的研究中,一方面是新成员加入的共识过程非常长(比如:两周),另一方面是:消息都是以广播的形式传递的,消息的接收方众多。显然传统的通信的方式并不适合本文。如图56所示,本文的设计中以共享账本为中介,消息的发送方通过查询消息是否被记录在共享账本为依据中来判断接收方能否接收到消息,消息被存储的共享账本中,则说明消息的接收方肯定能获取到消息(即认为接收到了消息)。这样消息的发送方无需通过接收来自众多接收方的反馈来确保每个接收方都收到了消息,而是直接与共享账本交互查询。
基于所有合法的成员推荐交易和推荐反馈交易都会被永久记录存储到共享账本中。交易的发送方在发送交易一段时间后(PWTB中区块平均生成时间),如果在共享账本中查询不到该交易,说明该交易没有成功被存储记录到共享账本中(可能由网络原因导致广播时丢失),则再次重新向网络中广播该交易,直到可以在共享账本查询到该交易的信息(保证了消息的接收方能够获得消息)。
由于所有合法的成员推荐交易被永久记录存储到共享账本中,AG中不在线的成员,下次上线时会从邻近的在线的结算节点同步更新的共享账本,从而能获取离线这段时间内所有待处理的成员推荐交易,然后按步骤2处理这些成员推荐交易。同时由于所有的推荐反馈交易被永久记录存储到共享账本中,当AG中成員反馈时,Recmderi如果不在线,下次Recmderi上线时会从邻近的在线结算节点同步更新的共享账本,从而能获取离线这段时间内所有待处理的成员推荐交易,然后按步骤3处理这些推荐反馈交易。
成员推荐交易和推荐反馈交易永久记录存储到共享账本中,一方面不仅能保证Recmderi在线时能够获取AG中的其他成员发送的推荐反馈交易,同时也能够保证AG中的其他成员在线时能够获取Recmderi发送的成员推荐交易;另一方面,整个推荐与成员的共识过程都记录在共享账本中公之于众,使得整个推荐过程公开透明,便于各方的相互监督。
2.2 数据流通
本节主要介绍系统数据流通部分,主要包括系统初始化和传递交易数据两部分,具体内容如下。
1)系统初始化。当新节点加入时,结算节点将从邻近的结算节点同步共享账本和交易池中的数据,应用节点则按需同步相关的数据。
2)传递交易数据。经过认证的用户通过网络中的结算节点(假设为FNj)或者应用节点(假设为LNs)(实际使用产品为钱包、交易网站、审核平台、第三方支付APP等)产生交易数据,然后结算节点或者应用节点将交易数据广播到邻近的结算节点(例如图4中的FNi)。PWTB中的传递的交易主要有以下几种交易。
①成员推荐交易,即2.1节中,AG中现有成员推荐新成员时产生的交易。
②推荐反馈交易,即2.1节中,AG中现有成员对新成员申请加入时产生的反馈交易。
③新成员加入交易,即2.1节中,AG中现有成员推荐新成员并获得所有其他成员同意时产生的交易。
④剔除成员交易,即2.1节中,AG中现有成员剔除一些恶意成员时产生的交易。
⑤新增资产交易,即1.1节部分,志愿者向贫困群体提供相应的服务,由AG成员对该过程进行审核,审核通过后,AG成员为该志愿者产生新增资产交易,使该志愿者在PWTB中拥有该新增的数字资产。
⑥资产转让交易,即1.1节部分服务资产数字化之后,公益时间链PWTB上就有了数字资产,每次数字资产归属的变更都是通过资产转让交易进行的。资产转让交易是PWTB上原有资产的归属权的变更。资产的流通正是通过归属权的变更进行的。资产转让交易的内容主要如下:Txi=(spdata‖updata‖…‖Certi‖timestamp),只有经过实名认证的用户才可以发起交易。其中:
其中:index为其在Tx输出集合updata中的索引,即上面的参数j;value表示时间币的数量;PuKi表示该UTXO的拥有者,即表示持有PuKi密钥的用户拥有value数值的时间币,只有拥有PrKi,才能够花费该笔资产。
3)本地结算节点收集交易数据。接收到从网络中传来的交易数据,该结算节点(例如图4中的FNi)对交易数据的合法性进行验证,如果是非法交易,则直接忽略;如果是合法交易,则把该交易数据存储到本地的交易记录池中,并且向网络中的其他结算节点(例如图4中的FNh)广播该合法交易数据。
4)本地结算节点工作量证明。经过一定时间(例如:10min),本地结算节点FNi把这段时间内所有收集的有效数据整合成交易数据集合(假设为:Bodydata);然后通过Merkle Tree算法生成Merkle Root Hash(假设为:MRhash),然后把MRhash、随机数Nonce及其他相关字段组装成区块头部数据(假设为:Headdata);不断地调整Nonce的值使得Hash(Headdata) 5)广播合法的区块。结算节点(例如图4中的FNm)收到来自网络中最新区块时,对该区块的合法性进行验证。如果该区块非法则直接忽略;如何该区块是合法的且是最新区块,则把该区块加入到本地共享账本中,并从本地交易记录池中删除已经包含在该区块中的交易,然后将合法交易向网络中其他的结算节点(例如图4中的FNn)然后将该合法区块向网络中其他的结算节点(例如图4中的FNn)传递此句感觉未表达完,请补充。回复:然后将该合法区块向网络中其他的结算节点(例如图4中的FNn)传递,然后FNn执行5)广播合法的区块,FNm停止本轮“结算权力”的竞争,进行下一轮工作量证明。 3 安全性分析 本文所提的公益时间链(PWTB),依赖多年来经过实践验证的一些密码学技术,比如Hash函数和非对称加密算法来保障系统的信息安全。与一般的信息安全保护不同,本文所提及的公益时间链(PWTB)具有以下特点。 3.1 结算功能24/7安全可用 与传统的金融体系不同,本文所提的公益时间链(PWTB)在结算功能的设计上采用了与比特币系统类似的设计思路,将整个系统中的结算功能去中心化,使得系統的结算功能不依赖与某一个中心的结算节点。在PWTB中每个结算节点都拥有一份相同的共享账本,这样可以保证即使攻击者攻击任意单个结算节点都不会影响整个系统的数据安全,即使攻击者控制了网络中的有限节点(少于50%的节点)[16],也不会影响系统的正常运作。 如图7图号是否有误,应为图7吧?所示,如果攻击者攻击结算节点A,发送经过篡改后的数据给网络中的结算节点B、C。节点B、C按照一套相同的规则(共识机制)对接收到的数据进行验证,发现该数据不正确后,就将该数据丢弃,同时不在网络上再传播该数据。这样有效地阻挡了被篡改的数据在网络中的传播,即图中分割线L左边的结算节点D,E将不会接收到节点A发送的非法数据。 同时由于PWTB的结算功能是去中心化的分布式结构。PWTB是24/7不间断连续运行的,系统中每时每刻都有结算节点执行结算功能,任何结算节点的失效都不会影响整个PWTB结算功能的运转。 3.2 传输信息安全保密 在PWTB中,所有需要保密的信息都经过非对称加密算法加密之后进行传输,保证信息不泄露给未经授权的任何人[17]。例如:在系统用户证书中关于用户个人隐私的信息(婚姻状况、身份证号、家庭住址等信息),只有监管部门可以查看。 首先所有用户(志愿者、机构、公益组织等)需要将其PuKi发送给监管部门(CA){PuKj,PrKj,Certi}进行实名登记,获得证书Certi才能够在系统中发起交易。 用户在向监管部门(CA)进行实名登记时,对提交的信息中包括隐私信息和可公开的信息,对于可公开的信息部分至少包括其公钥PuKi,隐私信息privatedData,经过CA的公钥PuKj加密之后再存储在证书Certi中,这样只有拥有私钥PrKj的监管部门才能解密证书Certi中的私密信息[18],而网络中的其他人则无法查看用户的隐私信息,从而保证信息不泄露给未经授权的任何人。 3.3 传输信息完整可靠 在PWTB中,所有发送的消息都经过发送方{PuKi,PrKi,Certi}的私钥PrKi签名之后,才发送到网络中,从而保证信息在存储或传输过程中保持不被修改、不被破坏、不被插入。过程如下: 其中: 首先發送方{PuKi,PrKi,Certi},用一个哈希函数Hash()将要发送的原始消息message作为Hash()的输入得到该消息的摘要,然后用自己的私钥PrKi对该摘要进行签名得到签名数据sigData,然后发送方将新的数据(message‖sigData‖PuKi‖timestamp)发送给网络中的接收方。接收方在收到消息后,首先使用哈希函数Hash()将从原始消息message获取该消息的摘要,接着再用发送方的公钥PuKi对签名消息sigData进行解密,如果两个前后摘要相同,那么接收方就能够确定该数字签名和数据是发送方的。通过数字签名的方式,消息的接收方能够确认消息是由发送方签名并发出的,同时能够确定消息的完整性,即使被篡改了接收者也能够验证并及时地发现。 4 结语 本文针对当前时间银行不仅存在容易发生中心节点单点失效、数据容易被篡改等信息安全问题,而且还存在时间币的发行和流通不透明、时间币的结算依赖中心结算机构等问题,首先分析出了产生这些问题的根本原因在于时间币的发行和结算功能极度的中心化,然后给出了具体的解决思路,并依据解决思路首次将区块链技术引入到了时间银行系统中,提出并设计实现了公益时间链(PWTB)系统,解决了当前时间银行系统存在的上述问题。由于PWTB中在某一段时间内结算节点的选择规则类似PoW(Proof of Work),所以整个系统也存在PoW机制自身存在的一些问题(比如存在受到51%算力攻击的可能性),但是PoW目前最成功的实践应用比特币系统多年的成功运行,说明这并不影响系统的实际应用(在现实中各利益方之间的博弈权衡会避免51%算力攻击的发生)。安全性分析表明本文提出的PWTB系统安全可行。 本文所涉及的时间银行项目仍在持续推进中,当前阶段已经完成了核心技术的应用实现以及基础平台的搭建,后续将会有更多的第三方拓展应用系统将会接入到基础平台中,随着不同领域中的系统接入,未来将会围绕基础平台形成一个公益生态圈。在下一阶段,将重点针对第三方系统的接入机制进行更深入一步的研究。 参考文献 (References) [1] 桂雄.当前我国社会养老服务体系建设存在的问题和建议[J].经济纵横,2015(6):100-103.(GUI X. Problems and suggestions on the construction of social old-age service system in China[J]. Economic Review, 2015(6): 100-103.) [2] SEYFANG G, SMITH K. The Time of Our Lives: Using Time Banking for Neighborhood Renewal and Community Capacity Building [M]. London: New Economics Foundation, 2002: 583. [3] LASHKO G. Time banking-new social currency or waste of time? [J]. Housing Care and Support, 2012, 15(4): 161-168. [4] MARKS M B. Time banking service exchange systems: a review of the research and policy and practice implications in support of youth in transition[J]. Children and Youth Services Review, 2012, 34(7): 1230-1236. [5] COLLOM E, LASKER J N, KYRIACOU C. Equal time, equal value: community currencies and time banking in the US[J]. Contemporary Sociology, 2015, 44(2): 184-186. [6] SHIH P C, BELLOTTI V, HAN K, et al. Unequal time for unequal value: implications of differing motivations for participation in timebanking[C]// Proceedings of the 2015 ACM Conference on Human Factors in Computing Systems. New York: ACM, 2015: 1075-1084. [7] 沈鑫,裴庆祺,刘雪峰.区块链技术综述[J].网络与信息安全学报,2016,2(11):11-20.(SHEN X, PEI Q Q, LIU X F. Survey of block chain[J]. Chinese Journal of Network and Information Security, 2016,2(11):11-20.) [8] 谢辉,王健.区块链技术及其应用研究[J].信息网络安全,2016(9):192-195.(XIE H, WANG J. Study on block chain technology and its applications[J]. Netinfo Security, 2016(9): 192-195.) [9] 蔡维德,郁莲,王荣,等.基于区块链的应用系统开发方法研究[J].软件学报,2017,28(6):1474-1487.(CAI W D, YU L, WANG R, et al. Blockchain application development techniques[J]. Journal of Software, 2017, 28(6): 1474-1487.) [10] 袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494.(YUAN Y, WANG F Y. Blockchain: the state of art and future trends[J]. Acta Automatica Sinica, 2016, 42(4): 481-494.) [11] 林晓轩.区块链技术在金融业的应用[J].中国金融,2016(8):17-18.(LIN X X, Application of blockchain technology in financial industry[J], China Finance, 2016(8):17-18.) [12] 袁勇,倪晓春,曾帅,等.区块链共识算法的发展现状与展望[J].自动化学报,2018,44(11):2011-2022.(YUAN Y, NI X C, ZENG S, et al. Blockchain consensus algorithms: the state of the art and future trends[J]. Acta Automatica Sinica, 2018, 44(11): 2011-2022.) [13] 平健,陈思捷,张宁,等.基于智能合约的配电网去中心化交易机制[J].中国电机工程学报,2017,37(13):3682-3690.(PING J, CHEN S J, ZHANG N, et al. Decentralized transactive mechanism in distribution network based on smart contract[J]. Proceedings of the CSEE, 2017, 37(13): 3682-3690.) [14] 何蒲,于戈,张岩峰,等.区块链技术与应用前瞻综述[J].计算机科学,2017,44(4):1-7.(HE P, YU G, ZHANG Y F, et al. Survey on blockchain technology and its application prospect[J]. Computer Science, 2017, 44(4): 1-7.) [15] 吴振铨,梁宇辉,康嘉文,等.基于联盟区块链的智能电网数据安全存储与共享系统[J].计算机应用,2017,37(10):2742-2747.(WU Z Q, LIANG Y H, KANG J W, et al. Secure data store and sharing system based on consortium blockchain in smart grid[J]. Journal of Computer Applications, 2017, 37(10): 2742-2747.) [16] 邵奇峰,金澈清,张召,等.区块链技术:架构及进展[J].计算机学报,2018,41(5):969-988.(SHAO Q F, JIN C Q, ZHANG Z, et al. Blockchain: architecture and research progress[J]. Chinese Journal of Computers, 2018, 41(5): 969-988.) [17] 刘传领,范建华.RSA非对称加密算法在数字签名中的应用研究[J].通信技術,2009,42(3):192-193.(LIU C L, FAN J H. Application of RSA asymmetrical encryption algorithm in digital signature[J]. Communications Technology, 2009, 42(3): 192-193.) [18] 李联.信息安全中的DES加密算法[J].现代电子技术,2005,28(9):118-120.(LI L. The DES encryption algorithm in information security[J]. Modern Electronics Technique, 2005, 28(9): 118-120.)