一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统技术方案

技术编号:23161665 阅读:57 留言:0更新日期:2020-01-21 21:58
一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统,包括:区块链操作系统是以合约和区块链共识为核心的服务系统;服务节点通过选举获胜进入共识覆盖,共识节点因落选回到服务覆盖;从上至下分为4层:管理层、服务层、合约层和共识层;管理层提供服务管理、节点查询、信用管理、节点监控等;服务层派生通信覆盖,存储覆盖,认证覆盖等;在合约层,共识覆盖派生合约覆盖,提供C个同步时区、合约链共识、审计数据时区共识、节点候补和轮换,合约链巡视等;在共识层,共识覆盖派生矿工覆盖,提供N个同步时区、账本链时区共识、节点候补和轮换、共识选举等。本发明专利技术向APP提供审计数据链,实现区块链时区共识机制、服务节点的信用评估机制、共识候补和轮换机制等,常规化共识选举,区块链机制可持续发展。

A virtual coverage management consensus blockchain operating system based on nested containers

【技术实现步骤摘要】
一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统
本专利技术涉及了去中心化云技术和区块链技术,具体涉及一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统。
技术介绍
现有区块链方法一般只提供一个区块链,缺乏通用合约功能,有限的服务功能,服务如消息转发缺乏激励机制,服务功能缺乏信用评估机制,共识体系缺乏候补机制和轮换机制。
技术实现思路
有鉴于此,本专利技术致力于提供一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统。本专利技术的上述目的是通过如下的技术方案予以实现的:Linux容器(LXC)是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程、网络和其他资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。Docker是一个应用容器引擎,让开发者可以打包应用到一个可移植的容器中,然后发布到任何的Linux机器或虚拟机上,实现虚拟化。Docker采用C/S架构,Dockerdaemon作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器。Docker管理容器是一个特殊容器,负责管理其他用户容器。如果一个管理容器通过Docker和一个镜像产生一个用户容器,这个用户容器称为管理容器(基于这个镜像)派生的容器。智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约程序不只是一个可以自动执行的计算机程序:它自己就是一个系统参与者。它对接收到的信息进行回应,它可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。合约链是由共识后的合约组成的。如图2所示,区块上每个Merkle树根HASH附有一个签字时戳,这个时戳就是所有在Merkle树上合约的生产日期。一个合约只有它的生产日期在有效始期后,合约才可以超时执行。合约链的有效始期是根据当前有效始期后可执行合约在链上的稀疏程度或稀疏百分比(S%)动态改变的,其目的是增加可执行合约在新的有效始期后的密度,以便有效使用合约覆盖的CPU。改变后原来有效始期之后新的有效始期之前的可执行区块需要重新共识加入新的区块链。部署一个合约就是根据合约地址的哈希值送到相应合约节点,合约节点收到后,首先进行验证合约的有效性,然后初始化,共识到合约链。初始化是合约节点产生一个合约信箱,并打开和服务于一个网络端口,这个端口收到的协议信息会存放在合约信箱里,以便合约激活后从合约信箱中获取信息。合约变得终止不可执行后,这个合约信箱和网络端口将会关闭并释放。智能合约由服务端、客户端和对话组成。合约客户端是合约一方接受服务的,一般是甲方;合约服务端是合约一方提供服务的,一般是乙方。对话是一对合约服务端和客户端之间的交互,每一对话有一个状态机。对话链的第一个节点或者第一组节点是数字钱包,称为一线客户端,一线客户端是合约执行过程中动态发现的。其后每个节点是一个数字钱包,是下一个节点的客户端,又是前一个(或一组)节点的服务端。合约是否成交,也就是对话链是否成交,取决于一线某个或所有对话是否成交,和其后所有对话是否成交。数字钱包是一种可以进行个人电子交易的电子设备,主要存贮私钥和公钥。私钥是对一个数字币地址拥有取钱权限的代表。私钥可以算出公钥。每次交易的时候,付款方必须出具私钥,以及私钥产生的签名。公钥是和私钥成对出现的,公钥可以算出数字币地址,因此可以用作验证数字币地址。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain)是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。Merkle树是一种二叉树,由一个根节点、一组中间节点和一组叶节点组成。最下面的叶节点包含交易存储数据或其哈希值,每个中间节点是它的两个孩子节点内容的哈希值,根节点也是由它的两个子节点内容的哈希值组成。区块链共识对进入区块链的新区块和交易进行从Merkle树哈希计算到整个区块哈希计算进行验证,验证钱包对区块的数字签字,如果数字签字有效,而且两个节点产生的哈希值一样,这两个节点产生共识。BFT共识是指不需要要所有节点产生共识,只需要一定百分比(如75%)以上的节点产生共识。每个节点一旦获得所需要的共识百分比,就会把这个区块存入本节点的区块链中。P2P结构化覆盖是一组运行同一P2P算法的IP节点的集合;P2P资源分布于P2P覆盖以便共享,每一P2P资源通过一个哈希算法得到唯一的资源识别号;P2P节点号是用于标识P2P节点并用于P2P算法的标号,资源识别号和P2P节点号通过P2P算法组成P2P分布式哈希路由表(DHT);在任意P2P节点上使用一个资源识别号作为关键字去查询P2PDHT路由表,将得到一致的结果:某个特定的P2P节点保持这个资源。Chord是在一致性P2P哈希的基础上提供了优化的路由算法,每个节点维护少量的路由信息,通过这些路由信息,可以提高查询的效率。在Chord中,每个节点同样需要存储N个其他节点的信息,这些信息的集合被称为查询表(FingerTable)。一致性哈希中的节点同样具有这样的表格,但在Chord中,表格中的节点不再是直接相邻的节点,它们的间距(ID间隔)将成2i的关系排列(i表示表中的数组下标)。这样形成的节点之间路由关系实际上就是折半查找算法需要的排列关系。共识覆盖是一个P2P结构化覆盖,由一定高频率的CPU、信誉度高、稳定性强、具有相当内存、计算能力和存储能力的管理容器组成。共识覆盖派生并管理合约覆盖和矿工覆盖,提供机制轮换合约节点和矿工节点,等等。合约覆盖是一个P2P结构化覆盖,是共识覆盖内固定数量C(21或更大)的、经常性轮换的在线可以签字的共识节点基于合约镜像派生的容器组成,矿工覆盖由C个节点组成,每个节点叫做合约节点。合约覆盖提供C个同步时区,时区共识是指在合约覆盖内某个时区的共识;一个合约共识时区用于合约链共识,一个控制时区用于候补合约节点共识、实现合约节点轮换共识等等;其他时区每个用于一个合约群的审计数据链共识。矿工覆盖是一个P2P结构化覆盖,是共识覆盖内固定数量N(21或更大)的、经常性轮换的在线可以签字的共识节点基于矿工镜像派生的容器组成,矿工覆盖由N个节点组成,每个节点叫做矿工节点。矿工覆盖提供N个同步时区,交易时区共识是指在矿工覆盖内某个时区的共识;一个控制时区用于候补矿工节点共识、实现矿工节点轮换共识等等;其他时区每个用于账本链共识。为描述方便,合约覆盖和矿工覆盖统称为共识工作覆盖,合约节点和矿工节点统称为共识工作节点。每个共识节点有一个标本文档来自技高网...

【技术保护点】
1.一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统,其步骤包括:/n1.1设置区块链操作系统为以合约和区块链共识为核心的服务系统:建立服务覆盖用于服务,建立共识覆盖用于合约审计和通用共识;服务节点通过选举获胜进入共识覆盖,共识节点因选举落选退出共识回到服务覆盖;/n1.2将区块链操作系统从上至下分为4层:管理层、服务层、合约层、共识层;/n1.3服务管理层:服务覆盖由管理容器组成,实现服务节点的管理功能,提供分布式服务节点查询、资产管理、信用管理、派生覆盖的节点轮换;服务节点与派生的节点共享资源;/n1.4共识管理层:共识覆盖由管理容器组成,实现共识节点的管理功能,提供与共识相关的Merkle树查询,管理共识节点的信用记录,监控合约节点和矿工节点,提供节点候补和节点轮换等;共识节点与派生的矿工节点共享资源;/n1.5服务层:服务覆盖派生通信覆盖提供即时通信,派生存储覆盖提供以IPFS为基础的存储系统,派生认证覆盖提供OAuth 2.0,等等;/n1.6合约层:共识覆盖派生合约覆盖,提供区块链操作系统合约功能,提供C个同步时区,提供基于时区的合约共识和审计数据时区共识,提供控制时区共识和管理节点候补和节点轮换,提供合约激活和巡视等等;当合约覆盖时区的数量产生的每秒处理的审计数据量不能满足应用的要求,共识覆盖增加合约节点的数量,实现审计数据链从I到2I的FORK,这样每秒处理的审计数据量会增加一倍;/n1.7共识层:共识覆盖派生矿工覆盖,提供区块链操作系统交易共识功能,提供N个同步时区,提供基于时区的交易时区共识,提供控制时区共识和管理节点候补和节点轮换等等;当矿工覆盖时区的数量产生的每秒处理的交易量不能满足应用的要求,共识覆盖增加矿工节点的数量,实现账本链从K到2K的FORK,这样每秒处理的交易量会增加一倍。/n...

