一种决策证明型区块链算法及其物理架构的制作方法

文档序号:15272706发布日期:2018-08-28 22:37阅读:119来源:国知局

本发明涉及区块链算法技术领域,具体涉及一种决策证明型区块链算法及其物理架构。



背景技术:

随着互联网的发展,区块链技术作为去中心化、公开透明的典范。具体地,区块链技术是去中心、分布式结构的数据存储、传输和证明的方法。任何人都可以对这个公共账本进行核查,但不存在一个单一的用户可以对它进行控制。在区块链系统中的参与者们,会共同维持账本的更新,它只能按照严格的规则和共识来进行修改。在自动控制管理上进行区块链的设计主要有三类问题,第一类是核心区块链协议的开发,比如网络层(点对点通信)或者共识层(对现有区块链状况的分布式共识)。第二类是智能合约开发,比如特定需求下的电能分配。第三类是开发者搭建与区块链互动的应用,通常用流行的网页开发语言来搭建应用程序,这些应用程序再通过api与区块链互动。区块链作为比特币的底层算法,目前存在的问题有确认时间长、容量有限、交易费用较高,如果用于工业控制,这些问题可以通过控制算法来缓解。

目前区块链主要应用在商业领域,用在控制领域时会面临以下问题:数据会更加庞大,数据分类复杂,数据之间的逻辑关系复杂等。传统的区块链技术是以链的方式来组织数据的,这种方式的区块链容量过小、区块链的增量数据过小,数据之间逻辑关系简单,权力功能区分不明确,所以难以满足实时控制的需求。

业界广泛使用的共识机制是pow(proofofwork,工作量证明)算法(包含其扩展算法pos算法和dpos算法)、pbft(practicalbyzantinefaulttolerance,实用拜占庭容错)算法、paxos算法和raft算法。

pow算法的缺点在于需要全网共同参与,浪费大量算力和电力。pos算法的缺点在于共识机制和pow相同,只是稍有改进。dpos算法选取了代理人,其合规监管、性能、资源和容错都和pos类似。paxos算法基于选举领导的共识机制,选举过程中不允许有恶意节点,不具备容错性。pbft算法与paxos算法类似,采用许可投票、少数服从多数,允许拜占庭容错,容错性33%。raft算法是paxos算法的简化,基于联盟链,选举共识节点未参考节点的区块高度,由一个共识节点持续记账,容错性较差,不能实现节点的动态加入退出。



技术实现要素:

本发明的目的在于提供一种决策证明型区块链算法及其物理架构,用以解决目前区块链应用在控制领域时面临的数据庞大、数据分类复杂、数据之间的逻辑关系复杂等问题。

为实现上述目的,本发明提供了一种决策证明型区块链算法,所述算法包括:应用级服务器制定智能合约;特定逻辑级服务器根据管辖的管理级服务器汇报的数据挂单决议需求,该特定逻辑级服务器作为区块链的决议领导者;由通用数据存储服务器作为第三方数据库对挂单的数据进行验证与归档;挂单数据验证未被篡改后,除特定逻辑级服务器外的逻辑级服务器或者指定的逻辑级服务器基于挂单给出的数据依照应用级服务器制定的智能合约进行运算、表决并形成决议;向区块链公布运算表决决议结果;及决议被否决则作为领导者的特定逻辑级服务器自行分析否决原因并自行修改提案,决议被通过则交由各自管辖的管理级服务器按照决议进行控制执行;其中,所述区块链采用共识机制确保逻辑级服务器公正执行智能合约。

进一步地,由区块链控制的所述逻辑级服务器的表决策略包括分布与集中,所述分布是指区块链上的除特定逻辑级服务器外的所有逻辑级服务器共同记录共同表决,所述集中是指谁发起谁主导,而发起决议是由单个逻辑级服务器管理的下属管理级服务器汇报的数据来决定,特定逻辑级服务器代表特定的管理级服务器。

进一步地,所述通用数据存储服务器对挂单的数据进行验证时,挂单的数据验证被篡改则驳回,不会被记录在区块链中,挂单的数据验证未被篡改则被记录在区块链分支。

进一步地,所述区块链采用多链并行的形式,并非一维链而是一条基于时间为主干形成的多叉树状的多维链;所述区块链上记录的每一次决议并非完成决议就不再管理,而是由该决议引申出的所有后续决议都会链接在该决议的下方,每次决议的领导者为当前决议的发起人而非父节点的发起人;所述区块链为面向对象的区域链,每一个决议的模版是一个类,每个决议是一个对象。

进一步地,指定所述逻辑级服务器进行表决时,随机分配一个空余服务器作为监管。

进一步地,所述决议结果分为四种:同意、反对、弃权以及一票否决,对于不同安全等级的决议有不同的票数要求。

