一种基于区块链的智能合约的实现方法技术

技术编号:13587591 阅读:54 留言:0更新日期:2016-08-25 11:22
本发明专利技术提供了一种智能合约的实现方法,包括步骤:建立智能合约,其中,合约C为三元组:C=(I,M*,{M1,M2,…,Mm}),包括:合约方信息I,Ii表示第i个合约方Pi的信息,i=1…m,共有m个合约方参与合约;合约状态机M*与合约执行状态机集合{M1,M2,…,Mm};输入各个合约方的状态及事件,并存储在安全度高的数据库中;执行智能合约,获取合约的执行结果。并且还提供了一种基于区块链的智能合约系统,包括:用户界面、智能合约装置及区块链管理模块。

【技术实现步骤摘要】

本专利技术涉及智能合约
,特别是涉及到智能合约执行模型的设计。本专利技术不仅解决了智能合约执行模型的设计问题,还提供了一种基于区块链的智能合约系统,使得智能合约的存储与执行具有公信力,安全性更高。
技术介绍
合约指两方面或几方面在办理某事时,为了确定各自的权利和义务而订立的共同遵守的条文。传统的合约都是先经过“桌面会议”讨论得到一致后,记录在纸张上。经过了这么多年的发展,“合约”已经形成了自身的概念与原则。在传统合约中,人们先通过面谈的形式制定合约并达成一致,把合约记录在纸张上,合约双方在纸上签字;合约的执行过程由很多的控制协议构成,控制协议包括两个部分:表格、账单等记录的保存,还有记录的审核与协商,记录的审核与协商往往需要第三方参与,容易造成合约方之间的地位不平等;合约的执行效能只能通过法律、武力来保证。这些控制协议都是经过多年的沉淀积累下来的。虽然控制协议的成本很高,但它是我们在不信任的环境中保持协作的根本保证。合约的执行过程中,记录的审核不仅花费很高,而且依靠低效率的人工完成,所以人们往往通过抽样审核来缩减成本的。我们已经进入了数字社会的时代,应该通过计算机、互联网、密码理论等技术的引入,来减少了交易在合约制定、控制协议和执行效能保障的人工花费与计算成本。1997年,Nick Szabo引入“智能合约”的概念:智能合约把合约条款嵌入到软、硬件中,通过协议与用户接口来促进合约的执行,它是我们在互联网中形成安全、数字化关系的关键。他在“Formalizing and Securing Relationships on Public Networks”中提出了智能合约的三大重要的性质:可观察性、可验证性与接入控制。可观察性指合约本身与合约执行过程能够被观察;可验证性指合约执行的过程与判决都能够被验证;接入控制是指合约本身及与合约相关的信息只有相关的合约方才能够接触,当发生冲突的时候才会把相关信息暴露给第三方审查。通过把智能合约与传统合约比较,可以看到智能合约的优势:首先,传统合约需要通过“桌面协议”的形式协商与撰写,智能合约可以通过互联网与数字签名技术就可以形成有合约方认证签名的智能合约;与此同时,传统合约的执行过程由很多的控制协议构成,控制协 议包括两个部分:表格、账单等记录的保存,还有记录的审核与协商,记录的审核与协商往往需要第三方参与,这样不仅容易造成合约方之间的地位不平等,而且需要花费第三方的费用,智能合约通过密码协议与用户界面的结合保证合约的本身及其执行过程的可观察性、可验证性,减少了控制协议的人工花费与计算成本。因此,智能合约不仅比传统“纸质”合约具有更大功能、生命力更强,它还减少了交易在合约制定、控制协议和执行效能保障的人工花费与计算成本。同时,它还是形成“数字社会”主力军,起着不可缺少的重要作用。由此看来,智能合约的发展潜力是巨大的。由于技术的不成熟,所以智能合约的发展一直十分缓慢,直到2013年,Ethereum提出了带有内置图灵完备编程语言的区块链,智能合约能够在区块链上实现,使得智能合约的研究又进入了一个新的阶段。区块链是一个可验证的、不可更改的复制型分布式数据库。区块链有两个重要的组成部分:交易和区块。其中,交易不仅记录了改变数据库状态的操作,还是对数据库使用权限的载体;区块,它是对交易验证时间与顺序的记录。区块链记录了所有的交易,保证区块链的可验证性。交易、区块的正确性主要在于系统对标准的制定,交易的有效性判断标准在于实际的需要;由于区块链是复制型数据库,所以区块的有效性判断决定了区块链的不可更改性与一致性、系统的安全性。同时,带有内置图灵完备编程语言的区块链可以自动执行保存在区块链中的规则,所以智能合约能够用区块链实现。Ethereum提供了一个带有内置图灵完备编程语言的区块链平台,任何人都可以在它上面制定自己的规则、交易格式和状态转换函数,来创建自己的智能合约、分布式应用。但Ethereum只提供了实现智能合约的底层设施,并不是完整的智能合约系统,从合约的建立到合约的执行,到合约的审计都没有相关实现。
技术实现思路
有鉴于此,本专利技术设计了一种基于区块链的智能合约实现方法系统。一种智能合约的实现方法,其特征在于,包括步骤:建立智能合约,其中,合约C为三元组:C=(I,M*,{M1,M2,…,Mm本文档来自技高网
...

【技术保护点】
一种智能合约的实现方法,其特征在于,包括步骤:建立智能合约,其中,合约C为三元组:C=(I,M*,{M1,M2,…,Mm}),包括:合约方信息I,Ii表示第i个合约方Pi的信息,i=1…m,共有m个合约方参与合约;合约状态机M*与合约执行状态机集合{M1,M2,…,Mm};把合约C存放入安全度高的数据库中;输入各个合约方的状态及事件,并把所述状态及事件作为证据记录在安全度高的数据库中;根据建立好的合约C与各个合约方输入的事件来执行智能合约,获取合约的执行结果。

【技术特征摘要】
1.一种智能合约的实现方法,其特征在于,包括步骤:建立智能合约...

【专利技术属性】
技术研发人员:胡凯黄洁华蔡维德白晓敏陈志东
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1