当前位置: 首页 > 专利查询>江峰专利>正文

一种生成区块发布机制的智能合约制造技术

技术编号:19549128 阅读:56 留言:0更新日期:2018-11-24 21:32
本发明专利技术公开了一种生成区块发布机制的智能合约,智能合约的制定方为区块链的m个认证中心。智能合约的参与方为智能合约根据智能合约条款选择的n个认证中心。m个认证中心制定智能合约,并将制定好的智能合约存储在基础数据库中。所述智能合约主要包括状态机、条款处理机制和数据保存机制。本发明专利技术生成的智能合约使区块链具有区块发布功能,保证了消息的有效性和不可篡改性。

An Intelligent Contract for Generating Block Publishing Mechanism

The invention discloses an intelligent contract for generating block publishing mechanism. The formulator of the intelligent contract is m authentication centers of block chain. The participants of the smart contract are n certification centers selected by the smart contract according to the terms of the smart contract. M certification centers make intelligent contracts and store them in the basic database. The intelligent contract mainly includes state machine, clause processing mechanism and data preservation mechanism. The intelligent contract generated by the invention enables the block chain to have the function of block publishing, and ensures the validity of the message and can not be tampered with.

【技术实现步骤摘要】
一种生成区块发布机制的智能合约
本专利技术涉及数据认证领域,具体是一种生成区块发布机制的智能合约。
技术介绍
随着移动通信技术的发展,特别移动互联网和物联网正向人们的生活领域渗透,出现了各种基于互联网的认证服务的需求。如商品真伪认证、交易信息、收藏品信息、虚拟账号信息、虚拟财产、个人/企业身份信息、征信信息、司法公正信息等。随着比特币及区块链技术的持续研究和应用推广,去中心化的分布式认证、共识机制和智能合约越来越被广泛关注,但区块链技术中赖以驱动和推广的挖矿机制和工作量证明机制在更广阔的非比特币类应用的联盟链和私有链应用中却难以引入,更难以直接引入的是大量的非比特币类应用的联盟链和私有链应用场景中均难以采用区块链的区块发布机制。现有技术中,需要搭建一个接入互联网的服务器,然后通过外部节点访问服务器,以查询上述信息。然而,通过黑客手段攻破系统服务器是难以避免的事情。黑客往往通过改写存储于服务器内的信息,达到非法目的。因此,现有的基于互联网的认证系统需要得到改进。
技术实现思路
本专利技术的目的是解决现有技术中存在的问题。为实现本专利技术目的而采用的技术方案是这样的,一种生成区块发布机制的智能合约,智能合约的制定方为区块链的m个认证中心。智能合约的参与方为根据智能合约条款选择出的n个认证中心。1≤n≤m。所述认证中心为服务器。m个认证中心权限相同。所述认证中心具有一个公钥和一个私钥。公钥为所述认证中心在区块链中的账户地址,私钥为操作所述认证中心的唯一钥匙。任意所述认证中心从基础数据库中读取数据。所述基础数据库主要存储基础认证数据和著录事件认证信息。所述基础认证数据由所述认证中心的认证需求提供。所述著录事件认证信息为所述著录事件认证信息系统根据所述认证需求对基础数据库的操作记录信息。所述基础数据库为与区块链进行数据交互的具有数据存储功能的服务器。m个认证中心制定智能合约,并将制定好的智能合约存储在基础数据库中。区块链中的智能合约自动执行。其中,智能合约主要包括以下条款:条款1:智能合约验证待加入区块链的服务器是否具有智能协议信息。若是,则所述服务器加入区块链,成为认证中心,若否,则拒绝所述服务器加入。智能合约条款1的制定步骤主要如下所示:1)m个认证中心共同商定了智能合约条款1,即在外网服务器加入区块链时,验证所述外网服务器是否包含验证协议信息。2)m个认证中心分别用各自私钥进行签名。以确保智能合约条款1的有效性。m个认证中心分别将签名后的智能合约条款1传到区块链中保存。条款2:智能合约以随机方式向任意认证中心发送n个区块发布指令,接收到所述区块发布指令的n个认证中心为区块发布节点,其余m-n个认证中心为非区块发布节点。m为有限正整数。n为单数。n≦m。智能合约条款2的制定步骤主要如下所示:1)m个认证中心共同商定了智能合约条款2,即智能合约以随机方式向任意认证中心发送n个区块发布指令,接收到所述区块发布指令的认证中心为n个区块发布节点,其余m-n个认证中心为非区块发布节点。2)m个认证中心分别用各自私钥进行签名。以确保智能合约条款2的有效性。m个认证中心分别将签名后的智能合约条款2传到区块链中保存。条款3:所述区块发布节点在区块链中广播区块数据,m个认证中心接收被广播的区块数据。m个认证中心根据多数原则对所述区块数据进行校验,校验成功后将区块数据添加到区块链中。智能合约条款3的制定步骤主要如下所示:1)m个认证中心共同商定了智能合约条款3,即所述区块发布节点在区块链中广播区块数据,m个认证中心接收被广播的区块数据。m个认证中心根据多数原则对所述区块数据进行校验,校验成功后将区块数据添加到区块链中。2)m个认证中心分别用各自私钥进行签名。以确保智能合约条款3的有效性。m个认证中心分别将签名后的智能合约条款3传到区块链中保存。所述智能合约主要包括状态机、条款处理机制和数据保存机制。所述状态机判断智能合约条款的触发条件是否满足。当所述触发条款满足时,所述条款处理机制执行所述智能合约条款。所述数据保存机制保存所述条款处理机制执行所述智能合约条款时产生的数据。所述区块发布节点的数量选择主要如下所示:1)区块发布节点的数量n由区块链系统指定。2)区块发布节点的数量n根据区块链中认证中心数量m的变化可以进行动态调整。3)m为有限正整数。n为单数。所述区块发布节点的选择方式如下:1)第一次生成智能合约由区块链系统根据规则指定第一个区块发布节点,然后按照一定步长选择下一个区块发布节点,直到选出n个区块发布节点。如在选出n个区块发布节点前选择到重复节点,步长自动加一或是减一。2)从第二次起生成智能合约时,从上一个智能合约签名结果中随机选择一位数据作为第一个区块发布节点的起始位置,再随机选择另一位数据经过运算后作为后续区块发布节点的选择步长,按该步长选择下一个区块发布节点,直到选出n个区块发布节点。如在选出n个区块发布节点前选择到重复节点,步长自动加一或是减一。每隔周期T,所述状态机判断一次智能合约条款的触发条件是否满足。若所述触发条件不满足,则将触发条件不满足的智能合约条款继续保存在区块链中。当所述触发条件满足,所述条款处理机制依次执行触发条件满足的智能合约条款。所述条款处理机制在执行触发条件满足的智能合约条款时,所述状态机判定智能合约条款是否执行完毕。若执行完毕,所述状态机将对应的智能合约状态标记为完成,并从最新的区块中移除该合约。若未执行完毕,所述状态机将对应的智能合约状态标记为进行中,并将对应的智能合约继续保存在最新的区块中,等待下一轮处理,直到处理完毕。智能合约的验证步骤主要如下:1)制定好的智能合约以P2P的方式在区块链中广播。每个认证中心将接收到的智能合约存储在基础数据库中。2)每隔周期T,认证中心将保存的合约打包成一个合约集合,并计算所述合约集合的哈希值。认证中心将所述哈希值广播在区块链中。任意认证中心接收所述哈希值,并将所述哈希值和基础数据库中的合约集合进行验证。认证中心在区块链中广播验证通过后的合约集合。3)在m个认证中心均在区块链中广播验证通过后的合约集合后,将验证通过的合约集合写入区块链中。所述验证方式主要是合约参与者的私钥签名是否与公钥匹配。本专利技术的技术效果是毋庸置疑的。本专利技术生成的智能合约使区块链具有区块发布功能,保证了消息的有效性和不可篡改性。附图说明图1为m个认证中心和外部网络示意图。具体实施方式下面结合实施例对本专利技术作进一步说明,但不应该理解为本专利技术上述主题范围仅限于下述实施例。在不脱离本专利技术上述技术思想的情况下,根据本领域普通技术知识和惯用手段,做出各种替换和变更,均应包括在本专利技术的保护范围内。实施例1:一种生成区块发布机制的智能合约,智能合约的制定方为区块链的m个认证中心。智能合约的参与方为智能合约根据智能合约条款选择出的n个认证中心。1≤n≤m。所述认证中心为服务器。m个认证中心权限相同。所述认证中心具有一个公钥和一个私钥。公钥为所述认证中心在区块链中的账户地址,私钥为操作所述认证中心的唯一钥匙。参见图1,一种生成区块发布机制的智能合约适用于区块链系统,该区块链系统中具有m个认证中心,每个认证中心都可以作为发布节点,向整个区块链系统发布信息。公共用户区为连接入区块链的外部网络,外部网络可以本文档来自技高网...

【技术保护点】
1.一种生成区块发布机制的智能合约,其特征在于:智能合约的制定和参与方为区块链的全部m个基于服务器级的认证中心;任意所述认证中心具有基础数据库;所述基础数据库为与所述多中心区块链系统进行数据交互的存储著录需求信息的基础数据库;m个认证中心制定智能合约,并将制定好的智能合约存储在每个认证中心的基础数据库中;区块链中的智能合约自动执行;其中,智能合约主要包括以下条款:条款1:智能合约验证待加入区块链的服务器是否具有智能协议信息;若是,则所述服务器加入区块链,成为认证中心,若否,则拒绝所述服务器加入;条款2:所述区块链系统在区块生成发布周期T开始时间,智能合约以随机方式抽取n个认证中心为区块发布中心;向所述n个认证中心发送区块发布指令,接收到所述区块发布指令的认证中心为区块发布节点,其余m‑n个认证中心为非区块发布节点;条款3:所述区块发布节点在周期T结束时,在区块链中广播生成的T周期的区块数据,所述区块链中全部m个认证中心接收被广播的区块数据;所述m个认证中心节点根据多数原则对所述接收到的区块数据进行校验,所述区块数据完全相同的最多区块数据达成共识后,确定为周期T的区块数据;所述确定为周期T的区块数据作为最新的区块,链接到原区块链的最后一个区块后面。...

