首页 / 专利库 / 银行与财务事项 / 智能合约 / 一种基于区块链的智能合约实现方法

一种基于链的智能合约实现方法

阅读:30发布:2021-12-04

专利汇可以提供一种基于链的智能合约实现方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 区 块 链 的 智能合约 的实现方法,属于智能合约领域,主要包括智能合约制定、智能合约存入区块链及智能合约自动执行三个部分。智能合约的制定由多方用户共同参与,参与者对其进行数字签名后传入区块链网络中,当参与者之间发生数据共享时,智能合约将会定期检查自动机状态,一旦某个事务满足智能合约触 发条 件,验证 节点 会对该事务进行身份验证,通过验证的事务将会被系统成功执行。,下面是一种基于链的智能合约实现方法专利的具体信息内容。

1.一种基于链的智能合约执行方法,其特征在于,包括以下步骤:
步骤1、对于两个及两个以上有数据共享需求的用户,根据每个用户自身需要制定一份合约,并通过编程语言获得电子化合约,由参与合约制定的各个用户对电子化合约进行数字签名,获得有效合约;
步骤2、有效合约通过P2P的方式在区块链中扩散,区块链中参与该有效合约制定的各个节点都收到一份有效合约并保存在对应的区块中,对应的区块中除了包含本体信息之外,还包含有效合约记录及与有效合约记录对应的时间戳;
步骤3、设置有效合约定期检查自动机状态,逐条遍历有效合约内包含的状态机、事务和触发条件,当事务满足触发条件,利用验证节点首先对事务进行签名验证,当验证节点通过签名验证之后执行事务。
2.如权利要求1所述的一种基于区块链的智能合约执行方法,其特征在于,所述的步骤
3,包括以下步骤:
步骤3.1、由用户发起数据共享请求后产生相应的事务,并把用户的操作记录在对应的区块中;
步骤3.2、检查有效合约状态机的执行状态,遍历有效合约找到该事务对应的触发条件;
步骤3.3、当该事务满足触发条件时,通过验证节点对该事务进行签名认证;
步骤3.3.1、当事务通过签名验证后,向数据库发起对应请求并返回用户所需要的数据,即该事务被系统成功执行并通知用户;
步骤3.3.2、若该事务不能通过验证节点的验证,则用户发起的数据共享请求失败,即该事务执行失败,系统返回相应的状态并通知用户;
步骤3.4、在执行过程中,由有效合约对事务实时监督是否出现违背合约操作,若出现违背合约操作,则中止事务的执行并将该状态返回给用户。
3.如权利要求1所述的一种基于区块链的智能合约执行方法,其特征在于,所述的步骤
1,还包括在制定合约前,有数据共享需求的用户在区块链中进行账户注册,注册后由对应账户接收区块链所分配的一对公钥和私钥。
4.如权利要求2所述的一种基于区块链的智能合约执行方法,其特征在于,所述的步骤
1,其中参与合约制定的各个用户都是通过各自账户的私钥对电子化合约进行签名。
5.如权利要求1所述的一种基于区块链的智能合约执行方法,其特征在于,所述的步骤
2,其中当有效合约通过P2P方式扩散到区块链中时,由区块链中的验证节点对有效合约进行验证,当一半以上验证节点通过验证并达成共识之后有效合约被存储到对应的区块中。
6.一种基于区块链的智能合约系统,其特征在于,包括
智能合约指定模块,接收由用户合约所转化的电子化合约;
智能合约存入模块,接收智能合约指定模块所传输的有效合约;
智能合约自动执行模块,遍历检查由智能合约存入模块存储于区块中的有效合约所包含的状态机、事务和触发条件且由检查结果选择地执行事务。
7.如权利要求6所述的一种基于区块链的智能合约系统,其特征在于,所述的智能合约自动执行模块包括智能合约执行状态机、用于存储数据的数据库、用户发起数据共享请求和验证节点;所述的智能合约执行状态机,接收由用户发起数据共享请求生成的事务且遍历有效合约找出事务对应的触发条件;
所述的验证节点,接收智能合约执行状态机所反馈的触发条件满足情况且由满足情况选择地对事务签名验证;
所述的数据库,接收验证节点所签名验证事务的验证状态且由验证状态选择地对发起数据共享请求的用户返回数据。

说明书全文

一种基于链的智能合约实现方法

技术领域

[0001] 本发明涉及区块链技术领域,具体涉及一种基于区块链的智能合约实现方法。

背景技术

