区块链智能合约部署方法及装置制造方法及图纸

技术编号:27934327 阅读:56 留言:0更新日期:2021-04-02 14:14
本申请涉及一种区块链智能合约部署方法及装置,属于区块链技术领域,该方法包括:区块链服务平台接收合约配置请求后,向区块链网络标识对应目标区块链网络中的各个区块链节点下发目标智能合约的合约信息,以使区块链节点将合约信息存储至本地,合约信息至少包括镜像下载地址;区块链服务平台在接收合约部署请求后,向区块链节点发送安装运行指令,以使区块链节点基于本地所存储的镜像下载地址,从合约资源池获取得到目标合约镜像,并安装和运行目标合约镜像。本申请通过将智能合约的线下部署方式转换成线上部署,能够避免每个区块链节点独立编译合约镜像,防止智能合约被篡改,提升部署智能合约的效率和安全性。

【技术实现步骤摘要】
区块链智能合约部署方法及装置
本申请涉及区块链
,尤其涉及一种区块链智能合约部署方法及装置。
技术介绍
区块链具有去中心化、不可篡改、集体维护以及高可靠性等特点,这些特点为区块链创造信任奠定了基础,从而使得基于区块链的智能合约能够高效地运行。在一些区块链网络中,若要在目标组织中部署智能合约,则需要将智能合约的合约代码线下传递给目标组织的各个组织成员。例如fabric网络,智能合约在fabric的实现称之为链码,链码的安装和运行大致分为安装合约代码、编译合约镜像以及运行合约容器三个阶段。在fabric网络中每个组织的各个区块链节点在安装和运行智能合约都必不可少的需要经过这三个阶段,因此合约代码需要共享给所有的组织成员,并由组织成员各自安装。由此可见,合约代码存在线下传递的过程,并且每个区块链节点都需要独立编译合约镜像,智能合约的安装效率低;而且此种模式下,需要通过区块链网络中各组织成员的审计达成一致后方可发布,使得合约代码需要以开源的方式暴露给联盟链内的所有组织成员,除发布效率低外,智能合约在传输过程中也很容易被篡改,致使智能合约的本文档来自技高网...

【技术保护点】
1.一种区块链智能合约部署方法,其特征在于,所述方法包括:/n接收合约配置请求,所述合约配置请求携带区块链网络标识和目标智能合约的配置信息,所述配置信息至少包括镜像下载地址;/n基于所述区块链网络标识确定目标区块链网络;/n向所述目标区块链网络中的各个区块链节点下发所述目标智能合约的合约信息,以使所述区块链节点将所述目标智能合约的合约信息存储至本地,所述合约信息至少包括所述镜像下载地址;/n接收合约部署请求,所述合约部署请求用于指示将所述目标智能合约部署至所述目标区块链网络中的各个区块链节点;/n向所述各个区块链节点发送针对所述目标智能合约的安装运行指令,以使所述各个区块链节点基于本地所存储的...

【技术特征摘要】
1.一种区块链智能合约部署方法,其特征在于,所述方法包括:
接收合约配置请求,所述合约配置请求携带区块链网络标识和目标智能合约的配置信息,所述配置信息至少包括镜像下载地址;
基于所述区块链网络标识确定目标区块链网络;
向所述目标区块链网络中的各个区块链节点下发所述目标智能合约的合约信息,以使所述区块链节点将所述目标智能合约的合约信息存储至本地,所述合约信息至少包括所述镜像下载地址;
接收合约部署请求,所述合约部署请求用于指示将所述目标智能合约部署至所述目标区块链网络中的各个区块链节点;
向所述各个区块链节点发送针对所述目标智能合约的安装运行指令,以使所述各个区块链节点基于本地所存储的所述目标智能合约的镜像下载地址,从合约资源池获取所述目标智能合约对应的合约镜像,得到目标合约镜像,并安装和运行所述目标合约镜像;其中,所述目标智能合约对应的合约镜像是以二进制方式存储于所述合约资源池中的。


2.根据权利要求1所述的方法,其特征在于,所述合约配置请求还携带所述目标智能合约的用户信息;
在所述向所述目标区块链网络中的各个区块链节点下发所述目标智能合约的合约信息之前,所述方法还包括:
基于所述目标智能合约的用户信息进行用户认证,得到所述目标智能合约的用户认证结果;
相应的,所述合约信息还包括所述用户认证结果;
相应的,向所述各个区块链节点发送针对所述目标智能合约的安装运行指令,以使所述各个区块链节点基于本地所存储的所述目标智能合约的镜像下载地址,从合约资源池获取所述目标智能合约对应的合约镜像,得到目标合约镜像,包括:
向所述各个区块链节点发送针对所述目标智能合约的安装运行指令,以使所述各个区块链节点基于本地所存储的所述目标智能合约的镜像下载地址和用户认证结果,从所述合约资源池获取所述目标智能合约对应的合约镜像,得到目标合约镜像。


3.根据权利要求2所述的方法,其特征在于,所述用户信息包括用户账户信息和所述用户账户信息对应的用户私钥;
所述基于所述目标智能合约的用户信息进行用户认证,得到所述目标智能合约的用户认证结果,包括:
向所述合约资源池发送携带有所述用户账户信息的用户认证请求,以使所述合约资源池生成与所述用户账户信息对应的校验数据;
接收来自所述合约资源池的所述校验数据,使用所述用户账户信息对应的用户私钥对所述校验数据进行加密处理,得到加密数据;
将所述加密数据发送至所述合约资源池,以使所述合约资源池使用与所述用户账户信息对应的用户公钥对所述加密数据进行解密,得到解密数据,并将所述解密数据和所述校验数据进行对比,得到用户认证数据;
接收来自所述合约资源池的所述用户认证数据,基于所述用户认证数据得到所述目标智能合约的用户认证结果。


4.一种区块链智能合约部署方法,其特征在于,所述方法包括:
接收区块链服务平台下发的目标智能合约的合约信息,将所述目标智能合约的合约信息存储至本地,所述合约信息至少包括镜像下载地址;
接收针对所述目标智能合约的安装运行指令,基于本地所存储的所述目标智能合约的镜像下载地址,从合约资源池获取所述目标智能合约对应的合约镜像,得到目标合约镜像;其中,所述目标智能合约对应的合约镜像是以二进制方式存储于所述合约资源池中的;
安装和运行所述目标合约镜像。


5.根据权利要求4所述的方法,其特征在于,所述合约信息还包括用户认证结果;
相应的,所述接收针对所述目标智能合约的安装运行指令,基于本地所存储的所述目标智能合约的镜像下载地址,从合约资源池获取所述目标智能合约对应的合约镜像,得到目标合约镜像,包括:
接收针对所述目标智能合约的安装运行指令,基于本地所...

【专利技术属性】
技术研发人员:曾锦辉
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1