【技术特征摘要】
2017.05.16 CN 2017103443838;2017.07.04 CN 201710531.一种生成区块发布机制的智能合约,其特征在于:智能合约的制定和参与方为区块链的全部m个基于服务器级的认证中心;任意所述认证中心具有基础数据库;所述基础数据库为与所述多中心区块链系统进行数据交互的存储著录需求信息的基础数据库;m个认证中心制定智能合约,并将制定好的智能合约存储在每个认证中心的基础数据库中;区块链中的智能合约自动执行;其中,智能合约主要包括以下条款:条款1:智能合约验证待加入区块链的服务器是否具有智能协议信息;若是,则所述服务器加入区块链,成为认证中心,若否,则拒绝所述服务器加入;条款2:所述区块链系统在区块生成发布周期T开始时间,智能合约以随机方式抽取n个认证中心为区块发布中心;向所述n个认证中心发送区块发布指令,接收到所述区块发布指令的认证中心为区块发布节点,其余m-n个认证中心为非区块发布节点;条款3:所述区块发布节点在周期T结束时,在区块链中广播生成的T周期的区块数据,所述区块链中全部m个认证中心接收被广播的区块数据;所述m个认证中心节点根据多数原则对所述接收到的区块数据进行校验,所述区块数据完全相同的最多区块数据达成共识后,确定为周期T的区块数据;所述确定为周期T的区块数据作为最新的区块,链接到原区块链的最后一个区块后面。2.根据权利要求1所述的一种生成区块发布机制的智能合约,其特征在于:所述认证中心为服务器;m个认证中心权限相同;所述认证中心具有一个公钥和一个私钥;公钥为所述认证中心在区块链中的账户地址,私钥为操作所述认证中心的唯一钥匙。3.根据权利要求1所述的一种生成区块发布机制的智能合约,其特征在于:所述智能合约主要包括状态机、条款处理机制和数据保存机制;所述状态机判断智能合约条款的触发条件是否满足;当所述触发条款满足时,所述条款处理机制执行所述智能合约条款;所述数据保存机制保存所述条款处理机制执行所述智能合约条款时产生的数据。4.根据权利要求1所述的一种生成区块发布机制的智能合约,其特征在于,智能合约条款1的制定步骤主要如下所示:1)m个认证中心共同商定了智能合约条款1,即在外网服务器加入区块链时,验证所述外网服务器是否包含验证协议信息;2)m个认证中心分别用各自私钥进行签名;以确保智能合约条款1的有效性;m个认证中心分别将签名后的智能合约条款1传到区块链中保存。5.根据权利要求1所述的一种生成区块发布机制的智能合约,其特征在于,智能合约条款2的制定步骤主要如下所示:1)m个认证中心共同商定了智能合约条款2,即智能合约以随机方式向任意n个认证中心发送区块发布指令,接收到所述区块发布指令的认证中心为区块发布节点,其余m-n个认证中心为非区块发布节点;2)m个认证中心分别用各自私钥进行签名;以确保智能合约条款2的有效性;m个认证中心分别将签名后的智能合约条款2传到区块链中保存。6.根据权利要求1所述的一种生成区块发布机制的智能合约,其...

【专利技术属性】
技术研发人员:江峰
申请(专利权)人:江峰
类型:发明
国别省市:四川,51

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

1