一种基于综合评价的区块链安全评估方法

文档序号:31778466发布日期:2022-10-12 09:10阅读:352来源:国知局
一种基于综合评价的区块链安全评估方法

1.本发明属于软件测试中的区块链安全技术领域,涉及一种基于综合评价的区块链安全评估方法。


背景技术:

2.目前区块链技术和应用处于快速发展阶段,凭借去中心化,防篡改等安全特性,区块链逐渐成为在金融、财政等领域重要的应用技术。然而区块链也面临种类繁多的安全风险,区块链生态应用的安全,包括用户私钥安全、账户安全、应用软件安全、使用安全等,包含了各种复杂的业务场景和业务逻辑,容易成为被攻击对象;区块链的系统设计也存在安全风险,共识机制的设计不当,会造成分叉、双花攻击等问题,智能合约的逻辑漏洞则会导致非法交易被合法化;区块链系统提供了诸多基础组件,针对基础组件的安全风险分为:网络安全、密码学安全、数据存储安全。因此,区块链的安全性问题开始受到关注,正成为国内外研究的重点。
3.近几年,一些方法已经被提出用于评估区块链的安全风险,大部分研究从攻击方式的角度分析针对区块链攻击的影响力,例如51%攻击,日蚀攻击等,从而评估区块链的安全性。然而区块链安全问题分布广泛且危险性高,只是分析某种攻击方式无法全面地体现区块链的安全性。根据文献查阅,现有对区块链的安全评估研究还依旧处于探索阶段,行业缺乏统一的评价标准,面临着区块链安全性难以评估对比的痛点。因此,本发明提出了一种基于综合评价的区块链安全评估方法,该方法采用综合评价中层次分析法的层级结构模型思想,建立面向区块链的安全评估指标模型,并对层次分析法、熵权法和优劣解距离法这三种综合评价方法进行组合改进,从而计算区块链的安全评分。


技术实现要素:

4.为了解决上述的区块链安全性如何较为全面地客观地评估对比的问题,本发明提出了一种基于综合评价的区块链安全评估方法,并且将本方法的实验结果与权威的区块链评测机构数据进行比较,验证了提出方法的有效性和评价结果的准确性。
5.本发明的技术方案如下:
6.步骤1,依据区块链的技术架构,建立区块链安全评估指标模型;
7.步骤2,应用改进的层次分析法为安全评估指标模型赋权,得到各项安全指标的安全权重;
8.步骤3,应用改进的熵权法,对安全指标的权重进行修正;
9.步骤4,对修正后的安全指标权重应用改进的优劣解距离法,得到区块链的安全评分;
10.步骤5,根据步骤4所得到的安全评分结果,得到区块链的安全评估等级。
11.第一方面,上述步骤1的具体步骤如下:
12.步骤1.1,依据区块链安全特性,建立区块链安全评估的层级指标模型结构,将区
块链安全作为最高的目标层;
13.步骤1.2,从区块链技术架构中提取显著影响区块链安全的属性,包括数据层、网络层、共识层、合约层和应用层,作为安全评估指标模型中第二层的一级指标;
14.步骤1.3,从安全评估指标模型各个一级指标中提取显著影响区块链安全的属性,包括数据层的数据结构、网络层的网络结构、共识层的共识机制、合约层的合约语言以及应用层的应用领域,作为各个一级指标下第三层的二级指标。
15.第二方面,上述步骤2的具体步骤如下:
16.步骤2.1,采用1~9标度法和a0~a8标度法对安全评估指标模型构造判断矩阵a,从客观信息源成对比较本层因素对上一层因素的相对重要性;
17.步骤2.2,采用方根法求解判断矩阵的权重向量wi,计算判断矩阵最大特征值λ;
18.步骤2.3,对判断矩阵的一致性进行检验;
19.步骤2.4,若一致性检验通过,则得到安全评估指标模型中的层次指标权重w,否则重新构造判断矩阵。
20.第三方面,上述方根法求解判断矩阵的流程包括:
21.计算判断矩阵a每行乘积的n次方根mi,n表示判断矩阵的阶数,计算方式为:其中,a
ij
表示第i个因素相对于第j个因素的比较结果;
22.将mi进行归一化处理,得到判断矩阵的权重向量wi,计算方式为:
23.计算判断矩阵最大特征值λ,计算方式为:
24.第四方面,上述判断矩阵一致性检验流程包括:
25.ci为度量判断矩阵偏离一致性指标,计算方式为:其中,n表示判断矩阵的阶数,λ表示判断矩阵最大特征值,ci越大,判断矩阵一致性越差,ci为0时,判断矩阵具有完全一致性;
26.cr为一致性比率,计算公式为:其中ri为平均随机一致性指标,当cr《0.1时可认为判断矩阵通过一致性检验。
27.第五方面,上述步骤3的具体步骤如下:
28.步骤3.1,采用步骤2得到的赋权后的区块链安全评估指标模型,对被测区块链项目进行安全指标的取值,构造熵权判断矩阵b;
29.步骤3.2,采用极差标准化方法对熵权判断矩阵b数据标准化处理,计算方式为:得到标准化判断矩阵r;
30.步骤3.3,采用改进的熵权法计算区块链安全评估指标模型中指标的信息熵值ej,根据熵值求解熵权指标权重uj;
31.步骤3.4,将所得的熵权指标权重u对步骤2得到的层次指标权重w进行修正,得到修正后指标权重θ,计算方式为:θ=ρw+(1-ρ)u,其中ρ表示权重因子。
32.第六方面,上述熵值指标权重计算流程包括:
33.计算指标的信息熵值ej,计算方式为:其中,f
ij
表示第j个指标下第i个项目所得指标权重,f
ij
的计算方式为:其中,r
ij
表示标准化判断矩阵r中的第i行第j列的取值;
34.根据熵值求解熵权指标权重uj,计算方式为:其中,ej表示指标的信息熵值。
35.第七方面,上述步骤4的具体步骤如下:
36.步骤4.1,采用步骤3所得的熵权判断矩阵b进行数据指标同趋势化处理,从而将原始数据指标的方向一致化,得到正向化判断矩阵x;
37.步骤4.2,采用余弦距离度量的向量规范化方法对正向化判断矩阵x进行归一化处理,计算方式为:从而得到归一化处理后的标准化矩阵z;
38.步骤4.3,计算评价指标与最优向量、最劣向量的接近程度,计算方式分别为:其中θ表示步骤3所得的修正后指标权重,z
+
表示最优向量,由z中每列元素的最大值构成,z-表示最劣向量,由z中每列元素的最小值构成;
39.步骤4.4,采用评价对象与最优方案贴近程度的方式求得区块链安全评分ci,计算方式为:ci值越大表明被测区块链项目的安全性越高。
40.与现有技术相比,本发明的有益效果:
41.1、基于综合评价的区块链安全评估方法能对区块链的安全特性进行更加全面的分析。基于综合评价的区块链安全评估方法把影响区块链安全的众多属性提取到层级结构指标模型中,采用组合改进的综合评价法为安全指标赋权,并将指标权重经过合理计算得到区块链的安全评分。
42.2、基于综合评价的区块链安全评估方法能很好地对区块链安全性做出客观的评价。基于综合评价的区块链安全评估方法将三种综合评价法组合改进,能更好地适用于区块链的安全性评估中。本发明中改进了传统层次分析法构造判断矩阵时的标度方法,采取两种标度方法相结合的方式,并选择从客观信息源进行对指标安全重要性的比较取值,改善了传统层次分析法依赖专家评分,主观性过强的问题;改进了传统熵权法中指标权重的计算方式,解决了数值特殊情况下产生的修正问题;改进了传统优劣解距离法中评价对象与最优及最劣向量的差距计算方式,使评价方式更适用于区块链的安全性评估。
43.3、基于综合评价的区块链安全评估方法的安全评估结果的准确率很高。通过实验对比证明,基于综合评价的区块链安全评估方法对区块链项目的安全评估结果,与权威的区块链安全评测机构tokeninsight的评价结果对比具有高度的一致性,因此基于综合评价的区块链安全评估方法的准确率很高。
附图说明
44.图1是一种基于综合评价的区块链安全评估方法的总体流程图。
45.图2是区块链安全评估指标模型层次结构图。
46.图3是改进层次分析法中建立判断矩阵时的标度法。
47.图4是赋权后的安全评估指标。
48.图5是本发明实验被测区块链项目的安全指标取值。
49.图6是利用区块链项目的安全指标计算得出的熵权指标权重。
50.图7是本发明对被测区块链项目的安全评估结果。
51.图8是tokeninsight对被测区块链项目的安全评价结果。
52.图9是本发明与tokeninsight的对相同区块链项目的评估精确度对比。
具体实施方式
53.为了能够更清楚地理解本发明一种基于综合评价的区块链安全评估方法的技术内容,下面结合附图和具体实施案例对本发明作进一步说明,须指出的是,所描述给出的实施案例旨在便于对本发明的理解,而对其没有任何限定要求。
54.如图1所示,本发明给出的一种基于综合评价的区块链安全评估方法,包括:
55.步骤201依据区块链的技术架构,建立区块链安全评估指标模型;
56.步骤2011依据区块链安全特性,建立区块链安全评估的层级指标模型结构,将区块链安全作为最高的目标层;
57.步骤2012从区块链技术架构中提取显著影响区块链安全的属性,包括数据层、网络层、共识层、合约层和应用层,作为安全评估指标模型中第二层的一级指标;
58.步骤2013从安全评估指标模型各个一级指标中提取显著影响区块链安全的属性,包括数据层的数据结构、网络层的网络结构、共识层的共识机制、合约层的合约语言以及应用层的应用领域,作为各个一级指标下第三层的二级指标。
59.依据区块链技术架构中各层次的可对比安全属性和本发明实施案例中选取的被测区块链项目,区块链安全评估指标模型中一级指标分别是数据层、网络层、共识层、合约层和应用层,数据层的二级指标包括merkle tree、merkle patricia tree、merkle bucket tree,网络层的二级指标包括全分布式非结构化网络、全分布式结构化网络、半分布式网络,共识层的二级指标包括pow共识机制、pos共识机制、bft/pbft共识机制,合约层的二级指标包括脚本型合约语言、图灵完备型合约语言、可验证型合约语言,应用层的二级指标包括可编程货币、可编程金融、可编程社会。图2展示了区块链安全评估指标模型层次结构图。
60.步骤202应用改进的层次分析法为安全评估指标模型赋权,得到各项安全指标的安全权重;
61.步骤2021采用1~9标度法和a0~a8标度法对安全评估指标模型构造判断矩阵a,从
客观信息源成对比较本层因素对上一层因素的相对重要性;
62.构造判断矩阵时,同属一层的因素以上一层的因素为准则进行成对相对重要性比较,例如数据层、网络层、共识层、合约层和应用层之间以区块链安全评估目标层为准则,成对比较在区块链安全评估中的重要程度。因素间的比值即为标度,为了使判断定量化,本发明根据1~9标度法和a0~a8标度法确定每个因素的相对重要度,1~9标度法将重要性程度划分为1~9九个标度等级,若因素i与因素j的重要性之比为a
ij
,则因素i与因素j的重要性之比为a
ji
=1/a
ij
,以此构造判断矩阵;a0~a8标度法将重要性程度划分为a0~a8九个标度等级,其中a的取值为1.316,若因素i与因素j的重要性之比为a
ij
,则因素i与因素j的重要性之比为a
ji
=1/a
ij
,以此构造判断矩阵。图3展示了改进层次分析法中建立判断矩阵时的标度法取值。
63.步骤2022采用方根法求解判断矩阵的权重向量wi,计算判断矩阵最大特征值λ;
64.方根法求解判断矩阵的流程包括:计算判断矩阵a每行乘积的n次方根mi,n表示判断矩阵的阶数,计算方式为:其中,a
ij
表示第i个因素相对于第j个因素的比较结果;将mi进行归一化处理,得到判断矩阵的权重向量wi,计算方式为:计算判断矩阵最大特征值λ,计算方式为:
65.步骤2023对判断矩阵的一致性进行检验,流程包括:
66.ci为度量判断矩阵偏离一致性指标,计算方式为:其中,n表示判断矩阵的阶数,λ表示判断矩阵最大特征值,ci越大,判断矩阵一致性越差,ci为0时,判断矩阵具有完全一致性;cr为一致性比率,计算公式为:其中ri为平均随机一致性指标,当cr《0.1时可认为判断矩阵通过一致性检验。
67.步骤2024若一致性检验通过,则采用算术平均值方式处理两种标度法计算所得的指标权重,得到安全评估指标模型中的层次指标权重w,否则重新构造判断矩阵。
68.本发明选择发表在高水平期刊上具有代表性的文献作为客观信息源,采用两种标度法分别构造判断矩阵,每种判断矩阵构造三次以提高计算结果精确度。图4展示了通过改进的层次分析法计算所得的层次指标权重。
69.步骤203应用改进的熵权法,对安全指标的权重进行修正;
70.步骤2031采用步骤202得到的赋权后的区块链安全评估指标模型,对20个被测区块链项目进行安全指标的取值,构造熵权判断矩阵b;
71.步骤2032采用极差标准化方法对熵权判断矩阵b数据标准化处理,计算方式为:其中,r
ij
表示熵权判断矩阵b中第i个项目在第j个指标中的取值,得到标准化判断矩阵r;
72.步骤2033采用改进的熵权法计算区块链安全评估指标模型中指标的信息熵值ej,根据熵值求解熵权指标权重uj;
73.熵值指标权重计算流程包括:计算指标的信息熵值ej,计算方式为:其中,f
ij
表示第j个指标下第i个项目所得指标权重,f
ij
的计算方式为:其中,r
ij
表示标准化判断矩阵r中的第i行第j列的取值;根据熵值求解熵权指标权重uj,计算方式为:其中,ej表示指标的信息熵值。
74.步骤2034将所得的熵权指标权重u对步骤202得到的层次指标权重w进行修正,得到修正后指标权重θ,计算方式为:θ=ρw+(1-ρ)u,其中ρ表示权重因子。
75.步骤204对修正后的安全指标权重应用改进的优劣解距离法,得到区块链的安全评分;
76.步骤2041采用步骤203所得的熵权判断矩阵b进行数据指标同趋势化处理,从而将原始数据指标的方向一致化,得到正向化判断矩阵x;
77.本发明实施案例中,正向指标是指标值越大评价越好的指标,逆向指标是指标值越小评价越好的指标,适度指标是指标值越接近某个值越好的指标,同趋势化处理的目的在于将所有指标都转化为正向指标,使不同特征的指标具有相同的数值方向。
78.步骤2042采用余弦距离度量的向量规范化方法对正向化判断矩阵x进行归一化处理,计算方式为:其中,x
ij
表示正向化判断矩阵x中第i个项目在第j个指标中的取值,从而得到归一化处理后的标准化矩阵z;
79.步骤2043计算评价指标与最优向量、最劣向量的接近程度,计算方式分别为:其中,θj表示步骤3所得的修正后指标权重,表示最优向量,由标准化矩阵z中每列元素的最大值构成,表示最劣向量,由标准化矩阵z中每列元素的最小值构成,z
ij
表示标准化矩阵z中第i个项目在第j个指标中的取值;
80.步骤2044采用评价对象与最优方案贴近程度的方式求得区块链安全评分ci,计算方式为:ci值越大表明被测区块链项目的安全性越高。
81.步骤205根据步骤204所得到的安全评分结果,得到区块链的安全评估等级。
82.为验证本方法的有效性,搜集了20个知名公有链项目作为实验对象,将本方法与区块链评测机构tokeninsight的评价结果进行了对比。图5展示了将本发明中层次结构指标模型应用于区块链项目得到的安全指标取值,图6展示了利用区块链项目的安全指标计算得出的熵权指标权重,图7展示了本发明方法对被测区块链项目的安全评估结果,图8展示了tokeninsight对被测区块链项目的安全评价结果。图9展示了本发明与tokeninsight
对相同区块链项目的评估精确度对比。结果显示,本发明方法对区块链的安全评估与权威第三方区块链评测机构的评价结果相比具有高度的一致性,验证了本发明所用模型的可行性和提出方法的有效性。
83.以上所述仅用于清楚表述本发明具体实施例,并不用于限定保护范围,在不违背本发明实质内容和精神前提下,所作任何修改、润饰等都将落入本发明保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1