区块链智能合约开发部署方法、装置、设备及存储介质制造方法及图纸

技术编号:33393621 阅读:11 留言:0更新日期:2022-05-11 23:12
本发明专利技术公开了一种区块链智能合约开发部署方法、装置、设备及存储介质,所述区块链智能合约开发部署方法包括:接收第一指令,从预设虚拟机库中提取所述第一指令中选择的虚拟机;接收第二指令,从预设合约语言库中提取所述第二指令中选择的合约语言;接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码,其中,代码是基于合约语言进行编程得到;将智能合约字节码在虚拟机上运行,得到智能合约;对智能合约进行测试,若测试成功,将智能合约部署在区块链网络上。本申请属于区块链技术领域,提供了一种可视化的区块链智能合约平台,支持多种虚拟机、多种合约语言的智能合约部署方式,开发人员无需切换多个部署平台,提高工作效率。高工作效率。高工作效率。

【技术实现步骤摘要】
区块链智能合约开发部署方法、装置、设备及存储介质


[0001]本专利技术涉及区块链
,尤其涉及一种区块链智能合约开发部署方法、装置、设备及存储介质。

技术介绍

[0002]区块链技术是分布式账本技术、共识算法、加密算法等计算机技术的新型应用模式。区块链技术的特点是去中心化、公开透明、不可篡改。而对于现代的区块链来说,智能合约的发展可谓区块链技术发展的一个里程碑,提供了更加强大的逻辑功能,可以满足各种领域的业务要求将区块链从最初单一数字货币应用,发展融入到了金融、政务服务、供应链、游戏等各个领域。
[0003]智能合约本身是可运行的程序,需要开发人员进行开发才能满足用户的需求。当前智能合约部署较多的区块链平台是比特币、以太坊和超级账本,以以太坊为例,用户需要通过solidity语言开发智能合约,然后编译成字节码并发布到区块链平台,在EVM(以太坊虚拟机)上运行。
[0004]目前智能合约的发展还处于早期阶段,相关的配套设施并不完善,用户需要学习较多的概念和知识,包含了包括分布式技术、共识算法、加密算法等在内的多领域技术,掌握众多工具才能进行智能合约的开发、部署、测试和运行,对开发人员的对区块链网络技术的掌握和编程能力的要求较高。现有智能合约的部署平台只支持单一虚拟机或单一智能合约语言,但每种虚拟机、每种合约语言均有各自适用场景和优势,现有技术中无法满足用户同时需要发布涉及不同虚拟机和不同智能合约语言的智能合约部署需求,开发人员在有部署不同虚拟机和不同智能合约语言的智能合约的需求时,需要使用不同部署平台,过程繁琐且工作效率低下。

技术实现思路

