The present invention relates to a method and system for constructing a variety of triggering mechanisms based on external data to execute an intelligent contract in a block chain, wherein the method includes first publishing an intelligent contract in a block chain network and waiting for the confirmation of all participants in the intelligent contract to be completed; and then the triggering component in the block chain network. According to the self-defined triggering mechanism in the intelligent contract, the external data is invoked, and after polling the external data to satisfy any triggering mechanism, the transaction broadcast information is issued to the distributed nodes of the whole network; finally, the distributed nodes of the whole network invoke and invoke the external data corresponding to the triggered intelligent contract respectively. Check. Using the method and system of constructing various triggering mechanisms based on external data in the invention to execute intelligent contracts in block chains, the invocation of external data by intelligent contracts on block chains can be realized, and the triggering basis for corresponding intelligent contracts can be used to ensure that the intelligent contracts can be independent once triggered. And complete execution, so as to extend the support of intelligent contracts for complex application scenarios.
【技术实现步骤摘要】
基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统
本专利技术涉及区块链
,尤其涉及外部触发机制
,具体是指一种基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统。
技术介绍
智能合约(smartcontract)这个术语是在1995年由多产的跨领域法律学者尼克·萨博(NickSzabo)提出来的。他将智能合约定义为:一套以数字形式定义的承诺(promises),包括合约参与方可以在上面执行这些承诺的协议。但上述智能合约的定义一直没有得到完整的实现,主要的原因是缺少一种在执行过程中不受外界干扰,并且执行完成的结果能够不被篡改而有效保存的基础环境。这个情况在区块链技术发展的情况下得到改观,区块链通过密码学确定参与方,共识机制,以分布式网络为基础,以区块链的数据记录方式等技术手段满足了以上的条件。但目前区块链中的智能合约大都存在以下问题:1、只支持单一的触发方式不足以满足更多的应用场景的实现:当前的智能合约的触发机制都是以一笔向该合约地址转账的交易触发。而在实际应用中,存在大量的依赖于时间触发或者事件触发的应用场景,而这些应用在现有智能合约下实现是存在问题的。例如假如存在这样一种情况,从Alice和Bob在签订这个智能合约起,十天内如果上证指数超过3000点,那么智能合约完成Alice向Bob的支付,反之,智能合约将Alice保存在合约里的价值退回给Alice。如果Alice和Bob都确认这份智能合约即形成承诺,以Alice将约定的支付价值转入智能合约,交由合约存储保管开始,那么以现有的智能合约所具有的功能进行实现, ...
【技术保护点】
1.一种基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法,其特征在于,所述的方法包括以下步骤:(1)发布一智能合约于区块链网络中并等待至所述智能合约的所有参与方的确认完成后,所述智能合约将处于待触发状态,以等待触发机制满足时被装载和执行;(2)所述区块链网络中的触发组件根据所述智能合约中自定义的触发机制进行外部数据的调用,并在轮询到所述外部数据满足任一所述触发机制之后,向全网分布式节点发布交易广播信息,以触发所述全网分布式节点对所述智能合约的装载和执行;(3)全网分布式节点分别对已触发智能合约对应的外部数据进行调用和校验,以及通过全网分布式节点的共识验证机制确保外部数据的真实性和触发所述智能合约的有效性,并在所述的触发机制通过所述的共识验证机制后完成对所述已触发的智能合约的装载和执行。
【技术特征摘要】
1.一种基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法,其特征在于,所述的方法包括以下步骤:(1)发布一智能合约于区块链网络中并等待至所述智能合约的所有参与方的确认完成后,所述智能合约将处于待触发状态,以等待触发机制满足时被装载和执行;(2)所述区块链网络中的触发组件根据所述智能合约中自定义的触发机制进行外部数据的调用,并在轮询到所述外部数据满足任一所述触发机制之后,向全网分布式节点发布交易广播信息,以触发所述全网分布式节点对所述智能合约的装载和执行;(3)全网分布式节点分别对已触发智能合约对应的外部数据进行调用和校验,以及通过全网分布式节点的共识验证机制确保外部数据的真实性和触发所述智能合约的有效性,并在所述的触发机制通过所述的共识验证机制后完成对所述已触发的智能合约的装载和执行。2.根据权利要求1所述的基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法,其特征在于,所述的步骤(2)中,所述区块链网络中的触发组件根据所述智能合约中自定义的触发机制进行外部数据的调用具体为:所述的触发组件基于所述的全网分布式节点通过网络应用协议与外部数据源的API接口的连接关系,并根据所述智能合约中自定义的触发机制调用所述的外部数据。3.根据权利要求2所述的基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法,其特征在于,所述的步骤(2)中,所述的触发所述全网分布式节点对所述智能合约的装载和执行具体为:通过所述全网分布式节点中的一个节点确立所述外部数据和所述智能合约自定义的触发机制的满足关系,并向所述全网分布式节点发布交易广播信息,以完成所述全网分布式节点对所述智能合约的触发。4.根据权利要求3所述的基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法,其特征在于,所述的步骤(3)包括以下步骤:(3.1)所述的全网分布式节点中的一个节点执行已触发的智能合约,同时所述全网分布式节点中的其他节点根据所述的交易广播信息也执行所述已触发的智能合约,且执行所述已触发的智能合约...
【专利技术属性】
技术研发人员:钱德君,许国昌,蒋斌,吴建刚,何曌君,罗希,
申请(专利权)人:上海分赋信息科技有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。