进一步地,所述逻辑级服务器在表决过程中,还通过定时系统定时随机指定某一逻辑级服务器作为验证服务器,发布一条仅用于验证的决议,测试除验证服务器外的逻辑级服务器是否正常判断。

进一步地,所述算法还包括智能合约采纳算法,所述智能合约采纳算法包括:逻辑级服务器在进行表决时,如果出现无法依据现有的智能合约得出决议的情况,将问题上报给应用级服务器设计新的智能合约;如果管理级服务器发现命令无法执行时,将问题上报给逻辑级服务器进行重新表决,如果逻辑级服务器重新表决后无法解决问题或逻辑级服务器无响应,则越级上报给应用级服务器修改智能合约或者创立新的智能合约,如果应用级服务器无响应,则进入自律状态,从而确保控制系统的安全。

本发明还公开了一种决策证明型区块链算法的物理架构,所述物理架构包括:应用级,包括用于实现人工智能的若干应用级服务器及用于连接人机交互界面的若干人工交互接口;逻辑级,包括若干逻辑级服务器和通用数据存储服务器;管理级,包括若干管理级服务器;其中,应用级服务器用于制定智能合约,区块链采用共识机制确保逻辑级服务器公正执行智能合约,通用数据存储服务器作为第三方数据库用于验证数据正确性并归档,管理级服务器用于执行逻辑级服务器的命令;逻辑级服务器数量由参与控制的服务器数量决定,确保每个相关方有至少一台逻辑级服务器以确保合约公正;应用级服务器加工后的数据通过人机交互界面面向用户,用户操作人机交互界面来控制应用级服务器,应用级服务器把控制命令分解成逻辑级服务器能够解析的命令作为应用级服务器存储的数据并发送给逻辑级服务器进行控制,逻辑级服务器加工后的数据是面向逻辑级服务器的,逻辑级服务器根据逻辑级服务器加工后的数据作出响应,逻辑级服务器把接收到的控制命令分解成管理级服务器能够解析的命令作为逻辑级服务器存储的数据并发送给管理级服务器进行控制,管理级服务器加工后的数据是面向管理级服务器的,管理级服务器根据管理级服务器加工后的数据作出响应,管理级服务器把接收到的控制命令分解成基础控制单元能够解析的命令作为管理级服务器存储的数据并发送给基础控制单元进行控制,通用数据存储服务器中存储逻辑级服务器、管理级服务器和基础控制单元的所有原始数据并具有用于确保数据不可更改的验证算法。

进一步地,所述物理架构在软件上包含两套控制程序系统:用于真实控制的真实控制系统和用于模拟仿真控制的模拟仿真控制系统;在模拟仿真控制中,进行逻辑判断的智能合约由应用级服务器进行更新;所有的智能合约应先进过仿真,再经过小规模实际运行,最后变成逻辑级共识的智能合约。

本发明具有如下优点:

本发明提出了一种决策证明型区块链算法及其物理架构,旨在提高控制速度,明确控制逻辑与架构,在公平、公正、准确的前提下实现自动控制与相关的商业结算。相比于raft算法,本算法优化了领导选择机制以适应本发明设计的多维度数据块,提出了新的判断方式用于决策,采用决策判断来实现容错,节点可以动态加入退出,三级架构确保控制稳定。本发明符合分布式控制的需求,采用并行的面向对象的链来加快决议速度,大量冗余算力不再用于验证而是用于模拟实际网络情况,避免电能和算力的浪费;明确了智能合约的制定、判断、履行三权分立,同时设立了通用存储服务器作为第三方验证。

附图说明

图1为本发明的一种决策证明型区块链算法的物理架构的示意图。

图2为本发明的一种决策证明型区块链算法的流程图。

图3为本发明的一种决策证明型区块链算法的数据流动的示意图。

图4为本发明的一种决策证明型区块链算法的区块链连接方式示意图。

具体实施方式

以下实施例用于说明本发明,但不用来限制本发明的范围。

实施例1

图1为本发明的一种决策证明型区块链算法的物理架构的示意图。下文中,将参照图1对本实施例公开的一种决策证明型区块链算法的物理架构进行详细描述。图1中画出的数量并非实际数量,在本实施例中,一种决策证明型区块链算法的物理架构包括三级:应用级101、逻辑级102和管理级103,应用级101包括用于实现人工智能的一个应用级服务器104及用于连接人机交互界面的人工交互接口105,应用级主要面向人类,实现智能学习,大数据分析,电能交易宏观控制;逻辑级102包括第一至第三逻辑级服务器106、107和108和通用数据存储服务器109;管理级103包括第一至第九管理级服务器110、111、112、113、114、115、116、117和118;其中,应用级服务器104相当于立法,用于制定智能合约,区块链相当于司法,采用共识机制确保第一至第三逻辑级服务器106、107和108公正执行智能合约,通用数据存储服务器109相当于第三方公证,作为第三方数据库用于验证数据正确性并归档,第一至第九管理级服务器110、111、112、113、114、115、116、117和118相当于行政,用于执行第一至第三逻辑级服务器106、107和108的命令;逻辑级服务器数量由参与控制的服务器数量决定,确保每个相关方有至少一台逻辑级服务器以确保合约公正。

图2为本发明的一种决策证明型区块链算法的流程图,参考图2,本实施例公开的一种决策证明型区块链算法包括:应用级服务器104制定智能合约,逻辑级服务器不参与智能合约的制定;特定逻辑级服务器根据管辖的管理级服务器汇报的数据挂单决议需求,该特定逻辑级服务器作为区块链的决议领导者,本实施例中区块链的决议领导由发起决议者担任而非随机选择,而raft等算法中提出的领导者、跟随者、候选者是按照特定规则选举的;由通用数据存储服务器109作为第三方数据库对挂单的数据进行验证与归档,挂单的数据验证被篡改则驳回,不会被记录在区块链中,挂单的数据验证未被篡改则被记录在区块链分支;挂单数据验证未被篡改后,除特定逻辑级服务器外的逻辑级服务器或者指定的逻辑级服务器基于挂单给出的数据依照应用级服务器104制定的智能合约进行运算、表决并形成决议,指定所述逻辑级服务器进行表决时,随机分配一个空余服务器作为监管;向区块链公布运算表决决议结果;及决议被否决则作为领导者的特定逻辑级服务器自行分析否决原因并自行修改提案,决议被通过则交由各自管辖的管理级服务器按照决议进行控制执行;其中,所述区块链采用共识机制确保逻辑级服务器公正执行智能合约。

在本实施例中,采用该算法的区块链不参与智能合约的制定。智能合约的制定、判断、执行由三个不同级别的服务器来执行,确保三权分立。由区块链控制的逻辑级服务器的表决策略包括分布与集中,分布是指区块链上的除特定逻辑级服务器外的所有逻辑级服务器共同记录共同表决,集中是指谁发起谁主导,而发起决议是由单个逻辑级服务器管理的下属管理级服务器汇报的数据来决定,特定逻辑级服务器代表特定的管理级服务器,例如,特定逻辑级服务器为第一逻辑级服务器106时,特定逻辑级服务器代表特定的第一至第三管理级服务器110、111和112。通用数据存储服务器109进行第三方存储,确保数据安全与合约公正履行,也避免逻辑级服务器存储的数据量过于庞大。

本实施例中公开的一种决策证明型区块链算法包含错误排除功能及容错功能,与传统的同意、反对票不同的是,本实施例中采用四种决议结果:同意、反对、弃权以及一票否决,对于不同安全等级的决议有不同的票数要求。最低安全等级的决议需要有同意即可,以机器人为例,假设应用级上位机发出指令,寻找插座充电,逻辑级服务器进行表决,如果作为管理级服务器的行动管理服务器提出无正在执行的紧要任务,可以执行该指令,则管辖该行动管理服务器的逻辑级服务器投赞成票;如果作为管理级服务器的电池管理服务器提出电池已满,无需充电,则管辖该电池管理服务器的逻辑级服务器投反对票,则该决议被否决。反对可以代表各自的立场,需要说明理由,一票否决必须引用共识的内容,即公理。设计的区块链是联盟链或者私有链,所有的服务器都有自己的安全保护机制以及认证方法。除了四种表决的方法,在逻辑级服务器表决过程中,还通过定时系统定时随机指定某一逻辑级服务器作为验证服务器,发布一条仅用于验证的决议,测试除验证服务器外的逻辑级服务器是否正常判断,如同安检机定时加入虚拟的危险品,避免安检员打瞌睡,因此本实施例中公开的一种决策证明型区块链算法不需要拜占庭容错以及工作量验证,只要符合逻辑就是正确的,默认该服务器正常工作,即便服务器被入侵,也无法发布违背客观规律的决议。即便在所有逻辑级服务器都被入侵的情况下,发布错误的命令后,管理级服务器会基于自身的逻辑判断如何执行,无法执行则会报错,如果逻辑级无响应则越级向应用级汇报,应用级也没有响应则进入自律状态,从而确保控制系统的安全。

