CN112532733A - 智能合约调用外部数据的方法、装置、存储介质及电子设备 - Google Patents
智能合约调用外部数据的方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112532733A CN112532733A CN202011401930.XA CN202011401930A CN112532733A CN 112532733 A CN112532733 A CN 112532733A CN 202011401930 A CN202011401930 A CN 202011401930A CN 112532733 A CN112532733 A CN 112532733A
- Authority
- CN
- China
- Prior art keywords
- data
- target service
- identified
- service
- external data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000009956 central mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 231100000279 safety data Toxicity 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1854—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及一种智能合约调用外部数据的方法、装置、存储介质及电子设备,该方法应用于区块链网络中的区块链节点,包括:通过目标业务参与节点的智能合约获取外部数据,将获取到的外部数据广播至目标业务的其它业务参与节点;在接收到目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所有外部数据,按照预设规则计算得到目标业务参与节点的待共识数据;将待共识数据广播至目标业务的其它业务参与节点;在接收到目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所有待共识数据中确定共识数据;将共识数据输入目标业务参与节点的智能合约以使智能合约执行相应的操作。如此可使各业务参与节点智能合约的输入数据一致。
Description
技术领域
本公开涉及区块链技术领域,具体地,涉及一种区块链智能合约调用外部数据的方法、装置、存储介质及电子设备。
背景技术
区块链技术也被称为分布式账本技术,它涵盖了点对点网络、共识机制、密码学、智能合约等计算机技术。区块链提供了一种在不可信竞争环境中进行信息传递的安全可信通道及可信协作模式。
其中,区块链智能合约是通过代码实现业务逻辑,经编译后部署运行在区块链网络节点上的协议,用于完成既定规则的条件触发和自动执行的操作,以及进行对应的账本数据操作。通过智能合约的执行实现了区块链从一个状态转变成另一个状态的目的。智能合约大多是图灵完备的,其执行逻辑是如果发生了A,那么就会执行B,也就是说智能合约的执行结果是确定的。智能合约可以自行验证与执行,它代表了区块链网络的可信赖性。智能合约执行结果的确定性依赖于智能合约内部数据源不存在随机性(或不一致性)。由于大多数的区块链应用由于智能合约只访问区块链内部数据并根据内部数据进行计算与共识,因此都能保证图灵完备与执行结果的确定性。
相关技术中,由于智能合约由区块链上的每个节点独立执行,所以如果智能合约直接调用外部数据,那么这个数据调用过程是由区块链上的各节点重复、独立完成的。在外部数据例如传感器数据可能是实时波动的情况下,由于网络延迟、节点处理速度不同等各种原因,区块链上各节点分别获取到的外部数据并不是同一时刻的同一数据。这使得输入各节点智能合约的外部数据不一致,从而导致各节点智能合约的输出结果也不一致,在这种情况下,若各节点无法达成共识,那么整个区块链网络的信任基础就会崩溃,导致整个区块链网络无法可信稳定运行。
发明内容
本公开的目的是提供一种区块链智能合约调用外部数据的方法、装置、存储介质及电子设备,以解决相关技术中存在的问题。
为了实现上述目的,本公开实施例的第一部分提供一种区块链智能合约调用外部数据的方法,所述方法应用于区块链网络中参与同一业务的区块链节点,所述方法包括:
通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点;
在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据;
将所述待共识数据广播至所述目标业务的其它业务参与节点;
在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据;
将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
可选地,所述将所述待共识数据广播至所述目标业务的其它业务参与节点,包括:
根据所述目标业务参与节点的私钥对所述目标业务参与节点计算得到的待共识数据进行签名,并将签名后的待共识数据广播至所述目标业务的其它业务参与节点;
所述从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,包括:
根据所述目标业务的每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和所述目标业务参与节点对应的待共识数据中确定所述共识数据。
可选地,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,包括:
在所述外部数据为数值类型的数据、所有所述外部数据的个数大于第二预设阈值、且所有所述外部数据的方差大于第三预设阈值的情况下,将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据为所述数值类型的数据、所有所述外部数据的个数大于所述第二预设阈值、且所有所述外部数据的方差小于或等于所述第三预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据为所述数值类型的数据、且所有所述外部数据的个数小于或等于所述第二预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据不为所述数值类型的数据的情况下,将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述方法还包括:
标记与所述共识数据不相同的所述待共识数据;
将计算得到该被标记的所述待共识数据的业务参与节点确定为非法业务参与节点。
本公开实施例的第二部分提供一种区块链智能合约调用外部数据的装置,所述装置应用于区块链网络中参与同一业务的区块链节点,包括:
第一执行模块,被配置为用于通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点;
计算模块,被配置为用于在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据;
广播模块,被配置为用于将所述待共识数据广播至所述目标业务的其它业务参与节点;
确定模块,被配置为用于在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据;
第二执行模块,被配置为用于将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
可选地,所述广播模块包括:
签名子模块,被配置为用于根据所述目标业务参与节点的私钥对所述目标业务参与节点计算得到的待共识数据进行签名,并将签名后的待共识数据广播至所述目标业务的其它业务参与节点;
所述确定模块包括:
验证子模块,被配置为用于根据所述目标业务的每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和所述目标业务参与节点对应的待共识数据中确定所述共识数据。
可选地,所述计算模块包括:
第一计算子模块,被配置为用于在所述外部数据为数值类型的数据、所有所述外部数据的个数大于第二预设阈值、且所有所述外部数据的方差大于第三预设阈值的情况下,将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块还包括:
第二计算子模块,被配置为用于在所述外部数据为所述数值类型的数据、所有所述外部数据的个数大于所述第二预设阈值、且所有所述外部数据的方差小于或等于所述第三预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块还包括:
第三计算子模块,被配置为用于在所述外部数据为所述数值类型的数据、且所有所述外部数据的个数小于或等于所述第二预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块还包括:
第四计算子模块,被配置为用于在所述外部数据不为所述数值类型的数据的情况下,将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述装置还包括:
标记模块,被配置为用于标记与所述共识数据不相同的所述待共识数据;
第三执行模块,被配置为用于将计算得到该被标记的所述待共识数据的业务参与节点确定为非法业务参与节点。
本公开实施例的第三部分提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述方法的步骤。
本公开实施例的第四部分提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面中任一项所述方法的步骤。
采用上述技术方案,至少能够达到如下技术效果:
区块链网络中的每一业务参与节点均通过智能合约获取外部数据,并且每一业务参与节点均将获取到的外部数据广播至其它业务参与节点,如此使得每一业务参与节点有所有业务参与节点获取到的外部数据。每一业务参与节点根据所有业务参与节点获取到的外部数据计算出该业务参与节点的待共识数据,并且每一业务参与节点均将计算出的待共识数据广播至其它业务参与节点,如此,使得每一业务参与节点有所有业务参与节点分别计算得到的待共识数据。每一业务参与节点将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据输入该业务参与节点的智能合约,以使智能合约执行相应的操作。采用这种方法,使得各业务参与节点的智能合约的输入数据一致,进而可以使得各业务参与节点达到相同的状态,即使得各业务参与节点达成共识,保障整个区块链网络稳定运行。
并且,将第一预设阈值设置为可能被非法篡改的业务参与节点的占比上限值的情况下,将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据的方式,能够将该共识数据是非法数据的概率降到最低,因而这种从多个待共识数据中确定共识数据的方式,能够保障该共识数据为各业务参与节点所共识的有效的安全数据,进而保障整个区块链网络安全运行。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据本公开一示例性实施例示出的一种区块链智能合约调用外部数据的方法的流程图。
图2是根据本公开一示例性实施例示出的一种确定目标业务参与节点对应的待共识数据的方法的流程图。
图3是根据本公开一示例性实施例示出的一种区块链智能合约调用外部数据的装置的框图。
图4是根据本公开一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
相关技术中,为克服区块链智能合约直接调用外部数据时存在的输入各节点智能合约的外部数据不一致的问题,通常采用以下方式:
不通过智能合约发出外部数据获取指令,而通过一个被信任的中心机构获取外部数据,该中心机构将获取到的外部数据同步至区块链的各个节点,从而保证各节点的数据完全一致。
但是,当中心机构被非法篡改时,会导致被篡改的非法数据经智能合约传输到区块链网络中,威胁整个区块链网络的可信任性。
有鉴于此,本公开实施例提供一种区块链智能合约调用外部数据的方法、装置、存储介质及电子设备,以保障区块链网络的各业务参与节点的智能合约的输入数据一致,进而使得整个区块链网络安全稳定运行。
图1是根据本公开一示例性实施例示出的一种区块链智能合约调用外部数据的方法的流程图,该方法应用于区块链网络中参与同一业务的各区块链节点,如图1所示,该方法包括以下步骤:
S11、通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点。
其中,外部数据可以是动态变化的数据。例如,在按照农产品价格情况来支付投保人赔款的农产品价格险保单的应用场景下,区块链网络中的每一业务参与节点获取的外部数据为农产品价格。该农产品价格在期货交易场所是实时波动。再例如,在按照当前环境状态更新天气预报的应用场景下,区块链网络中的每一业务参与节点获取的外部数据为传感器数据。如温度传感器数据、湿度传感器数据、风度传感器数据等等。由于传感器监测的客观环境是动态变化的,因而传感器数据也是实时变化的。
值得说明的是,由于智能合约由区块链上的每个节点独立执行,因此,在本公开实施例中,每一业务参与节点通过智能合约获取到的外部数据均看做一条或一个数据。且容易理解的是,每一业务参与节点通过智能合约获取到的外部数据的数据类型相同。
另外应当说明的是,目标业务参与节点与目标业务的其它业务参与节点为参与同一业务(即目标业务)的区块链节点。目标业务参与节点为参与目标业务的任一区块链节点。可理解的,与目标业务参与节点对应的其它业务参与节点为该目标业务参与节点的背书节点。
S12、在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据。
具体地,目标业务参与节点在接收到目标业务的其它业务参与节点各自获取到的外部数据的情况下,该目标业务参与节点上有所有业务参与节点分别获取到的外部数据,即外部数据序列。进一步地,该目标业务参与节点基于所有业务参与节点获取到的外部数据,可以按照预设规则计算得到该目标业务参与节点对应的待共识数据。
S13、将所述待共识数据广播至所述目标业务的其它业务参与节点。
S14、在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据。
容易理解的是,区块链网络中的节点被非法篡改时,被非法篡改的节点数量不会超过整个区块链网络节点总数的一半。因而一种可能的实施方式,第一预设阈值可以为51%、50.5%等值。
具体地,在目标业务参与节点接收到目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,该目标业务参与节点将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据确定为共识数据。
示例地,假设目标业务的所有业务参与节点总数为10个,各业务参与节点为C0、C1、C2、C3、C4、C5、C6、C7、C8、C9,依次对应的待共识数据序列为:4、5、5、8、9、9、9、9、9、9。那么待共识数据4的占比值为1/10,待共识数据5的占比值为2/10,待共识数据8的占比值为1/10,待共识数据9的占比值为6/10。其中占比值最大且该占比值大于第一预设阈值51%的占比值为6/10,占比值6/10对应的待共识数据为9,因此将待共识数据9确定为共识数据。
进一步地,共识数据9为C4、C5、C6、C7、C8、C9业务参与节点达成共识(共同认可)的数据。基于此可理解的是,每一种待共识数据的占比值表征了所有业务参与节点中对该种待共识数据达成共识的业务参与节点占比。
S15、将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
目标业务参与节点将确定的共识数据输入该目标业务参与节点的智能合约中,以使该目标业务参与节点的智能合约执行相应的操作。
由于本公开的上述技术方案应用于目标业务的每一业务参与节点,因而目标业务的每一业务参与节点均执行上述步骤S11至S15。如此,使得输入每一业务参与节点的智能合约的数据一致且为共识数据。在各业务参与节点的智能合约的输入数据一致的情况下,各业务参与节点的智能合约的输出结果具有确定性即各业务参与节点的智能合约的输出结果一致,如此区块链网络的智能合约能够正常运行。
采用这种方法,区块链网络中的每一业务参与节点均通过智能合约获取外部数据,并且每一业务参与节点均将获取到的外部数据广播至其它业务参与节点,如此使得每一业务参与节点有所有业务参与节点获取到的外部数据。每一业务参与节点根据所有业务参与节点获取到的外部数据计算出该业务参与节点的待共识数据,并且每一业务参与节点均将计算出的待共识数据广播至其它业务参与节点,如此,使得每一业务参与节点有所有业务参与节点分别计算得到的待共识数据。每一业务参与节点将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据输入该业务参与节点的智能合约,以使智能合约执行相应的操作。采用这种方法,使得各业务参与节点的智能合约的输入数据一致,进而可以使得各业务参与节点达到相同的状态,即使得各业务参与节点达成共识,保障整个区块链网络稳定运行。
并且,将第一预设阈值设置为可能被非法篡改的业务参与节点的占比上限值的情况下,将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据的方式,能够将该共识数据是非法数据的概率降到最低,因而这种从多个待共识数据中确定共识数据的方式,能够保障该共识数据为各业务参与节点所共识的有效的安全数据,进而保障整个区块链网络安全运行。
可选地,上述步骤S13所述将所述待共识数据广播至所述目标业务的其它业务参与节点,包括以下步骤:
根据所述目标业务参与节点的私钥对所述目标业务参与节点计算得到的待共识数据进行签名,并将签名后的待共识数据广播至所述目标业务的其它业务参与节点。
具体地,目标业务参与节点根据其本地私钥对其计算得到的待共识数据进行签名,并将签名后的待共识数据广播至目标业务的其它业务参与节点。如此,目标业务的其它业务参与节点接收到该被签名的待共识数据时,通过对该被签名的待共识数据进行签名验证,可以确定该待共识数据是否为目标业务参与节点认同的有效数据。应当理解的是,对被签名的待共识数据签名验证成功的情况下,表征了该被签名的待共识数据为有效数据。对被签名的待共识数据签名验证不成功的情况下,表征了该被签名的待共识数据为非法数据。
相适应地,上述步骤S14所述从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,包括以下步骤:
根据所述目标业务的每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和所述目标业务参与节点对应的待共识数据中确定所述共识数据。
具体地,目标业务参与节点根据每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和该目标业务参与节点对应的待共识数据中确定共识数据。
采用这种方式,能够避免在各业务参与节点广播其待共识数据的过程中,待共识数据被非法篡改造成的安全性问题。也能够避免在各业务参与节点接收其他业务参与节点广播的待共识数据的过程中,接收到非法入侵的数据导致的安全性问题。
可选地,上述步骤S12所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,包括以下步骤:
在所述外部数据为数值类型的数据、所有所述外部数据的个数大于第二预设阈值、且所有所述外部数据的方差大于第三预设阈值的情况下,将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
其中,第二预设阈值可以为7、8、9等具体的值。第三预设阈值可以为5、6、7等具体地值。对此本公开不做具体的限制。
示例地,在区块链网络中各业务参与节点的智能合约请求调用的外部数据为数值类型的数据、所有外部数据的个数大于7、且所有外部数据的方差大于5的情况下,将除所有外部数据中的最大值和最小值之外的其它外部数据的加权平均值作为目标业务参与节点对应的待共识数据。
其中,值得说明的是,所有外部数据的个数即为所有业务参与节点的总数。
所有外部数据的方差计算公式为:
目标业务参与节点对应的待共识数据的计算公式为:
D′={d1,…,di,…dn}-min(D)-max(D)。
其中,g表征目标业务参与节点对应的待共识数据,wi表征i业务参与节点的权重,m为除所有外部数据中的最大值和最小值之外的其它外部数据的个数,D′为除所有外部数据中的最大值和最小值之外的其它外部数据集合。
可选地,上述步骤S12所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还可以包括以下步骤:
在所述外部数据为所述数值类型的数据、所有所述外部数据的个数大于所述第二预设阈值、且所有所述外部数据的方差小于或等于所述第三预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
示例地,在区块链网络中各业务参与节点的智能合约请求调用的外部数据为数值类型的数据、所有外部数据的个数大于7、且所有外部数据的方差小于或等于5的情况下,将所有外部数据的加权平均值作为目标业务参与节点对应的待共识数据。
可选地,上述步骤S12所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还可以包括以下步骤:
在所述外部数据为所述数值类型的数据、且所有所述外部数据的个数小于或等于所述第二预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
示例地,在区块链网络中各业务参与节点的智能合约请求调用的外部数据为数值类型的数据、所有外部数据的个数小于或等于7的情况下,将所有外部数据的加权平均值作为目标业务参与节点对应的待共识数据。
可选地,上述步骤S12所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还可以包括以下步骤:
在所述外部数据不为所述数值类型的数据的情况下,将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为所述目标业务参与节点对应的所述待共识数据。
其中,第四预设阈值可以为51%或其他值。
具体地,在区块链网络中各业务参与节点的智能合约请求调用的外部数据不为数值类型的数据的情况下,例如外部数据为文本类型的数据的情况下,将所有外部数据中的数量占比值最大且该数量占比值大于51%的外部数据作为目标业务参与节点对应的待共识数据。
确定目标业务参与节点对应的待共识数据的一种可实现的实施方式,假设外部数据集合为D={d1,…,di,…dn},其中n表征所有外部数据的个数,也即目标业务的业务参与节点数量。首先计算每一个外部数据的哈希值hash(di),然后统计所有哈希值中相同哈希值的数量sum(hash(d′i)),确定各sum值中的最大值count,若最大值count/n大于51%,则确定该count对应的外部数据为目标业务参与节点对应的待共识数据。
可选地,上述任一种区块链智能合约调用外部数据的方法还可以包括以下步骤:
标记与所述共识数据不相同的所述待共识数据;将计算得到该被标记的所述待共识数据的业务参与节点确定为非法业务参与节点。
示例地,假设目标业务的所有业务参与节点总数为10个,各业务参与节点为C0、C1、C2、C3、C4、C5、C6、C7、C8、C9,各业务参与节点依次对应的待共识数据序列为:4、5、5、8、9、9、9、9、9、9。其中,待共识数据9为共识数据。那么标记与共识数据9不相同的待共识数据4、5、8。将计算得到该被标记的4、5、8的业务参与节点C0、C1、C2、C3确定为非法业务参与节点。进一步地,可以对非法业务参与节点C0、C1、C2、C3进行安全性检查。例如检查非法业务参与节点是否篡改数据。又例如检查非法业务参与节点是否篡改预设规则。
容易理解的是,由于每一业务参与节点上的外部数据序列相同,每一业业务参与节点根据相同的外部数据序列确定待共识数据的预设规则也相同,因此,采用本公开的上述任一种技术方案,各业务参与节点计算得到的待共识数据应当相同。若某一业务参与节点计算得到的待共识数据与其它业务参与节点计算得到的待共识数据不相同,则说明所有业务参与节点中存在恶意节点即非法节点。而通过上述方式,可以准确地确定非法业务参与节点。应说明的是,确定非法业务参与节点的前提是在所有业务参与节点中,非法业务参与节点的占比是少部分的。
图2是根据本公开一示例性实施例示出的一种确定目标业务参与节点对应的待共识数据的方法的流程图,如图2所示,包括以下步骤:
S21、判断各业务参与节点调用的外部数据是否为数值类型的数据;
若外部数据为数值类型的数据,则执行S23;若外部数据不为数值类型的数据,则执行S22。
S22、将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为目标业务参与节点对应的待共识数据;
S23、判断所有所述外部数据的个数是否大于第二预设阈值;
若所有外部数据的个数大于第二预设阈值,则执行S24;若所有外部数据的个数小于或等于第二预设阈值,则执行S26。
S24、判断所有所述外部数据的方差是否大于第三预设阈值;
若所有外部数据的方差大于第三预设阈值,则执行S25;若所有外部数据的方差小于或等于第三预设阈值,则执行S26。
S25、将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
S26、将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
关于上述实施例中的各个步骤的具体实施方式,已经在有关该方法的实施例中进行了详细描述,此处将不再赘述。
图3是根据本公开一示例性实施例示出的一种区块链智能合约调用外部数据的装置的框图,该装置应用于区块链网络中参与同一业务的区块链节点,如图3所示,该装置300包括:
第一执行模块310,被配置为用于通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点;
计算模块320,被配置为用于在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据;
广播模块330,被配置为用于将所述待共识数据广播至所述目标业务的其它业务参与节点;
确定模块340,被配置为用于在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据;
第二执行模块350,被配置为用于将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
采用这种装置,区块链网络中的每一业务参与节点均通过智能合约获取外部数据,并且每一业务参与节点均将获取到的外部数据广播至其它业务参与节点,如此使得每一业务参与节点有所有业务参与节点获取到的外部数据。每一业务参与节点根据所有业务参与节点获取到的外部数据计算出该业务参与节点的待共识数据,并且每一业务参与节点均将计算出的待共识数据广播至其它业务参与节点,如此,使得每一业务参与节点有所有业务参与节点分别计算得到的待共识数据。每一业务参与节点将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据输入该业务参与节点的智能合约,以使智能合约执行相应的操作。采用这种方法,使得各业务参与节点的智能合约的输入数据一致,进而可以使得各业务参与节点达到相同的状态,即使得各业务参与节点达成共识,保障整个区块链网络稳定运行。
并且,将第一预设阈值设置为可能被非法篡改的业务参与节点的占比上限值的情况下,将在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据作为共识数据的方式,能够将该共识数据是非法数据的概率降到最低,因而这种从多个待共识数据中确定共识数据的方式,能够保障该共识数据的安全性,进而保障整个区块链网络安全运行。
可选地,所述广播模块330包括:
签名子模块,被配置为用于根据所述目标业务参与节点的私钥对所述目标业务参与节点计算得到的待共识数据进行签名,并将签名后的待共识数据广播至所述目标业务的其它业务参与节点;
所述确定模块340包括:
验证子模块,被配置为用于根据所述目标业务的每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和所述目标业务参与节点对应的待共识数据中确定所述共识数据。
可选地,所述计算模块320包括:
第一计算子模块,被配置为用于在所述外部数据为数值类型的数据、所有所述外部数据的个数大于第二预设阈值、且所有所述外部数据的方差大于第三预设阈值的情况下,将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块320还包括:
第二计算子模块,被配置为用于在所述外部数据为所述数值类型的数据、所有所述外部数据的个数大于所述第二预设阈值、且所有所述外部数据的方差小于或等于所述第三预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块320还包括:
第三计算子模块,被配置为用于在所述外部数据为所述数值类型的数据、且所有所述外部数据的个数小于或等于所述第二预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述计算模块320还包括:
第四计算子模块,被配置为用于在所述外部数据不为所述数值类型的数据的情况下,将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为所述目标业务参与节点对应的所述待共识数据。
可选地,所述装置300还包括:
标记模块,被配置为用于标记与所述共识数据不相同的所述待共识数据;
第三执行模块,被配置为用于将计算得到该被标记的所述待共识数据的业务参与节点确定为非法业务参与节点。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据本公开一示例性实施例示出的一种电子设备700的框图。如图4所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的区块链智能合约调用外部数据的方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的区块链智能合约调用外部数据的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的区块链智能合约调用外部数据的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的区块链智能合约调用外部数据的方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的区块链智能合约调用外部数据的方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种区块链智能合约调用外部数据的方法,其特征在于,所述方法应用于区块链网络中参与同一业务的区块链节点,所述方法包括:
通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点;
在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据;
将所述待共识数据广播至所述目标业务的其它业务参与节点;
在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据;
将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
2.根据权利要求1所述的方法,其特征在于,所述将所述待共识数据广播至所述目标业务的其它业务参与节点,包括:
根据所述目标业务参与节点的私钥对所述目标业务参与节点计算得到的待共识数据进行签名,并将签名后的待共识数据广播至所述目标业务的其它业务参与节点;
所述从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,包括:
根据所述目标业务的每一其它业务参与节点的公钥分别对接收到的待共识数据进行签名验证,并从签名验证成功的待共识数据和所述目标业务参与节点对应的待共识数据中确定所述共识数据。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,包括:
在所述外部数据为数值类型的数据、所有所述外部数据的个数大于第二预设阈值、且所有所述外部数据的方差大于第三预设阈值的情况下,将除所有所述外部数据中的最大值和最小值之外的其它所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
4.根据权利要求3所述的方法,其特征在于,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据为所述数值类型的数据、所有所述外部数据的个数大于所述第二预设阈值、且所有所述外部数据的方差小于或等于所述第三预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
5.根据权利要求3所述的方法,其特征在于,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据为所述数值类型的数据、且所有所述外部数据的个数小于或等于所述第二预设阈值的情况下,将所有所述外部数据的加权平均值作为所述目标业务参与节点对应的所述待共识数据。
6.根据权利要求3所述的方法,其特征在于,所述基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据,还包括:
在所述外部数据不为所述数值类型的数据的情况下,将所有所述外部数据中的数量占比值最大且该数量占比值大于第四预设阈值的所述外部数据作为所述目标业务参与节点对应的所述待共识数据。
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
标记与所述共识数据不相同的所述待共识数据;
将计算得到该被标记的所述待共识数据的业务参与节点确定为非法业务参与节点。
8.一种区块链智能合约调用外部数据的装置,其特征在于,所述装置应用于区块链网络中参与同一业务的区块链节点,包括:
第一执行模块,被配置为用于通过目标业务参与节点的智能合约获取外部数据,并将获取到的所述外部数据广播至目标业务的其它业务参与节点,其中,所述目标业务参与节点为参与所述目标业务的任一区块链节点;
计算模块,被配置为用于在接收到所述目标业务的其它业务参与节点各自获取到的外部数据的情况下,基于所述目标业务的所有业务参与节点获取到的外部数据,按照预设规则计算得到所述目标业务参与节点对应的待共识数据;
广播模块,被配置为用于将所述待共识数据广播至所述目标业务的其它业务参与节点;
确定模块,被配置为用于在接收到所述目标业务的其它业务参与节点各自计算得到的待共识数据的情况下,从所述目标业务的所有业务参与节点计算得到的待共识数据中,确定共识数据,所述共识数据为在所有待共识数据中的占比值最大且该占比值大于第一预设阈值的待共识数据;
第二执行模块,被配置为用于将所述共识数据输入所述目标业务参与节点的智能合约,以使所述智能合约执行相应的操作。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011401930.XA CN112532733B (zh) | 2020-12-02 | 2020-12-02 | 智能合约调用外部数据的方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011401930.XA CN112532733B (zh) | 2020-12-02 | 2020-12-02 | 智能合约调用外部数据的方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112532733A true CN112532733A (zh) | 2021-03-19 |
CN112532733B CN112532733B (zh) | 2024-02-02 |
Family
ID=74997404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011401930.XA Active CN112532733B (zh) | 2020-12-02 | 2020-12-02 | 智能合约调用外部数据的方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112532733B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108305170A (zh) * | 2018-03-07 | 2018-07-20 | 物数(上海)信息科技有限公司 | 基于区块链的外部服务访问方法、系统、设备及存储介质 |
CN108510251A (zh) * | 2018-03-30 | 2018-09-07 | 上海分赋信息科技有限公司 | 基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统 |
US20180260909A1 (en) * | 2017-03-08 | 2018-09-13 | Alibaba Group Holding Limited | Handing requests in a consensus network |
WO2018219283A1 (zh) * | 2017-05-31 | 2018-12-06 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法及设备 |
CN109359978A (zh) * | 2018-10-08 | 2019-02-19 | 全链通有限公司 | 基于区块链网络的智能合约交易方法和系统 |
CN109525441A (zh) * | 2018-12-24 | 2019-03-26 | 浙江超脑时空科技有限公司 | 一种区块链网络链外数据上链方法和装置 |
WO2019120325A2 (en) * | 2019-03-29 | 2019-06-27 | Alibaba Group Holding Limited | Retrieving access data for blockchain networks using highly available trusted execution environments |
CN111008081A (zh) * | 2018-10-08 | 2020-04-14 | 上海派链信息科技有限公司 | 用于区块链系统的方法、装置和计算机存储介质 |
CN111953648A (zh) * | 2020-06-22 | 2020-11-17 | 北京欧链科技有限公司 | 基于区块链预言机的数据处理方法、装置及电子设备 |
-
2020
- 2020-12-02 CN CN202011401930.XA patent/CN112532733B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180260909A1 (en) * | 2017-03-08 | 2018-09-13 | Alibaba Group Holding Limited | Handing requests in a consensus network |
WO2018219283A1 (zh) * | 2017-05-31 | 2018-12-06 | 阿里巴巴集团控股有限公司 | 一种区块链共识方法及设备 |
CN108305170A (zh) * | 2018-03-07 | 2018-07-20 | 物数(上海)信息科技有限公司 | 基于区块链的外部服务访问方法、系统、设备及存储介质 |
CN108510251A (zh) * | 2018-03-30 | 2018-09-07 | 上海分赋信息科技有限公司 | 基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统 |
WO2019184151A1 (zh) * | 2018-03-30 | 2019-10-03 | 上海分赋信息科技有限公司 | 基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统 |
CN109359978A (zh) * | 2018-10-08 | 2019-02-19 | 全链通有限公司 | 基于区块链网络的智能合约交易方法和系统 |
CN111008081A (zh) * | 2018-10-08 | 2020-04-14 | 上海派链信息科技有限公司 | 用于区块链系统的方法、装置和计算机存储介质 |
CN109525441A (zh) * | 2018-12-24 | 2019-03-26 | 浙江超脑时空科技有限公司 | 一种区块链网络链外数据上链方法和装置 |
WO2019120325A2 (en) * | 2019-03-29 | 2019-06-27 | Alibaba Group Holding Limited | Retrieving access data for blockchain networks using highly available trusted execution environments |
CN111953648A (zh) * | 2020-06-22 | 2020-11-17 | 北京欧链科技有限公司 | 基于区块链预言机的数据处理方法、装置及电子设备 |
Non-Patent Citations (2)
Title |
---|
张亮;刘百祥;张如意;江斌鑫;刘一江;: "区块链技术综述", 计算机工程, no. 05 * |
翟社平;段宏宇;李兆兆;高山;李婧;: "区块链技术:应用及问题", 西安邮电大学学报, no. 01 * |
Also Published As
Publication number | Publication date |
---|---|
CN112532733B (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110113167B (zh) | 一种智能终端的信息保护方法、系统以及可读存储介质 | |
CN111343142B (zh) | 一种基于区块链网络的数据处理方法、装置及存储介质 | |
CN109144665B (zh) | 一种模拟器识别方法、识别设备及计算机可读介质 | |
US10073916B2 (en) | Method and system for facilitating terminal identifiers | |
CN111163182B (zh) | 基于区块链的设备注册方法、装置、电子设备和存储介质 | |
CN109062667B (zh) | 一种模拟器识别方法、识别设备及计算机可读介质 | |
EP4216077A1 (en) | Blockchain network-based method and apparatus for data processing, and computer device | |
CN109274692B (zh) | 一种识别区块链网络作恶节点的方法及装置 | |
EP3598333B1 (en) | Electronic device update management | |
CN109561085A (zh) | 一种基于设备识别码的身份验证方法、服务器及介质 | |
CN111338608B (zh) | 分布式应用开发方法、装置、节点设备及可读存储介质 | |
CN110400217B (zh) | 智能合约的规则变更处理方法及装置 | |
CN109634615B (zh) | 应用安装包的发布方法、验证方法和装置 | |
US11030280B2 (en) | Hardware based identities for software modules | |
US10958780B1 (en) | Decentralized automatic phone fraud risk management | |
CN110808839B (zh) | 一种区块链异常数据的处理方法、装置、设备和介质 | |
CN111310233A (zh) | 应用界面显示方法、装置、设备以及存储介质 | |
CN112714158A (zh) | 事务处理方法、中继网络、跨链网关、系统、介质和设备 | |
CN114338666A (zh) | 对Fabric区块链跨链交易的验证方法、装置、设备及介质 | |
CN110955905A (zh) | 基于区块链的资产转移方法、装置、设备及可读存储介质 | |
CN112532733A (zh) | 智能合约调用外部数据的方法、装置、存储介质及电子设备 | |
CN111953633A (zh) | 基于终端环境的访问控制方法及访问控制装置 | |
CN114567678A (zh) | 一种云安全服务的资源调用方法、装置及电子设备 | |
Witanto et al. | Blockchain-based OCF Firmware Update | |
CN117040929B (zh) | 一种访问处理方法、装置、设备、介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |