一种基于容器技术的区块链部署系统及部署方法技术方案

技术编号:32562724 阅读:37 留言:0更新日期:2022-03-09 16:47
本发明专利技术提供一种基于容器技术的区块链部署系统和方法,系统包括:主节点、远程的普通节点及区块链系统注册中心,主节点为远程的普通节点提供区块链容器内的软件,任何合规的区块链系统需要在区块链系统注册中心报备,区块链容器内的软件经过区块链系统注册中心到达主节点;系统的最外层为区块链容器,区块链容器相当于虚拟机,区块链容器内的软件在区块链容器里运行,区块链容器内包含软件及运行在软件上的智能合约。方法包括:建立区块链系统:主节点将包含区块链系统的区块链容器发送到多个普通节点,普通节点组成区块链系统;启动并运行区块链系统:普通节点运行区块链容器文件并自动部署区块链系统,区块链系统由主节点和多个普通节点构成。个普通节点构成。个普通节点构成。

【技术实现步骤摘要】
一种基于容器技术的区块链部署系统及部署方法


[0001]本专利技术属于区块链、智能合约以及容器(container)和安全通讯协议
,具体特别涉及一种基于容器技术的区块链部署系统及部署方法。

技术介绍

[0002]现有技术区块链的部署方法分为三类:(一)传统的区块链数据处理流程。
[0003]如图1所示为传统的区块链数据的处理流程。用户要使用区块链系统的存证以及记录功能,需要将用户数据经过网络传输到区块链系统中后,由区块链系统经过共识后存储,具有不可篡改性。但是这样的区块链系统一般是控制在大公司或者大机构里,对于用户数据来说风险较高,用户数据面临被窃取的风险;而且云平台的可靠性的需求低于区块链可靠性的需求,将区块链系统放在云平台上运行,可靠性不足。
[0004](二)发送软件而不发送数据目前有一种主流的技术方案,核心思想为“发送软件而不发送数据”,即不再由用户上传数据至中央服务器,而是由服务器将软件送至用户端,将处理之后的数据传送回中央服务器,这样原始数据一直在用户手里,那么用户的隐私以及原始数据都得到了保护。发送软件而不本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于容器技术的区块链部署系统,其特征在于包括:主节点、远程的普通节点以及区块链系统注册中心,所述主节点为所述远程的普通节点提供区块链容器内的软件,任何合规的区块链系统需要在所述区块链系统注册中心报备,所述区块链容器内的软件经过所述区块链系统注册中心到达所述主节点,所述区块链系统注册中心具有关联的软件测试中心以及软件提供商,用于开发以及测试所述区块链容器内的软件;所述系统的最外层为所述区块链容器,所述区块链容器相当于一个虚拟机,区块链容器内的软件在区块链容器里运行,所述区块链容器内包含所述软件以及运行在所述软件上的智能合约,其中,所述智能合约由外界提供会包含在所述区块链容器内,所述智能合约是可执行代码,在区块链系统内执行;当所述智能合约由外界提供时,对所述区块链系统进行哈希运算时,由外界提供的所述智能合约不包含在当前所述区块链系统内,否则无法执行防复制机制;这些外来的智能合约依靠一定的机制维持他们的不可更改性以及不能复制性;当所述智能合约包含在所述区块链容器内,即所述区块链容器里存储所述软件,所述软件中再放置一个包含所述智能合约的内含容器,从而使得所述智能合约适配不同的区块链系统。2.根据权利要求1所述的一种基于容器技术的区块链部署系统,其特征在于:所述内含容器具有多个,并且同时并行执行其中的多个所述智能合约,同时所述区块链系统配置投票机制,多个所述智能合约执行完毕后,通过所述投票机制对执行结果进行验证;所述主节点控制普通节点的数目,所述主节点允许讯问节点加入,所述讯问节点使得客户查询区块链系统的资料,但不能参与建块和投票,所述询问节点的部署方式和普通节点部署方式相同。3.一种根据权利要求1

2任一所述基于容器技术的区块链部署系统的区块链部署方法,其特征在于包括:步骤1,建立所述区块链系统:所述主节点将包含所述区块链系统的所述区块链容器发送到多个普通节点,所述普通节点组成所述区块链系统;步骤2,启动并运行区块链系统:所述普通节点运行所述区块链容器文件并自动部署所述区块链系统,所述区块链系统由主节点和多个普通节点共同构成。4.根据权利要求3所述的部署方法,其特征在于所述步骤1包括:步骤11,所述主节点生成区块链容器,然后将所述区块链容器内的软件进行一次哈希运算,将获得的第一哈希值附加在所述软件的文件头后生成所述区块链容器的第二哈希值;步骤12,将区块链容器以及主节点的数字证书从主节点传送到所述普通节点,所述普通节点收到所述主节点的数字证书以及所述区块链容器后向所述主节点上传每个普通节点的数字证书,用于每个普通节点的身份认证;步骤13,所述普通节点检验所述软件是否包含恶意代码,如果包含,所述普通节点拒绝所述区块链容器;如果不包含,继续步骤14;步骤14,所述普通节点在所述区块链容器内部测试所述软件,所述测试由主节点提供的包含所述软件内的测试软件执行;步骤15,所述普通节点通过签名验证进行身份验证,确保所述软件不能更改,由于在外地部署运行,必须在源头的主节点控制;
步骤16,所述普通节点收到所述区块链容器后进行两次校验,包括校验所述区块链容器以及所述软件是否被篡改过;如果校验没有通过,所述软件启动自动销毁。5.根据权利要求3所述的部署方法,其特征在于所述步骤2包括:步骤21,所述主节点确定所述普通节点的身份、数字签名和运行的服务器信息,例如MAC地址等信息;步骤22,所述主节点和每个所述普通节点确定所述普通节点是否参与新的区块链系统,如果参与,则参与的普通节点发送同意信息给所述主节点;步骤23,所述主节点收到所述同意信息后,将所述普通节点的公开信息发送给所述参与的普通节点;步骤24,所述普通节点收到所述公开信息后,开启初始机制,将所述主节点和所有所述普通节点的公开信息置于本地的所述软件内;步骤25,所述普通节点互相确认并验证每个普通节点的身份和数字签名;步骤26,由主节点启动第一次共识,所述第一次共识可以使用多种共识协议,共识协议的目的在于建立区块链系统内第一块信息,共识内容是所有参与节点包括主节点和普通节点的公开信息;步骤27,普通节点收到所述主节点启动第一次共识的信息后,回复所述共识协议,所述共识协议完成后,建立了所述区块链系统内的初始块;步骤28,重复步骤21

27,从而在所述初始块基础上建立其他区块,从而完成所述区块链系统的启动和运行。6.根据权利要求3所述的部署方法,其特征在于所述方法还包括在所述区块链系统上存储数据,其中:(1)数据存储地点:区块链系统产生的数据存在:和区块链系统同一区块...

【专利技术属性】
技术研发人员:蔡维德
申请(专利权)人:天民青岛国际沙盒研究院有限公司
类型:发明
国别省市:

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

1