CN113364592A - 一种基于信誉值联盟链的工程系统文件管理系统及方法 - Google Patents
一种基于信誉值联盟链的工程系统文件管理系统及方法 Download PDFInfo
- Publication number
- CN113364592A CN113364592A CN202110492280.2A CN202110492280A CN113364592A CN 113364592 A CN113364592 A CN 113364592A CN 202110492280 A CN202110492280 A CN 202110492280A CN 113364592 A CN113364592 A CN 113364592A
- Authority
- CN
- China
- Prior art keywords
- node
- chain
- nodes
- file
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 31
- 238000007726 management method Methods 0.000 claims abstract description 44
- 238000012986 modification Methods 0.000 claims abstract description 21
- 230000004048 modification Effects 0.000 claims abstract description 21
- 230000007246 mechanism Effects 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000004806 packaging method and process Methods 0.000 claims abstract description 18
- 230000003068 static effect Effects 0.000 claims description 50
- 238000004422 calculation algorithm Methods 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 20
- 238000009434 installation Methods 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 claims description 8
- 238000007637 random forest analysis Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 6
- 230000014509 gene expression Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 13
- 230000008569 process Effects 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 238000012550 audit Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000001629 suppression Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/122—File system administration, e.g. details of archiving or snapshots using management policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于信誉值联盟链的工程系统文件管理系统及方法,属于区块链与工程系统应用技术领域,包括依次连接的入链初始化模块、信誉值处理模块、记账主节点选取模块、打包入链模块以及文件管理模块。本发明针对现有工程系统文件中心化管理无法对文件修改进行追踪导致的权责不明的问题,在利用区块链技术解决文件修改追溯的问题的同时,对现有区块链技术在引入工程系统文件管理时存在的缺乏入链审核机制,记账节点选举机制依据的信誉值因素单一不反应工程系统业务特征,普适性的区块系统缺乏对恶意节点监控等问题进行了改进。
Description
技术领域
本发明属于区块链与工程系统应用技术领域,尤其涉及一种基于信誉值联盟链的工程系统文件管理系统及方法。
背景技术
电网在我国经济发展中发挥着重要的作用,随着工程系统项目不断增加,工程系统文件数量越来越多,传统以纸版形式保存、传递的文档已经不能满足信息时代的要求。工程系统文档电子化已经成为必选项。目前,整个工程系统文档电子化还处于初级阶段,即将文档扫描或其他方式转化为电子文档,并存储在文件服务器上。除开中心化的存储都存在的传输瓶颈问题,对工程系统来说最重要的是文档修改权责不明,无法追踪,时而发生诸如审批方与被审批方最后文件内容不一致的情况,导致一系列问题。因此急需为工程系统引入新技术设计专门的文件管理方案。
区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。将区块链技术应用于工程系统文件管理中解决跨单位节点之间的信任问题、文件修改的追责问题,是目前较受认可的技术改革趋势。但是,现有区块链方案很多都是理论性质,针对普遍问题,难以满足工程系统的特殊要求。例如:工程系统很多业务是跨单位跨部门的,现有区块链方案缺乏配套的入链流程和入链审核环节,无法保证入链节点的可信性。现有区块链依靠记账主节点来进行打包入链操作,但是节点的选择仅仅从性能角度考虑,缺乏节点角色、历史业务项目中的表现等业务方面的考虑,也缺乏信息安全方面因素不适合要求高安全性的工程系统。而另一方面,工程系统近几年信息化建设力度大,硬件升级快,各单位服务器配置高,单位内部网速快带宽高,重要协作部门之间也有专线,且整体单位数目并不多。因此现有区块链由于参与节点过多,节点性能限制做出的一些妥协,例如区块大小的限制,在工程系统应用领域可以放宽。综上所述,现有技术的问题主要在于:
(1)工程系统传以纸版形式保存、传递文档已经不能满足信息时代的要求。目前,整个工程系统文档电子化还处于初级阶段,即将文档扫描或其他方式转化为电子文档,并存储在文件服务器上。除开中心化存储都有的传输瓶颈问题之外,对工程系统来说更重要的是这种传统中心管理方式下的文档修改权责不明,无法追踪,时而发生各单位文件不一致的情况,导致一系列问题。(2)现有区块链技术在引入工程系统文件管理时,缺乏针对工程系统业务的专门设计,节点入链缺乏审核环节可信度无法保障;记账主节点选择主要采用随机选取和根据历史表现选取两种,前者没有信任度可言,后者考虑的因素多是电脑性能方面,没考虑工程系统需要的业务因素;整个区块链系统也没有对恶意节点的监控不满足工程系统网络安全性需要。现有区块链技术由于节点数目庞大、软硬件性能有限,而对区块进行的众多限制,也不适合工程系统节点较少、节点性能较高的环境。总之,现有区块链技术是普适性的,引入时需要针对工程系统业务要求进行改进。
发明内容
针对现有技术中的上述不足,本发明提供的一种基于信誉值联盟链的工程系统文件管理系统及方法,解决了针对现有工程系统电子版文件中心化管理,存在的文档修改权责不明、无法追踪、时而发生关联方文件内容不一致的问题。
为了达到以上目的,本发明采用的技术方案为:
本方案提供一种基于信誉值联盟链的工程系统文件管理系统,包括入链初始化模块、信誉值处理模块、记账主节点选取模块、打包入链模块以及文件管理模块;
所述入链初始化模块,用于构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值;
所述信誉值处理模块,用于根据工程系统业务状态,获取节点的动态因素和静态因素;
所述记账主节点选取模块,用于对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单;
所述打包入链模块,用于针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表;
所述文件管理模块,用于基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
本发明的有益效果是:本发明针对现有工程系统电子版文件中心化管理,存在的文档修改权责不明、无法追踪、时而发生关联方文件内容不一致的问题,引入区块链技术予以解决;并针对现有普适性区块链技术,缺乏工程系统需要的入链审核机制、选举记账主节点只考虑性能不考虑业务和网络安全因素无法获得跨单位节点信任等问题进行了改进。
基于上述系统,本发明提供了一种基于信誉值联盟链的工程系统文件管理方法,包括以下步骤:
S1、构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值;
S2、根据工程系统业务状态,获取节点的动态因素和静态因素;
S3、对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单;
S4、针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表;
S5、基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
本发明的有益效果是:本发明针对现有工程系统电子版文件中心化管理,存在的文档修改权责不明、无法追踪、时而发生关联方文件内容不一致的问题,引入区块链技术予以解决;并针对现有普适性区块链技术,缺乏工程系统需要的入链审核机制、选举记账主节点只考虑性能不考虑业务和网络安全因素无法获得跨单位节点信任等问题进行了改进。
进一步地,所述步骤S1包括以下步骤:
S101、构建工程系统联盟链,实现节点加入的入链审查机制;
S102、将指定服务器作为代表节点加入,并利用入链审查机制对代表节点进行审核;
S103、经审核通过后,获取安装有系统客户端的安装文件和初始化文件的指纹U盘;
S104、利用所述指纹U盘进行安装入链以及初始化,分配系统资源和创建节点,并为节点赋予初始信誉值,并通知其他节点。
上述进一步方案的有益效果是:工程系统联盟链入链审核流程及装置,入链单位需要提供资质、项目合同等证明才能获得装有系统客户端安装文件和初始化文件的指纹U盘,回本单位指定服务器进行安装、初始化入链操作。保证了入链节点的安全可靠。
再进一步地,所述步骤S2中节点静态因素包括节点历史参与的工程项目次数、节点作为主节点的次数以及节点作为主节点正确共识的比例;节点动态因素包括节点的网络延迟、网络丢包率和网络可信值。
再进一步地,所述步骤S3中节点静态值的表达式如下:
Stan=Wa·Actn+Wb·Prin+Wc·Trun
Wa+Wb+Wc=1
其中,Stan表示节点静态值,Wa、Wb和Wc分别表示对应因素中的高信誉值、中信誉值以及低信誉值的权重系数,且Wa>Wb>Wc,Actn表示节点历史参与的工程项目次数,Prin表示历史上节点作为主节点的次数,Trun表示节点历史正确共识次数。
上述进一步方案的有益效果是:本发明设计了静态因素与动态因素相结合的信誉值分类方法,将节点依据动静结合的信誉值分为高中低三类。其中静态因素充分考虑业务特征,动态因素则反应各动态的性能和网络安全因素,一方面保证了从高信誉值集合中选出的记账主节点的不仅性能优越且业务过硬;另一方面低信誉值集合可以发现恶意节点并予以处理,提高了系统整体的安全程度。
再进一步地,所述步骤S3中从高信誉值的节点中选取记账主节点后,将所述记账主节点移除候选集。
上述进一步方案的有益效果是:针对现有区块选举记账节点容易出现的高信誉值节点容易反复当选造成的单一节点权利过大问题,加入了N轮抑制机制,一旦当选,之后的N轮必然不能当选。进一步保证了选举出的记账节点的可信度。
再进一步地,所述步骤S4包括以下步骤:
S401、针对工程系统文件改动引发的联盟链文件交易,由所述记账主节点将产生的文件交易信息打包为文件交易区块;
S402、根据所述文件交易区块,利用拜占庭容错算法进行全局共识处理;
S403、由所述记账主节点将完成全局共识处理的文件交易区块加入至工程系统联盟链。
上述进一步方案的有益效果是:工程系统文件的任何新建、修改、删除会引发一次文件交易,交易过程遵照PBFT(拜占庭容错)算法将文件修改信息打包入链,该PBFT算法所需记账主节点由上述高信誉值节点集中随机选出。并设定抑制轮次,让当选节点之后数轮不能被选择,以此避免某些节点反复当选造成的权利过大。
再进一步地,所述步骤S402包括以下步骤:
S4021、广播所述文件交易区块至其他节点;
S4022、等待其他节点对所述文件交易区块进行验证;
S4022、转发验证通过后的交易区块头,并收集验证信息,完成全局共识处理。
上述进一步方案的有益效果是:以保证让本系统所有参与节点获知文件的修改信息并且保存的修改信息一致,从而完成全局共识处理。
再进一步地,所述步骤S5中各节点的本地维护历史记录表,用于记录查询节点的历史数据,所述历史数据包括:节点历史参与的工程项目次数Actn、历史上节点作为主节点的次数Prin和节点历史正确共识次数Trun。
上述进一步方案的有益效果是:通过维护历史记录表,让信誉值计算能充分考虑点历史参与的工程项目次数Actn、历史上节点作为主节点的次数Prin和节点历史正确共识次数Trun,保证当选的主记账节点拥有良好的历史业务表现。
附图说明
图1为本发明的系统结构示意图。
图2为本发明的方法流程示意图。
图3是本发明工程系统文件管理联盟链架构图。
图4是本实施例中的审核载体U盘搭载的内容示意图。
图5是本发明根据动静结合因素进行信誉值分类流程图。
图6为本实施例中信誉结果分类图。
图7为本实施例中区块组成示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
实施例1
如图1所示,本发明提供了一种基于信誉值联盟链的工程系统文件管理系统,包括入链初始化模块、信誉值处理模块、记账主节点选取模块、打包入链模块以及文件管理模块;所述入链初始化模块,用于构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值;所述信誉值处理模块,用于根据工程系统业务状态,获取节点的动态因素和静态因素;所述记账主节点选取模块,用于对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单;所述打包入链模块,用于针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表;所述文件管理模块,用于基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
本实施例中,入链初始化模块,该模块主要负责节点入链初始化功能,即从U盘读取初始化文件,根据里面内容进行创建节点入链、分配功能权限、分配初始信誉值等初始操作。信誉值处理模块,其主要实现了信誉值收集与信誉值计算两个功能。信誉值收集:根据每个节点在本地维护的表收集节点各静态因素值,根据IDS装置收集节点网络可信值,向节点发送探测包以收集节点网络延迟,丢包率;信誉值计算:根据收集的节点静态因素通过计算得出静态值,动态因素根据设置范围计算相应得分。记账主节点选取模块,该模块主要负责实现节点分类与节点处理两个功能。节点分类:将计算后的静态值与动态因素作为输入,分类出三个基于信誉值的高中低三个节点集合。节点处理:对于分类后的节点集合,高信誉节点集合中随机选取主节点;同时负责检测一个节点是否连续被分类进低信誉值集合,如果有,将该节点归入黑名单。打包入链模块,该模块实现打包入链与更新记录两个功能。打包入链:主节点确定后,负责收集新产生的文件或修改并打包为文件交易区块,发送给其他节点进行验证,共识完成后将新的文件交易区块入链。更新记录:新的文件交易区块入链后,各节点更新本地维护的历史记录表。文件管理模块,该模块实现对工程系统文件的查找、文件操作的追溯,以方便进行权责界定。
本实施例中,以上模块加上常规功能模块(例如通信模块、用户管理模块等)和可视化操作界面构成系统客户端。
本实施例中,针对现有工程系统电子版文件中心化管理,存在的文档修改权责不明、无法追踪、时而发生关联方文件内容不一致的问题,引入区块链技术予以解决。但现有普适性区块链技术存在缺乏工程系统需要的入链审核机制、选举记账主节点只考虑性能不考虑业务和网络安全因素无法获得跨单位节点信任等问题,需要根据工程系统业务特征加以改进。首先,针对工程系统是多单位的组合体,为工程系统选择联盟链结构,同时设计节点的入链审核机制,保证入链节点的可信度。接着,根据工程系统业务环境,设计动静态因素结合的节点信誉值分类方法。静态因素是节点历史以来在项目中的表现;动态因素主要指节点的软硬件条件、网络安全表现。获取以上动静态因素后,使用随机森林算法,将节点分类为高、中、低三类。高信誉节点集作为主节点候选节点,多次被判定为低信誉值的节点进入监控黑名单。工程系统文件的任何新建、修改、删除会引发一次文件交易,交易过程遵照PBFT(拜占庭容错)算法将文件修改信息打包入链,算法所需记账主节点由上述高信誉值节点集中随机选出。并设定抑制轮次,让当选节点之后数轮不能被选择,以此避免某些节点反复当选造成的权利过大。
实施例2
如图2所示,本发明提供了一种基于信誉值联盟链的工程系统文件管理方法,其实现方法如下:
S1、构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值,其实现方法如下:
S101、构建工程系统联盟链,以及设置节点加入的入链审查机制;
S102、将指定服务器作为代表节点加入,并利用入链审查机制对代表节点进行审核;
S103、经审核通过后,获取安装有系统客户端的安装文件和初始化文件的指纹U盘;
S104、利用所述指纹U盘进行安装入链以及初始化,分配系统资源和创建节点,并为节点赋予初始信誉值,并通知其他节点。
本实施例中,针对工程系统是多单位的组合体,为工程系统选择联盟链结构,每家参与单位指定本单位一台服务器作为本单位的代表参与该联盟链架构,如图3。并设计节点的入链审核机制,保证入链节点的可信度,节点通过资格审核后通过领取装有本系统代理端安装文件和初始化文件(内含该节点的各种初始设置参数)的指纹U盘,回单位进行安装、初始化和入链操作。同时每个节点在本地维护一个节点历史记录表,用于记录查询节点历史表现,之后客户端可以在线更新。
本实施例中,工程系统相关单位包括建管、监理、设计、施工及提出要求的一般电力单位。需要入链的单位,履行报告审批流程,根据角色的不同,提交项目合同,入链审批表和入链身份验证。审批通过后,审核人员会进行初始化入链操作,包括:分配节点ID,初始信誉值(100),根据节点的角色身份分配节点对应权限,以及录入单位代表指纹等,以上初始化信息加密,连同系统客户端,装入特定U盘。单位代表携带U盘回到单位节点服务器,从U盘安装系统客户端,系统客户端会自动读取初始化数据并让单位人员输入密码验证,验证通过后根据读取的信息进行入链操作,分配系统资源、创建节点,为节点赋予初始信誉值Creitn=100,并通知其他节点。
本实施例中,工程系统区块链审核人员对合同和审批表进行审核,通过后分配节点信息,分配节点信息所包含信息如下表1所示,每个节点在本地创建一张记录所有节点历史表现的表,表里包括:节点历史参与的工程项目次数Actn、历史上节点作为主节点的次数Prin,节点历史正确共识次数Trun;
表1
节点ID | 000059 |
节点名称 | 施工单位G |
单位代表人 | 李某 |
节点账户密码 | ******** |
初始信誉值 | 100 |
本实施例中,为了系统安全,本方法不提供公开的系统客户端获取方式,只能通过审核后,从审核处获取搭载系统客户端和初始化数据的指纹U盘,内容如图4所示。安装完成后的客户端可以在线更新。指纹信息文件:该文件为隐藏文件,存储审核时录入的单位代表指纹,通过外部指纹识别器判断操作人员是否有权限查看U盘存储内容。系统客户端文件:exe形式的系统客户端安装文件。单位代表审核通过后,携带U盘回到单位节点服务器,从U盘安装好系统客户端。
S2、根据工程系统业务状态,获取节点的动态因素和静态因素;
本实施例中,节点的静态因素代表了节点历史以来的表现,参与过多次工程的节点相比其他节点更有经验,完成共识几率更高。作为主节点的次数以及正确共识比例则代表节点更加可靠。所以静态因素包括:节点历史工程项目评价、历史上节点作为主节点的次数,以及作为主节点正确共识的比例。节点的动态因素包括性能和安全指标。性能指标要求节点硬件必须符合条件,需要保证传送文件的完整性,实时性;同时处于安全需要,本方法加装了IDS入侵检测装置,在网络网关处对进出的所有流量进行监控,对异常进行报警。节点的报警次数被定义为节点的网络可信值,用以表示节点不稳定或节点可能为恶意节点的可能性。因此动态因素包括节点的网络延迟、网络丢包率、网络可信值。
本实施例中,以工程系统节点举例,节点通过信誉值收集模块查看本地维护的历史表现表获取各节点静态因素,历史表现如表2所示;
表2
参与工程次数 | 当选主节点次数 | 正确共识次数 | |
建管单位A | 42 | 21 | 38 |
设计单位B | 52 | 14 | 36 |
设计单位C | 42 | 16 | 42 |
监理单位D | 46 | 22 | 36 |
施工单位E | 40 | 19 | 40 |
施工单位F | 53 | 20 | 36 |
… | … | … | … |
静态获取后,向需要探测的节点进行探测操作,获取该节点网络延迟与丢包率参数。最后,通过IDS获得该节点的报警数并进行评分获得其网络可信值。
S3、对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单。
本实施例中,如图5所示,根据动静态因素将节点分为高中低信誉值三类,从高信誉值类节点中选取记账主节点;多次被判断为低信誉值的节点进入监控黑名单:获取各节点静态因素加权计算得出节点静态值Stan,计算方法如下:
Stan=Wa·Actn+Wb·Prin+Wc·Trun
Wa+Wb+Wc=1
其中,Stan表示节点静态值,Wa、Wb和Wc分别表示对应因素高信誉值、中信誉值以及低信誉值的权重系数,且Wa>Wb>Wc,Actn表示节点历史参与的工程项目次数,Prin表示历史上节点作为主节点的次数,Trun表示节点历史正确共识次数。
本实施例中,动态因素包括网络延迟,丢包率,网络可信值,各动态因素具体得分根据该节点对应的动态因素表现进行评分,设置区间与其相应的得分,例如网络延时如果在(a,b]之间就给x分,(b,c]就给y分,如表3:
表3
网络延迟时长(ms) | 评分 |
(a,b] | x |
(b,c] | y |
其中c>b>a且y<x,丢包率与网络可信值评分类似,都是根据实际环境给的评分,不同环境,区间和评分不同。
本实施例中,取Wa=0.5,Wb=0.3,Wc=0.2评分标准如下表4,表5,表6所示,实际值查表获得对应评分。
表4
网络延迟时长(ms) | 评分 |
(0,20] | 10 |
(20,50] | 8 |
(50,80] | 6 |
(80,100] | 4 |
(100,+∞) | 2 |
表5
丢包率(%) | 评分 |
(0,2] | 10 |
(2,5] | 5 |
(5,100] | 2 |
表6
IDS报警次数 | 评分 |
(0,5] | 10 |
(,10] | 5 |
(10,+∞] | 2 |
本实施例中,收集各个节点静态因素与动态因素通过以上计算获得统一量纲的评分,作为输入,使用随机森林算法分类。以四川省内58个单位节点为例,经过算法分为基于信誉值的三个集合,本轮分类结果如图6所示,在高信誉值节点集合的16个节点中随机选择监理单位D作为本轮主节点,同时标记该节点,在接下来的三轮选举中不得参与选举即不能重复当选主节点;如果一个节点连续五轮被分类到低信誉值节点集合,将该节点移入黑名单,不得参与项目,观察讨论后再进行安排。
本实施例中,在高信誉值节点集合中,随机选择出一个节点作为主节点,同时为了避免节点的重复当选,节点当选后移出候选集N轮,即不参与接下来 N轮选举,称为N轮选举抑制。为系统设置黑名单,当某个节点连续N轮被分为低信誉值集合时,证明该节点可能存在问题或隐患,该节点进入黑名单,冻结操作权限,以保证系统的健壮性,等待管理员处理。
S4、针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表,共实现方法如下:
S401、针对工程系统文件引发的联盟链文件交易,由所述记账主节点将产生的文件交易信息打包为文件交易区块;
S402、根据所述文件交易区块,利用拜占庭容错算法进行全局共识处理,其实现方法如下:
S4021、广播所述文件交易区块至其他节点;
S4022、等待其他节点对所述文件交易区块进行验证;
S4022、转发验证通过后的交易区块头,并收集验证信息,完成全局共识处理。
S403、由所述记账主节点将完成全局共识处理的文件交易区块加入至工程系统联盟链。
本实施例中,产生交易后,主节点将新产生的文件或文件修改打包为文件交易区块。交易区块大小上限为10M。叶子节点分组哈希,依次递归得到根哈希,用以保证文件交易的可追溯性以及不可篡改性;区块打包后,周期性利用类PBFT流程进行共识:广播区块等待其他节点验证,验证区块头并转发区块,收集验证信息。验证包括对比区块头根哈希、签名、时间戳、文件交易等区块信息是否正确;验证通过后则共识完成,主节点将新的文件交易区块入链。
本实施例中,如图7所示,文件修改引发一次联盟链文件交易过程,打包入链模块以上记账主节点执行PBFT算法将文件修改信息打包入链:以区块链中产生的工程系统文件“猛追湾高压变换器检修报告.doc”为例,将文件信息进行 SHA256,得到哈希值 0e2ec50f8288eb2698a48c5007cb5451729887413be90ec167884b435db4594,由主节点即监理单位D将该文件封装进名为fileblock202的区块中。打包完成后,进入 PBFT算法对该区块进行确认,算法分为三步,步骤如下:预准备阶段:主节点打包“猛追湾高压变换器检修报告.doc”文件进入文件交易区块,广播该区块等待其他节点验证接受该区块,消息格式为<pre-prepare,D,v,sign(d),fileblock>其中D 为发出消息的节点身份,即监理单位D,v=202为该区块时隙的视图编号, fileblock=fileblock 202为文件交易区块名称,d为该fileblock的哈希摘要,sign(d) 为主节点的签名;准备阶段:其他节点收到区块后验证主节点的签名、视图编号d,并且验证d与hash(fileblock)是否相等,验证均有效则将区块转发给其他节点且将消息添加到自己的日志中,消息格式为<prepare,i,v,d>,i为节点身份;提交阶段:节点收到2f+1个相同的区块后进入commit阶段(f为拜占庭节点的个数),然后开始验证区块,包括其中所有交易、签名、时间戳等信息,验证正确则广播commit消息认为该区块有效,消息格式为<commit,v,i,d>。如果一个节点收到包含自己的2f+1的commit消息,验证commit消息中的视图编号 v和区块摘要d是否与之前消息中的v与d相匹配,匹配则代表该区块被网络大多数节点认可,添加到区块链上。至此该文件被加入到文件区块链上。
S5、基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
本实施例中,如果要查找该文件或对其可信追溯,可以通过区块高度查找该文件所在区块并对区块进行查看,得到区块信息如下表7,通过对比“猛追湾高压变换器检修报告.doc”文件信息的哈希值与区块中保存的Merkle根的值,以确定文件数据是否被修改,保证数据可信性。若文件产生修改,则根据修改查找对应区块,获取其区块Merkle信息,对修改部分进行确认。
表7
本发明通过以上设计,解决了针对现有工程系统电子版文件中心化管理,存在的文档修改权责不明、无法追踪、时而发生关联方文件内容不一致的问题。
Claims (9)
1.一种基于信誉值联盟链的工程系统文件管理系统,其特征在于,包括入链初始化模块、信誉值处理模块、记账主节点选取模块、打包入链模块以及文件管理模块;
所述入链初始化模块,用于构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值;
所述信誉值处理模块,用于根据工程系统业务状态,获取节点的动态因素和静态因素;
所述记账主节点选取模块,用于对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单;
所述打包入链模块,用于针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表;
所述文件管理模块,用于基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
2.一种基于信誉值联盟链的工程系统文件管理方法,其特征在于,包括以下步骤:
S1、构建工程系统联盟链,实现节点加入的入链审查机制,并为审核通过的节点分配系统资源和赋予初始信誉值;
S2、根据工程系统业务状态,获取节点的动态因素和静态因素;
S3、对所述节点静态因素进行加权处理,得到节点静态值,并根据所述节点静态值和节点动态因素,利用随机森林算法将节点分类为高信誉值、中信誉值以及低信誉值,并从高信誉值的节点中选取记账主节点,将低信誉值的节点加入黑名单;
S4、针对工程系统文件改动引发的工程系统联盟链文件交易,由所述记账主节点将所述文件交易信息打包为文件交易区块,并利用拜占庭容错算法将文件交易区块加入至工程系统联盟链,并更新其他各节点的本地维护历史记录表;
S5、基于含文件交易区块的工程系统联盟链,实现工程文件的追溯与查找,完成基于信誉值联盟链的工程系统文件管理。
3.根据权利要求2所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S1包括以下步骤:
S101、构建工程系统联盟链,实现节点加入的入链审查机制;
S102、将指定服务器作为代表节点加入,并利用入链审查机制对代表节点进行审核;
S103、经审核通过后,获取安装有系统客户端的安装文件和初始化文件的指纹U盘;
S104、利用所述指纹U盘进行安装入链以及初始化,分配系统资源和创建节点,并为节点赋予初始信誉值,并通知其他节点。
4.根据权利要求2所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S2中节点静态因素包括节点历史参与的工程项目次数、节点作为主节点的次数以及节点作为主节点正确共识的比例;节点动态因素包括节点的网络延迟、网络丢包率和网络可信值。
5.根据权利要求2所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S3中节点静态值的表达式如下:
Stan=Wa·Actn+Wb·Prin+Wc·Trun
Wa+Wb+Wc=1
其中,Stan表示节点静态值,Wa、Wb和Wc分别表示对应因素中的高信誉值、中信誉值以及低信誉值的权重系数,且Wa>Wb>Wc,Actn表示节点历史参与的工程项目次数,Prin表示历史上节点作为主节点的次数,Trun表示节点历史正确共识次数。
6.根据权利要求5所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S3中从高信誉值的节点中选取记账主节点后,将所述记账主节点移除候选集。
7.根据权利要求2所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S4包括以下步骤:
S401、针对工程系统文件改动引发的联盟链文件交易,由所述记账主节点将产生的文件交易信息打包为文件交易区块;
S402、根据所述文件交易区块,利用拜占庭容错算法进行全局共识处理;
S403、由所述记账主节点将完成全局共识处理的文件交易区块加入至工程系统联盟链。
8.根据权利要求7所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S402包括以下步骤:
S4021、广播所述文件交易区块至其他节点;
S4022、等待其他节点对所述文件交易区块进行验证;
S4022、转发验证通过后的交易区块头,并收集验证信息,完成全局共识处理。
9.根据权利要求2所述的基于信誉值联盟链的工程系统文件管理方法,其特征在于,所述步骤S5中各节点的本地维护历史记录表,用于记录查询节点的历史数据,所述历史数据包括:节点历史参与的工程项目次数Actn、历史上节点作为主节点的次数Prin和节点历史正确共识次数Trun。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110492280.2A CN113364592B (zh) | 2021-05-06 | 2021-05-06 | 一种基于信誉值联盟链的工程系统文件管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110492280.2A CN113364592B (zh) | 2021-05-06 | 2021-05-06 | 一种基于信誉值联盟链的工程系统文件管理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113364592A true CN113364592A (zh) | 2021-09-07 |
CN113364592B CN113364592B (zh) | 2024-03-29 |
Family
ID=77525865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110492280.2A Active CN113364592B (zh) | 2021-05-06 | 2021-05-06 | 一种基于信誉值联盟链的工程系统文件管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113364592B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115021968A (zh) * | 2022-05-07 | 2022-09-06 | 北京航空航天大学 | 一种以信用度为核心的可信联盟链节点管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510876A (zh) * | 2018-12-20 | 2019-03-22 | 弗洛格(武汉)信息科技有限公司 | 一种基于pbft的联盟链分片方法及相应的联盟链 |
CN110784346A (zh) * | 2019-10-18 | 2020-02-11 | 深圳供电局有限公司 | 一种基于信誉值的pbft共识系统及方法 |
US20200112446A1 (en) * | 2018-10-08 | 2020-04-09 | International Business Machines Corporation | Blockchain timestamp agreement |
CN112039964A (zh) * | 2020-08-24 | 2020-12-04 | 大连理工大学 | 一种基于区块链的节点信誉共识方法 |
CN112073483A (zh) * | 2020-08-28 | 2020-12-11 | 武汉大学 | 基于信誉与委员会背书机制的权威证明共识方法及系统 |
-
2021
- 2021-05-06 CN CN202110492280.2A patent/CN113364592B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200112446A1 (en) * | 2018-10-08 | 2020-04-09 | International Business Machines Corporation | Blockchain timestamp agreement |
CN109510876A (zh) * | 2018-12-20 | 2019-03-22 | 弗洛格(武汉)信息科技有限公司 | 一种基于pbft的联盟链分片方法及相应的联盟链 |
CN110784346A (zh) * | 2019-10-18 | 2020-02-11 | 深圳供电局有限公司 | 一种基于信誉值的pbft共识系统及方法 |
CN112039964A (zh) * | 2020-08-24 | 2020-12-04 | 大连理工大学 | 一种基于区块链的节点信誉共识方法 |
CN112073483A (zh) * | 2020-08-28 | 2020-12-11 | 武汉大学 | 基于信誉与委员会背书机制的权威证明共识方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115021968A (zh) * | 2022-05-07 | 2022-09-06 | 北京航空航天大学 | 一种以信用度为核心的可信联盟链节点管理方法 |
CN115021968B (zh) * | 2022-05-07 | 2023-04-25 | 北京航空航天大学 | 一种以信用度为核心的可信联盟链节点管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113364592B (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115210741B (zh) | 部分有序的区块链 | |
CN110572281B (zh) | 一种基于区块链的可信日志记录方法及系统 | |
CN112868210B (zh) | 区块链时间戳协议 | |
US20210266163A1 (en) | Blockchain hybrid consensus-based system for maintaining domain name information | |
CN114372296B (zh) | 一种基于区块链的用户行为数据审计方法及系统 | |
CN114363352B (zh) | 基于区块链的物联网系统跨链交互方法 | |
CN110716932A (zh) | 数据处理方法、系统、设备及存储介质 | |
CN115004625A (zh) | 用于区块链分类账的索引结构 | |
US11343313B1 (en) | Fault tolerant periodic leader rotation for blockchain | |
CN111899019A (zh) | 一种黑名单多方交叉验证和共享的方法及系统 | |
CN105096034A (zh) | 电子政务的实现方法和电子政务系统 | |
EP4147416B1 (en) | Blockchain-based accountable distributed computing system | |
CN113364592B (zh) | 一种基于信誉值联盟链的工程系统文件管理系统及方法 | |
CN112488834B (zh) | 节点管理方法、装置、电子设备及可读存储介质 | |
CN111506661B (zh) | 一种内容访问管理方法、装置和存储介质 | |
CN114036560A (zh) | 一种基于区块链的充电桩补贴数据管理方法 | |
CN111343212B (zh) | 消息处理方法、装置、设备以及存储介质 | |
CN109951527A (zh) | 面向虚拟化系统的hypervisor完整性检测方法 | |
CN115934832A (zh) | 基于区块链的计量试验检测数据可信共享方法 | |
CN112039893B (zh) | 私密交易处理方法、装置、电子设备及可读存储介质 | |
CN115242401A (zh) | 一种基于区块链的测试数据存证系统和方法 | |
US20230009460A1 (en) | Trail recording system and data verification method | |
Ahmad et al. | Discrepancy detection in whole network provenance | |
CN116760632B (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN111984378B (zh) | 数据库异常事务提交预防 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |