CN109933407B - 区块链dapp虚拟机、数据处理方法和计算设备 - Google Patents
区块链dapp虚拟机、数据处理方法和计算设备 Download PDFInfo
- Publication number
- CN109933407B CN109933407B CN201910143395.3A CN201910143395A CN109933407B CN 109933407 B CN109933407 B CN 109933407B CN 201910143395 A CN201910143395 A CN 201910143395A CN 109933407 B CN109933407 B CN 109933407B
- Authority
- CN
- China
- Prior art keywords
- dapp
- module
- engine
- code
- receiving
- 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.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种区块链DAPP虚拟机、数据处理方法和计算设备。其中,该虚拟机包括:控制模块,与区块链节点主机中的DAPP代码存储单元连接,用于接收DAPP的代码,基于DAPP的代码和用户配置生成引擎实例;引擎模块,与控制模块连接,用于接收引擎实例并执行引擎实例;桥接模块,分别与引擎模块和节点主机的API模块连接,用于接收引擎模块发送的访问请求并将访问请求发送给API模块,接收API模块返回的访问结果并发送给引擎模块。该方案能够使开发人员使用统一语言就DAPP进行开发,降低了技术人员对DAPP的开发门槛,该语言层面上的一致性能够使DAPP跨不同区块链平台解释并执行。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种区块链DAPP(DecentralizedApplication,去中心化应用)虚拟机、数据处理方法和计算设备。
背景技术
区块链是一个运行在P2P网络里用于解决信任问题的***。其通过去中心化,使数据脱离了所属者,保护了用户隐私,脱离了原有中心化服务依权威机构的信任机制。区块链通过利用一系列的技术,比如密码学和共识算法,通过创新应用,解决了在去中心化网络上的信任问题。目前,区块链的主流平台包括Ethereum和EOS。Ethereum目前广泛采用的是智能合约高级语言solidity。EOS采用的智能合约语言是Web Assembly(wasm)该语言通常采用C/C++编程实现。其中,Solidity是一种新的语言,对开发者有学***台之间兼容性差,在Ethereum上编写的合约是不能在EOS上运行,需重新编写,反之亦然。
随着区块链技术的发展,越来越多的功能开始在区块链的体系下开始发展,其中,DAPP就是建立在区块链体系上的应用,越多的技术人员投入到DAPP的开发中,从而实现更多的基于区块链的应用功能。由于区块链DAPP编程技术门槛高,并且各主流平台之间兼容性差,大大制约了DAPP的开发和普及,阻碍了基于DAPP的各种服务的推广。
发明内容
本申请的目的在于克服上述问题或者至少部分地解决或缓减解决上述问题。
根据本申请的第一个方面,提供了一种区块链DAPP虚拟机(Virtual Machine,VM),包括:
控制模块,与区块链节点主机(Host)中的DAPP代码存储单元连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例;
引擎模块,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例;
桥接模块,分别与所述引擎模块和所述节点主机的应用程序编程接口(Application Programming Interface,API)模块连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。
该方案能够降低DAPP的开发门槛,例如,仅采用统一的脚本语言如Javascript就可以实现开发,用该脚本语言开发的DAPP在语言层面上一致,该语言层面上的一致性能够使DAPP跨不同区块链平台解释并执行。该虚拟机能够通过内嵌引擎模块为DAPP提供解释和运行环境,使得DAPP运行环境与区块链节点运行环境隔离,既保证了区块链节点的安全,也降低了DAPP跨平台开发的难度。
可选地,所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块并行执行。
可选地,所述控制模块还用于:调用所述区块链节点主机中的DAPP代码的内部方法。
可选地,所述控制模块还用于:监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。
可选地,所述桥接模块还用于,在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。
根据本申请的第二个方面,提供了一种数据处理方法,基于区块链DAPP虚拟机,所述区块链DAPP虚拟机该包括:控制模块,与区块链节点主机中的DAPP代码存储单元连接;引擎模块,与所述控制模块连接;桥接模块,分别与所述引擎模块和所述节点主机的API模块连接;
该方法包括:
S100所述控制模块接收所述区块链节点主机中的DAPP代码存储单元发送的DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例;
S300所述引擎模块接收所述控制模块发送的所述引擎实例并执行所述引擎实例;
S500所述引擎模块响应于用户的访问请求,将所述访问请求发送给所述桥接模块;
S700所述桥接模块将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。
该方法能够使开发人员使用统一语言就DAPP进行开发,降低了技术人员对DAPP的开发门槛,该语言层面上的一致性能够使DAPP跨不同区块链平台解释并执行。
可选地,在S100中,所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块。
可选地,该方法还包括:所述控制模块监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。
可选地,在S700中,所述桥接模块在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。
根据本申请的第三个方面,提供了一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的区块链DAPP虚拟机,所述区块链DAPP虚拟机该包括:
控制模块,与区块链节点主机中的DAPP代码存储单元连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例;
引擎模块,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例;
桥接模块,分别与所述引擎模块和所述节点主机的API模块连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。
根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。后文将参照附图以示例性而非限制性的方式详细描述本申请的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解的是,这些附图未必是按比例绘制的。在附图中:
图1是根据本申请的一个实施例的区块链DAPP虚拟机的示意性框图;
图2是根据本申请的一个实施例的跨平台的区块链DAPP虚拟机的示意性框图;
图3是根据本申请的一个实施例的数据处理方法的示意性流程图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请的实施例提供了一种区块链DAPP虚拟机,以下简称虚拟机。图1是根据本申请的一个实施例的区块链DAPP虚拟机的示意性框图。该虚拟机100可以包括:控制模块110、引擎模块120和桥接模块130。
控制模块110,也可称为Ruff VM ctrl模块,该模块与区块链节点主机200中的DAPP代码存储单元210连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例。在一个可选实施方案中,DAPP为智能合约,区块链节点主机加载有该智能合约的原始代码,通过虚拟机的控制模块提供的接口,比如createScript接口,将该DAPP加载到虚拟机中。由于智能合约的原始代码体现的是业务逻辑,通过加载就能使虚拟机执行相应的业务逻辑。
引擎模块120,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例。可选地,该引擎模块可以是Javascript引擎模块。该引擎模块可以根据用户的配置,例如CPU大小、Memory大小等参数定制化实例一个Javascript引擎模块,并将DAPP的代码交由Javascript引擎模块执行。
桥接模块130,也可称为Ruff VM Bridge模块,该模块分别与所述引擎模块和所述节点主机的API模块220连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。出于安全考虑,DAPP不能直接操作区块链节点主机的资源。由于引擎模块本身不具备访问或操作区块链节点主机的能力,当DAPP需要实现某些功能,比如,发起一笔转账等时,引擎模块会生成一个访问请求,将该访问请求请求转到Ruff VM Bridge模块。
该方案能够降低DAPP的开发门槛,例如,仅采用统一的脚本语言如Javascript就可以实现开发,用该脚本语言开发的DAPP在语言层面上一致,该语言层面上的一致性能够使DAPP跨不同区块链平台解释并执行。该虚拟机能够通过内嵌引擎模块为DAPP提供解释和运行环境,使得DAPP运行环境与区块链节点运行环境隔离,既保证了区块链节点的安全,也降低了DAPP跨平台开发的难度。
采用本申请的方法,在区块链底层环境的基础上,抽取出一层统一抽象,也就是通用的DAPP API,例如,基本转账功能、基本键值对操作功能等,那么DAPP开发者在开发DAPP时,不需要直接面对具体的区块链平台环境,而是通过调用DAPP API就能获取数据或实现功能。基于该方案开发的DAPP就可以在集成了通用DAPP虚拟机并且提供了DAPP API的区块链节点主机上运行,而不用关心区块链的底层实现,从而实现DAPP的跨链运行。
可选地,所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块并行执行。
可选地,所述控制模块还用于:调用所述区块链节点主机中的DAPP代码的内部方法。在用户需要调用DAPP内部方法时,节点主机通过Ruff VM提供的接口调用DAPP的内部方法,比如setUserCode接口,此时需指定DAPP的方法名称和相关参数列表。在这种情况下,DAPP的开发者就能够采用通用语言调用利用DAPP的内部方法,而不用关注该区块链节点采用何种开发语言实现。
可选地,所述控制模块还用于:监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。可选地,该上限可以由用户指定。该方式可以限制DAPP对区块链节点资源的访问。节点通过配置DAPP虚拟机可以访问的节点资源,例如Memory、CPU time等,从而为DAPP提供可操作区块链的能力,比如,发起一笔转账、查询用户余额等。访问能力可以通过配置清单体现,配置清单可以采用在区块链上创建键值对(key,value)来实现。对于配置清单上的资源,DAPP是可以访问的,否则不能访问。
可选地,其特征在于,所述桥接模块还用于,在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。其中,API模块中包括API列表(Table)。在一个可选实施方案中,访问请求为转账请求。桥接模块所作的安全检查包括:确认待调用的API确实存在,并且参数正确。桥接模块调用节点主机提供的API模块,比如转账模块,并在调用完成后将执行结果返回给Javascript引擎模块的DAPP。DAPP可根据返回结果执行不同逻辑或选择终止DAPP的运行。
图2是根据本申请的一个实施例的跨平台的区块链DAPP虚拟机的示意性框图。下面结合图2对DAPP在不同区块链上运行的方式进行说明。首先在相应的区块链节点嵌入Ruff VM。其中,区块链节点可以包括多个不同平台的节点。例如,第一区块链节点210可以是Ethereum平台节点,其嵌入虚拟机211;第二区块链节点220可以是EOS平台节点,其嵌入虚拟机212。可以理解的是,还可以在更多平台节点嵌入虚拟机。Ruff VM能够访问区块链节点主机或是主机上的API列表。API列表中的内容与各个API功能模块相对应。开发者以Javascript语言开发DAPP,利用Ruff VM提供的区块链操作API,完成业务逻辑,具体底层的操作由内嵌Ruff VM区块链节点负责实现,比如转账(Transfer)、状态存储(DB store)等。基于该方式开发的DAPP就可以在不同的区块链平台上运行。Ruff VM可以采用插件或库的形式集成在区块链节点主机中,主机通过配置APITable,根据实际需要向Ruff VM提供DAPP可访问节点主机或链上其他节点的能力。
本申请的一个实施例还提供了一种数据处理方法,该方法基于区块链DAPP虚拟机,所述区块链DAPP虚拟机该包括:控制模块,与区块链节点主机中的DAPP代码存储单元连接;引擎模块,与所述控制模块连接;桥接模块,分别与所述引擎模块和所述节点主机的API模块连接。可以理解的是,该方法可以基于上述区块链DAPP虚拟机中的任一个。
图3是根据本申请的一个实施例的数据处理方法的示意性流程图。该数据处理方法可以包括以下步骤中的一个或多个:
S100所述控制模块接收所述区块链节点主机中的DAPP代码存储单元发送的DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例。
S300所述引擎模块接收所述控制模块发送的所述引擎实例并执行所述引擎实例。
S500所述引擎模块响应于用户的访问请求,将所述访问请求发送给所述桥接模块。
S700所述桥接模块将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。
该方法能够使开发人员使用统一语言就DAPP进行开发,降低了技术人员对DAPP的开发门槛,该语言层面上的一致性能够使DAPP跨不同区块链平台解释并执行。
可选地,在S100中,所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块。
可选地,该方法还包括:所述控制模块监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。
可选地,在S700中,所述桥接模块在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。
可选地,该方法还包括:通过控制模块调用所述区块链节点主机中的DAPP代码的内部方法。
本申请的实施例还提供了一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的区块链DAPP虚拟机,所述区块链DAPP虚拟机可以是如上所述的虚拟机中的任一个。例如,在一个可选实施方案中,该虚拟机可以包括:
控制模块,与区块链节点主机中的DAPP代码存储单元连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成所述引擎实例;
引擎模块,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例;
桥接模块,分别与所述引擎模块和所述节点主机的API模块连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块。
本申请的实施例的一个方面还提供了一种计算机可读存储介质。该计算机可读存储介质包括用于程序代码的存储单元,该存储单元存储有如上所述的区块链DAPP虚拟机中的任一个,并且设置有用于执行根据本申请的数据处理方法的程序,该程序被处理器执行。
本申请实施例的一个方面还提供了一种包含指令的计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算设备执行时,导致所述计算设备执行如上所述的数据处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、获取其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (8)
1.一种区块链DAPP虚拟机,包括:
控制模块,与区块链节点主机中的DAPP代码存储单元连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成引擎实例;
引擎模块,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例;和
桥接模块,分别与所述引擎模块和所述节点主机的API模块连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块;
所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块并行执行。
2.根据权利要求1所述的区块链DAPP虚拟机,其特征在于,所述控制模块还用于:调用所述区块链节点主机中的DAPP代码的内部方法。
3.根据权利要求1所述的区块链DAPP虚拟机,其特征在于,所述控制模块还用于:监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。
4.根据权利要求1至3中的任一项所述的区块链DAPP虚拟机,其特征在于,所述桥接模块还用于,在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。
5.一种数据处理方法,基于区块链DAPP虚拟机,所述区块链DAPP虚拟机包括:控制模块,与区块链节点主机中的DAPP代码存储单元连接;引擎模块,与所述控制模块连接;以及桥接模块,分别与所述引擎模块和所述节点主机的API模块连接;
该方法包括:
S100所述控制模块接收所述区块链节点主机中的DAPP代码存储单元发送的DAPP的代码,基于所述DAPP的代码和用户配置生成引擎实例;
S300所述引擎模块接收所述控制模块发送的所述引擎实例并执行所述引擎实例;
S500所述引擎模块响应于用户的访问请求,将所述访问请求发送给所述桥接模块;和
S700所述桥接模块将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块;
所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块。
6.根据权利要求5所述的方法,其特征在于,该方法还包括:所述控制模块监控所述DAPP对资源的使用,在所使用的资源大于或等于上限的情况下,终止所述DAPP的运行。
7.根据权利要求5或6所述的方法,其特征在于,在S700中,所述桥接模块在接收所述引擎模块发送的访问请求后,对所述访问请求进行安全检查,在检查通过的情况下,将所述访问请求发送给所述API模块。
8.一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的区块链DAPP虚拟机,所述区块链DAPP虚拟机该包括:
控制模块,与区块链节点主机中的DAPP代码存储单元连接,用于接收DAPP的代码,基于所述DAPP的代码和用户配置生成引擎实例;
引擎模块,与所述控制模块连接,用于接收所述引擎实例并执行所述引擎实例;和
桥接模块,分别与所述引擎模块和所述节点主机的API模块连接,用于接收所述引擎模块发送的访问请求并将所述访问请求发送给所述API模块,接收所述API模块返回的访问结果并发送给所述引擎模块;
所述控制模块用于接收两个以上的DAPP的代码,对于每一个DAPP的代码,分别生成相应的引擎实例,将所有引擎实例发送给所述引擎模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910143395.3A CN109933407B (zh) | 2019-02-26 | 2019-02-26 | 区块链dapp虚拟机、数据处理方法和计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910143395.3A CN109933407B (zh) | 2019-02-26 | 2019-02-26 | 区块链dapp虚拟机、数据处理方法和计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109933407A CN109933407A (zh) | 2019-06-25 |
CN109933407B true CN109933407B (zh) | 2021-06-01 |
Family
ID=66985886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910143395.3A Active CN109933407B (zh) | 2019-02-26 | 2019-02-26 | 区块链dapp虚拟机、数据处理方法和计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109933407B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110780945B (zh) * | 2019-10-24 | 2023-09-08 | 杭州趣链科技有限公司 | 一种异构区块链可插拔的跨链桥接方法、设备和存储介质 |
CN111414159B (zh) * | 2020-03-16 | 2023-07-25 | 北京艾鸥科技有限公司 | 一种区块链虚拟机装置、虚拟机创建方法及交易方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526624A (zh) * | 2017-07-18 | 2017-12-29 | 杭州趣链科技有限公司 | 一种基于Java虚拟机的智能合约执行引擎 |
CN108765158A (zh) * | 2018-05-31 | 2018-11-06 | 杭州秘猿科技有限公司 | 一种基于区块链的智能合约引擎***及其合约执行方法 |
US10146792B1 (en) * | 2017-05-31 | 2018-12-04 | Symbiont.Io, Inc. | Systems and methods for implementing a programming model for smart contracts within a decentralized computer network |
CN109284197A (zh) * | 2018-10-25 | 2019-01-29 | 中思博安科技(北京)有限公司 | 基于智能合约的分布式应用平台及实现方法 |
-
2019
- 2019-02-26 CN CN201910143395.3A patent/CN109933407B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10146792B1 (en) * | 2017-05-31 | 2018-12-04 | Symbiont.Io, Inc. | Systems and methods for implementing a programming model for smart contracts within a decentralized computer network |
CN107526624A (zh) * | 2017-07-18 | 2017-12-29 | 杭州趣链科技有限公司 | 一种基于Java虚拟机的智能合约执行引擎 |
CN108765158A (zh) * | 2018-05-31 | 2018-11-06 | 杭州秘猿科技有限公司 | 一种基于区块链的智能合约引擎***及其合约执行方法 |
CN109284197A (zh) * | 2018-10-25 | 2019-01-29 | 中思博安科技(北京)有限公司 | 基于智能合约的分布式应用平台及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109933407A (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111726399B (zh) | Docker容器安全访问方法及装置 | |
US10397281B2 (en) | Method, system and server for self-healing of electronic apparatus | |
CN110442502B (zh) | 一种埋点的方法、装置、设备及存储介质 | |
EP2974137A1 (en) | Host device coupled to a mobile phone and method of operating the same | |
CN109753300B (zh) | 一种算法升级方法、计算任务发送方法及相关装置 | |
CN109885612B (zh) | 区块链智能合约的同步生效方法及装置 | |
CA3167549A1 (en) | Method and apparatus for authority control, computer device and storage medium | |
CN109933407B (zh) | 区块链dapp虚拟机、数据处理方法和计算设备 | |
CN114531477B (zh) | 功能组件的配置方法、装置、计算机设备和存储介质 | |
CN103514395A (zh) | 插件权限控制方法及*** | |
CN112882732A (zh) | 一种软件开发工具包sdk中功能代码的更新方法和装置 | |
CN111831365A (zh) | 接口路由转发方法、***、计算机设备及可读存储介质 | |
CN109032685A (zh) | 一种加速安卓***启动的方法及终端 | |
CN108664343B (zh) | 一种微服务的有状态调用方法及装置 | |
CN105447384B (zh) | 一种反监控的方法、***及移动终端 | |
US20170235943A1 (en) | Application Access Control Method and Apparatus | |
CN113726855B (zh) | 服务聚合方法、装置、电子设备以及计算机可读存储介质 | |
CN115412552A (zh) | 一种用于区块链部署配置的方法及*** | |
CN112241276B (zh) | 一种设备的升级方法及装置 | |
CN114489754A (zh) | 可配置服务管理方法及装置 | |
CN111324368B (zh) | 一种数据共享方法及服务器 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 | |
CN110765426A (zh) | 设备权限设置方法、装置、设备以及计算机存储介质 | |
CN111176864B (zh) | App服务数据调用方法及装置 | |
CN113886215A (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 |