[0002] 合约,指两方面或几方面在办理某事时,为了确定各自的权利和义务而订立的共同遵守的条文。
[0003] 传统合约是写在纸上的,签字盖章之后才会生效,合约的执行过程由很多控制协议构成,控制协议包括表格账单等记录的保存以及记录的审核与协商,记录的审核与协商通常需要第三方的参与,而合约的执行效能只能通过法律、武保证。
[0004] 随着信息技术的发展,通过计算机、互联网和密码理论等技术减少合约指定、控制及执行的成本逐渐成为一种新的发展趋势。1997年,Nick Szabo引入“智能合约”的概念:智能合约把合约条款嵌入到软、硬件中,通过协议与用户接口来促进合约的执行,它是我们在互联网中形成安全、数字化关系的关键。也就是说,在计算机界里,合约是通过代码的形式实现的。数字化的合约,存在着是否有效、容易被否认、可能会被篡改及被黑客攻击的险,因此数字化的合约始终可信度不高。

发明内容

[0005] 针对上述现有技术,本发明目的在于提供一种基于区块链的智能合约实现方法。
[0006] 为达到上述目的,本发明采用的技术方案如下:
[0007] 一种基于区块链的智能合约执行方法,包括以下步骤:
[0008] 步骤1、对于两个及两个以上有数据共享需求的用户,根据每个用户自身需要制定一份合约,合约用于明确各方的权利和义务,并通过编程语言获得电子化合约,由参与合约制定的各个用户对电子化合约进行数字签名,获得有效合约,签名用以保证合约的有效性,实现智能合约制定;
[0009] 步骤2、有效合约通过P2P的方式在区块链中扩散,区块链中参与该有效合约制定的各个节点都收到一份有效合约并保存在对应的区块中,对应的区块中除了包含本体信息之外,还包含有效合约记录及与有效合约记录对应的时间戳,实现智能合约在区块链网络中存入;
[0010] 步骤3、设置有效合约定期检查自动机状态,逐条遍历有效合约内包含的状态机、事务和触发条件,当事务满足触发条件,利用验证节点首先对事务进行签名验证,此处签名用于确保事务的有效性,当验证节点通过签名验证之后执行事务,实现智能合约自动执行。
[0011] 上述方法中,所述的步骤3,包括以下步骤:
[0012] 步骤3.1、由用户发起数据共享请求后产生相应的事务,并把用户的操作记录在对应的区块中;
[0013] 步骤3.2、检查有效合约状态机的执行状态,遍历有效合约找到该事务对应的触发条件;
[0014] 步骤3.3、当该事务满足触发条件时,通过验证节点对该事务进行签名认证;
[0015] 步骤3.3.1、当事务通过签名验证后,向数据库发起对应请求并返回用户所需要的数据,即该事务被系统成功执行并通知用户;
[0016] 步骤3.3.2、若该事务不能通过验证节点的验证,则用户发起的数据共享请求失败,即该事务执行失败,系统返回相应的状态并通知用户;
[0017] 步骤3.4、在执行过程中,由有效合约对事务实时监督是否出现违背合约操作,若出现违背合约操作,则中止事务的执行并将该状态返回给用户。
[0018] 上述方法中,所述的步骤1,还包括在制定合约前,有数据共享需求的用户在区块链中进行账户注册,注册后由对应账户接收区块链所分配的一对公钥和私钥。
[0019] 上述方法中,所述的步骤1,其中参与合约制定的各个用户都是通过各自账户的私钥对电子化合约进行签名,以确保合约的有效性。
[0020] 上述方法中,所述的步骤2,其中当有效合约通过P2P方式扩散到区块链中时,由区块链中的验证节点对有效合约进行验证,当一半以上验证节点通过验证并达成共识之后有效合约被存储到对应的区块中。
[0021] 一种基于区块链的智能合约系统,包括
[0022] 智能合约指定模块,接收由用户合约所转化的电子化合约;
[0023] 智能合约存入模块,接收智能合约指定模块所传输的有效合约;
[0024] 智能合约自动执行模块,遍历检查由智能合约存入模块存储于区块中的有效合约所包含的状态机、事务和触发条件且由检查结果选择地执行事务。
[0025] 上述方案中,所述的智能合约自动执行模块包括智能合约执行状态机、用于存储数据的数据库、用户发起数据共享请求和验证节点;所述的智能合约执行状态机,接收由用户发起数据共享请求生成的事务且遍历有效合约找出事务对应的触发条件;
[0026] 所述的验证节点,接收智能合约执行状态机所反馈的触发条件满足情况且由满足情况选择地对事务签名验证;
[0027] 所述的数据库,接收验证节点所签名验证事务的验证状态且由验证状态选择地对发起数据共享请求的用户返回数据。
[0028] 与现有技术相比,本发明的有益效果:
[0029] 基于区块链的智能合约系统给我们带来了一个去中心化的、不可篡改的、高可靠性的系统;
[0030] 不可篡改性,使得用户不用担心合约内容会被更改;
[0031] 高可靠性,使得用户不用担心系统在条件被满足时合约不会被执行;
[0032] 去中心化给用户带来全网备份,完备的记录完全可以支持事后审计;
[0033] 公正的规则与程序,用户不需要去相信签订合约的对方,只需要相信区块链系统能完成剩下的事就可以了。附图说明
[0034] 图1为本发明的总体架构示意图;
[0035] 图2为本发明实施例示意图。