[0005]本专利技术的主要目的在于提供一种区块链智能合约开发部署方法、装置、设备及存储介质,旨在解决现有技术部署不同虚拟机和不同智能合约语言的智能合约时,需要使用不同部署平台,过程繁琐且工作效率低下的技术问题。
[0006]为实现以上目的,本申请提供一种区块链智能合约开发部署方法,所述区块链智能合约开发部署方法包括:
[0007]接收第一指令,从预设虚拟机库中提取所述第一指令中选择的虚拟机;
[0008]接收第二指令,从预设合约语言库中提取所述第二指令中选择的合约语言;
[0009]接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码,其中,所述代码是基于所述合约语言进行编程得到;
[0010]将所述智能合约字节码在所述虚拟机上运行,得到智能合约;
[0011]对所述智能合约进行测试,若测试成功,将所述智能合约部署在区块链网络上。
[0012]可选地,所述接收第一指令,读取所述第一指令中选择的虚拟机的步骤之前,所述
方法包括:
[0013]设置容器组;
[0014]将虚拟机集合中各个虚拟机部署到相应的容器组中,得到所述预设虚拟机库,其中,所述容器组部署了全部的编译工具链和所述编译工具链的全部版本。
[0015]可选地,所述接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码的步骤,包括:
[0016]接收代码,将所述代码发送至容器组;
[0017]基于所述虚拟机和所述编译工具链,对所述代码进行编译,得到智能合约字节码。
[0018]可选地,所述将所述智能合约字节码在所述虚拟机上运行,得到智能合约的步骤,包括:
[0019]基于所述虚拟机,将所述智能合约字节码解释成机器指令;
[0020]运行所述机器指令,得到所述智能合约。
[0021]可选地,其特征在于,所述将所述智能合约部署在区块链网络上的步骤,包括:
[0022]接收第三指令,从所述第三指令提取所述区块链网络;
[0023]配置所述区块链网络;
[0024]将所述智能合约部署在所述区块链网络上。
[0025]可选地,所述接收第一指令,读取所述第一指令中选择的虚拟机的步骤之前,所述方法包括:
[0026]获取需求信息;
[0027]基于预设需求分析模型对所述需求信息进行需求分析,得到需求建议;
[0028]将所述需求建议发送至用户端。
[0029]可选地,所述获取需求信息的步骤之前,所述方法包括:
[0030]获取训练数据集合,所述训练数据集合是具有预设标签的需求信息;
[0031]基于所述训练数据集合对待训练模型进行迭代训练,得到具有满足精度条件的所述需求分析模型模型。
[0032]本申请还提供一种区块链智能合约开发部署装置,所述区块链智能合约开发部署装置包括:
[0033]第一接收模块,用于接收第一指令,从预设虚拟机库中提取所述第一指令中选择的虚拟机;
[0034]第二接收模块,用于接收第二指令,从预设合约语言库中提取所述第二指令中选择的合约语言;
[0035]编译模块,用于接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码,其中,所述代码是基于所述合约语言进行编程得到;
[0036]运行模块,用于将所述智能合约字节码在所述虚拟机上运行,得到智能合约;
[0037]部署模块,用于对所述智能合约进行测试,若测试成功,将所述智能合约部署在区块链网络上。
[0038]本申请还提供一种区块链智能合约开发部署设备,所述区块链智能合约开发部署设备包括:存储器、处理器以及存储在存储器上的用于实现所述区块链智能合约开发部署方法的程序,
[0039]所述存储器用于存储实现区块链智能合约开发部署方法的程序;
[0040]所述处理器用于执行实现所述区块链智能合约开发部署方法的程序,以实现所述区块链智能合约开发部署方法的步骤。
[0041]本申请还提供一种存储介质,所述存储介质上存储有实现区块链智能合约开发部署方法的程序,所述实现区块链智能合约开发部署方法的程序被处理器执行以实现所述区块链智能合约开发部署方法的步骤。
[0042]本申请提供的一种区块链智能合约开发部署方法、装置、设备及存储介质,与现有智能合约的部署平台只支持单一虚拟机或单一智能合约语言,无法满足用户同时需要发布涉及不同虚拟机和不同智能合约语言的智能合约部署需求相比,在本申请中,接收第一指令,从预设虚拟机库中提取所述第一指令中选择的虚拟机;接收第二指令,从预设合约语言库中提取所述第二指令中选择的合约语言;接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码,其中,所述代码是基于所述合约语言进行编程得到;将所述智能合约字节码在所述虚拟机上运行,得到智能合约;所述智能合约进行测试,若测试成功,将所述智能合约部署在区块链网络上,即在本申请中用户可以从终端的多种虚拟机和多种合约语言中选择虚拟机和合约语言,发送代码,终端自动对智能合约进行运行和部署,降低开发人员的开发和部署智能合约的难度,提高工作效率。
附图说明
[0043]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链智能合约开发部署方法,其特征在于,所述区块链智能合约开发部署方法包括:接收第一指令,从预设虚拟机库中提取所述第一指令中选择的虚拟机;接收第二指令,从预设合约语言库中提取所述第二指令中选择的合约语言;接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码,其中,所述代码是基于所述合约语言进行编程得到;将所述智能合约字节码在所述虚拟机上运行,得到智能合约;对所述智能合约进行测试,若测试成功,将所述智能合约部署在区块链网络上。2.如权利要求1所述的区块链智能合约开发部署方法,其特征在于,所述接收第一指令,读取所述第一指令中选择的虚拟机的步骤之前,所述方法包括:设置容器组;将虚拟机集合中各个虚拟机部署到相应的容器组中,得到所述预设虚拟机库,其中,所述容器组部署了全部的编译工具链和所述编译工具链的全部版本。3.如权利要求2所述的区块链智能合约开发部署方法,其特征在于,所述接收代码,基于所述虚拟机,对所述代码进行编译,得到智能合约字节码的步骤,包括:接收代码,将所述代码发送至容器组;基于所述虚拟机和所述编译工具链,对所述代码进行编译,得到智能合约字节码。4.如权利要求1所述的区块链智能合约开发部署方法,其特征在于,所述将所述智能合约字节码在所述虚拟机上运行,得到智能合约的步骤,包括:基于所述虚拟机,将所述智能合约字节码解释成机器指令;运行所述机器指令,得到所述智能合约。5.如权利要求1所述的区块链智能合约开发部署方法,其特征在于,所述将所述智能合约部署在区块链网络上的步骤,包括:接收第三指令,从所述第三指令提取所述区块链网络;配置所述区块链网络;将所述智能合约部署在所述区块链网络上。6.如权利要求1所述的区块链智能合约开发部署方法,其特征在于,所述接收第一指令,读取所述第一指...

【专利技术属性】
技术研发人员:沈书航张骁
申请(专利权)人:上海众尖金融科技有限公司
类型:发明
国别省市:

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

1