【技术特征摘要】
1.一种基于嵌套式容器的虚拟覆盖管理共识区块链操作系统,其步骤包括:
1.1设置区块链操作系统为以合约和区块链共识为核心的服务系统:建立服务覆盖用于服务,建立共识覆盖用于合约审计和通用共识;服务节点通过选举获胜进入共识覆盖,共识节点因选举落选退出共识回到服务覆盖;
1.2将区块链操作系统从上至下分为4层:管理层、服务层、合约层、共识层;
1.3服务管理层:服务覆盖由管理容器组成,实现服务节点的管理功能,提供分布式服务节点查询、资产管理、信用管理、派生覆盖的节点轮换;服务节点与派生的节点共享资源;
1.4共识管理层:共识覆盖由管理容器组成,实现共识节点的管理功能,提供与共识相关的Merkle树查询,管理共识节点的信用记录,监控合约节点和矿工节点,提供节点候补和节点轮换等;共识节点与派生的矿工节点共享资源;
1.5服务层:服务覆盖派生通信覆盖提供即时通信,派生存储覆盖提供以IPFS为基础的存储系统,派生认证覆盖提供OAuth2.0,等等;
1.6合约层:共识覆盖派生合约覆盖,提供区块链操作系统合约功能,提供C个同步时区,提供基于时区的合约共识和审计数据时区共识,提供控制时区共识和管理节点候补和节点轮换,提供合约激活和巡视等等;当合约覆盖时区的数量产生的每秒处理的审计数据量不能满足应用的要求,共识覆盖增加合约节点的数量,实现审计数据链从I到2I的FORK,这样每秒处理的审计数据量会增加一倍;
1.7共识层:共识覆盖派生矿工覆盖,提供区块链操作系统交易共识功能,提供N个同步时区,提供基于时区的交易时区共识,提供控制时区共识和管理节点候补和节点轮换等等;当矿工覆盖时区的数量产生的每秒处理的交易量不能满足应用的要求,共识覆盖增加矿工节点的数量,实现账本链从K到2K的FORK,这样每秒处理的交易量会增加一倍。


2.如权利要求1所述的方法,其特征在于,所述步骤c1之后进一步包括:
2.1服务覆盖由管理容器组成,管理派生的存储覆盖、通信覆盖、认证覆盖等等,派生的节点与管理容器共享存储和通信;
2.2服务覆盖同时提供多个同类覆盖,如多个通信覆盖、多个认证覆盖、多个存储覆盖,以竞争方式提高服务质量;
2.3提供DHT分布式服务节点查询;对每次查询,向所有同类覆盖同时进行查询,然后缓存查询结果;
2.4客户端钱包根据服务质量,签字确认保留缓存的其中一个服务节点剪裁其他节点;为对服务节点评分,这种通过钱包的签字的保留和剪裁在服务覆盖内以评分形式进行共识;
2.5每次服务节点完成一定的服务(转发消息的数据量,存储数据大小和时间,认证的次数等)后,获得客户端钱包的签字确认而得到奖励;为对服务节点评分,这种签字确认的服务量在服务覆盖内以评分形式进行共识;
2.6钱包和服务节点记录P2P协议消息的失败和服务失败(转发失败、存储失败、认证失败等等);当某个钱包或服务节点检测到问题节点失败指数到达临界点时,发起失败评估共识;只有参与与这个问题节点交互的节点和钱包参与共识,其他节点保持中立;共识后问题服务节点从服务覆盖隔离出去。


3.如权利要求1所述的方法,其特征在于,所述步骤d1之后进一步包括:
3.1共识覆盖由管理容器组成,实现共识节点的管理功能,提供与共识相关的Merkle树查询,管理共识节点的信用记录,监控合约节点和矿工节点、实现节点候补和轮换共识;共识节点与派生的矿工节点共享P2P网络、区块链阵列、Merkle树存储等等;
3.2每个共识节点通过某种时钟同步算法与整个共识覆盖实现同步;
3.3如果一个共识节点的目标值小于C,这个共识节点派生一个容器作为...

【专利技术属性】
技术研发人员:胡铸韬李云洲蒋明亮
申请(专利权)人:上海掌颐网络科技有限公司
类型:发明
国别省市:上海;31

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

1