图3为本发明的一种决策证明型区块链算法的数据流动的示意图,本图只说明应用级、逻辑级、管理级三级的数据流的,基础控制单元307包括路由级和物理级,暂时先不做具体说明。从下往上传输为汇报,即传输本级的信息,从上往下为控制,即控制指令。应用级服务器加工后的数据301,是通过人机交互界面面向用户的,用户操作人机交互界面来控制应用级服务器,应用级服务器把控制命令分解成逻辑级服务器能够解析的命令作为应用级服务器存储的数据302并发送给逻辑级服务器进行控制,逻辑级服务器加工后的数据303是面向逻辑级服务器的,逻辑级服务器根据逻辑级服务器加工后的数据303作出响应,逻辑级服务器把接收到的控制命令分解成管理级服务器能够解析的命令作为逻辑级服务器存储的数据304并发送给管理级服务器进行控制,管理级服务器加工后的数据305是面向管理级服务器的,管理级服务器根据管理级服务器加工后的数据305作出响应,管理级服务器把接收到的控制命令分解成基础控制单元能够解析的命令作为管理级服务器存储的数据306并发送给基础控制单元307进行控制,应用级服务器因为较为复杂而且包含人工智能,所以自带应用级数据库,应用级数据库自带冷、热、异地备份,所以不使用通用数据存储服务器109,应用级数据库也属于传统数据库,云存储的一种,只是不和逻辑级、管理级共用。通用数据存储服务器109实际应是一个数据中心,有多台服务器只对逻辑级服务器、管理级服务器和基础控制单元的所有原始数据进行备份存储,附加哈希值等验证算法进行验证,避免数据被篡改,用于确保数据不可更改。如果通用数据存储服务器109宕机,并不会影响整个系统的正常运作,它只是作为第三方验证。通用数据存储服务器109存储数据包含热备份、冷备份以及异地备份。

另外,本实施例公开的一种决策证明型区块链算法还包括智能合约采纳算法,所述智能合约采纳算法包括:逻辑级服务器在进行表决时,如果出现无法依据现有的智能合约得出决议的情况,将问题上报给应用级服务器设计新的智能合约;如果管理级服务器发现命令无法执行时,将问题上报给逻辑级服务器进行重新表决,如果逻辑级服务器重新表决后无法解决问题或逻辑级服务器无响应,则越级上报给应用级服务器修改智能合约或者创立新的智能合约,如果应用级服务器无响应,则进入自律状态,从而确保控制系统的安全,智能合约采纳算法中数据流动如图3中所示。

图4为本发明的一种决策证明型区块链算法的区块链连接方式示意图,参考图4,本实施例中公开的区块链采用多链并行的形式,并非一维链而是一条基于时间为主干形成的多叉树状的多维链,非常适合多核多线程cpu,或者分布式的多核心控制系统,因此处理决议的效率大幅提高,从单体设备,如机器人,到大型设施,如电网,都可以采用该区块链;区块链上记录的每一次决议并非完成决议就不再管理,而是由该决议引申出的所有后续决议都会链接在该决议的下方,每次决议的领导者为当前决议的发起人而非父节点的发起人。

如图4中,带箭头的黑线410为主时间轴,第一和第二根节点400和401都代表决议第一次被提及,第一子节点402是第一根节点400的子节点,第二和第三子节点403和404为第一子节点402的子节点,第四子节点405是第二根节点401的子节点,第五子节点406为第四子节点405的子节点,第六至第八子节点407、408和409为第五子节点406的子节点,子节点代表引申决议,第三子节点404触发的时间后于第二根节点401决议,所以第三子节点404在第二根节点401之后。在程序上将时间分成一个一个连续的小段,每一小段叫做一个区块,即和普通区块链一样。不同于传统区块链的一维链,本设计形成的是一个多维链表(二维、三维或者更高纬度)。本区块链在同一时刻如果存在多个决议就可能存在多个领导者,就如同电脑同时运行多个程序一样,例如,第三子节点404和第五子节点406在同一时刻同时存在,则同一时刻所有逻辑服务器同时运行两个线程。相对于传统的区块链,是从串行变成了现在基于决议和时间的并行体系。区块链为面向对象的区域链,用类与对象的方式来说明,就是每一个决议的模版是一个类,每个决议是一个对象,即为面向对象的区域链。

本实施例中公开的一种决策证明型区块链算法的物理架构在软件上包含两套控制程序系统:用于真实控制的真实控制系统和用于模拟仿真控制的模拟仿真控制系统;冗余算力将用于系统的模拟仿真,不断地进行自我训练,在模拟仿真控制中,进行逻辑判断的智能合约由应用级服务器进行更新;所有的智能合约应先进过仿真,再经过小规模实际运行,最后变成逻辑级共识的智能合约。

本实施例中涉及的各类型服务器,可用于大型系统,精简后用于小型系统时,可能的形态为一个独立运行的软件或服务、在一台pc机或一个系统里运行多个独立的软件,也可视作不同的参与者。

虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1