具体实施方式

[0036] 本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
[0037] 下面结合附图对本发明做进一步说明:
[0038] 一种基于区块链的智能合约实现方法,该方法包括智能合约制定步骤、智能合约存入区块链网络步骤和智能合约自动执行步骤。
[0039] 所述智能合约制定步骤包括:
[0040] 两个及两个以上有数据共享需求的用户,根据自身需要制定一份合约,明确各方的权利和义务,并通过编程语言将其电子化,合约制定各方对其进行数字签名保证其有效性。
[0041] 所述智能合约存入区块链网络步骤包括:
[0042] 合约通过p2p的方式在区块链网中扩散,参与合约制定的各个节点都会收到一份并保存在对应的区块中。区块除了包含它原有的信息之外,还应该包含智能合约记录及其相应的时间戳。
[0043] 所述智能合约自动执行步骤包括:
[0044] 智能合约定期检查自动机状态,逐条遍历合约内包含的状态机、事务和触发条件。一旦事务满足触发条件,验证节点会首先对事务进行签名验证以确保事务的有效性,当验证节点通过验证之后事务将会被自动执行。
[0045] 在本发明中,有数据共享需求的用户都是区块链的注册账户,区块链会给对应账户返回一对公钥和私钥。
[0046] 在本发明中,合约制定者都是通过各自的私钥对电子化后的合约进行签名,以确保合约的有效性。
[0047] 在本发明中,智能合约通过p2p方式扩散到区块链网络中时,区块链中的验证节点会对它进行验证,当一半以上验证节点通过验证达成共识之后智能合约才会被存储到对应的区块中。
[0048] 在本发明中,智能合约执行模块包括智能合约执行状态机、存储数据的数据库(即区块)及用户发起的事件请求(即事务)及验证节点四个模块。具体执行步骤如下:
[0049] (1)用户A向系统发起数据共享请求,则产生1个相应的事务,并把用户A的操作记录在对应的区块中;
[0050] (2)系统检查智能合约状态机的执行状态,遍历合约找到该事务对应的触发条件;
[0051] (3)该事务满足触发条件时,系统会通过验证节点对该事务进行签名认证,确保事务的有效性;
[0052] (4)当事务通过验证后,系统就会向数据库发起对应请求并返回用户A所需要的数据,即该事务会被系统成功执行并通知用户A;
[0053] (5)若该事务不能通过验证节点的验证,则用户A发起的请求失败,即该事务执行失败,系统会返回相应的状态并通知用户A;
[0054] (6)事务在执行过程中也将一直受智能合约的监督,一旦执行过程出现违背合约的操作,事务将会中止执行并将该状态返回给用户A。
[0055] 实施例1
[0056] 参见图2,A用户和B用户之间有数据共享需求时,A用户和B用户首先共同制定一份智能合约,并通过变成将其电子化,双方在用自己的私钥进行签名后将智能合约存到A和B对应的区块中,并在相应区块记录对应的时间戳。当A用户向B用户共享一份数据时,这是1次“数据共享行为”作为一个事务传入区块链中,当该事务满足智能合约触发条件时,验证节点通过对该事务进行验证,验证通过后,该事务将会自动执行,否则,该事务会由于不满足验证条件不会被执行。例如:A用户和B用户制定的智能合约其中一条为:A用户向B用户共享的数据,B用户只有打开、编辑及指定时间范围内操作的权限。当该合约被存储在双方对应的区块后,B用户对A用户发起数据共享请求,当满足智能合约触发条件后,验证节点对其进行验证,一旦验证通过,B用户能够顺利操作A用户共享给它的数据,但这个操作将一直被智能合约所监督。B用户只能对A用户共享给他的数据进行打开、编辑并且在指定时间内操作。一旦超出对应时间范围,B用户对该数据的所有操作权限将被收回。若B用户对该数据进行合约之外的操作,如:复制,则B用户也将因违反智能合约而失去对该数据的操作权限。B用户对该数据所有的操作行为都将被记录在对应的区块之中。
[0057] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