Blockchain security assessment method and device
By constructing evaluation indicators and weight matrix, the problem of blockchain security assessment accuracy is solved, and security assessment results with higher confidence are achieved.
Patent Information
- Application Number
- CN202110274987.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-15
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2041-03-15
AI Technical Summary
The existing technology lacks a method to conduct accurate security assessment of blockchains, and it is impossible to effectively determine the ability of blockchains to respond to security risks.
By determining multiple sets of evaluation indicators, their weight vectors and evaluation matrices, based on the importance of evaluation indicators and the associated security event attributes, a third weight vector and evaluation matrix are constructed, and a blockchain security evaluation is performed, and the security evaluation score is calculated. to determine the safety level.
This improves the accuracy and confidence of blockchain security assessment, making the blockchain security assessment results more reliable and accurate.
Smart Images

Figure CN115080976B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of blockchain, and in particular to a method and device for security assessment of blockchain. Background Art
[0002] Blockchain technology has been widely used in finance, Internet of Things, public services, digital copyright, insurance and other fields. At the same time, blockchain also faces various security risks.
[0003] In the related art, the ability of blockchain to cope with security risks can be determined by conducting security assessment on blockchain. However, there is no accurate way to conduct security assessment on blockchain. Summary of the invention
[0004] In order to solve the above problems, the embodiments of the present disclosure propose the following solutions.
[0005] According to one aspect of an embodiment of the present disclosure, a security assessment method for a blockchain is provided, comprising: determining at least one group of assessment indicators and multiple security levels for security assessment of the blockchain; determining a first weight vector for each group of assessment indicators, wherein different elements in the first weight vector are determined based on the importance of different assessment indicators in the group of assessment indicators; determining a second weight vector for each group of assessment indicators, wherein different elements in the second weight vector are determined based on security events associated with different assessment indicators in the group of assessment indicators; determining a third weight vector for each group of assessment indicators based on the first weight vector and the second weight vector of the group of assessment indicators; determining an evaluation matrix for each group of assessment indicators, wherein elements in the same row of the evaluation matrix correspond to the same assessment indicator in the group of assessment indicators, elements in the same column of the evaluation matrix correspond to the same security level in the multiple security levels, and elements in each row of the evaluation matrix represent the weight of the assessment indicator corresponding to the row element belonging to each security level in the multiple security levels; and performing security assessment on the blockchain based on the third weight vector and the evaluation matrix.
[0006] In some embodiments, determining the second weight vector for each group of evaluation indicators includes: obtaining attributes of security events associated with each evaluation indicator in each group of evaluation indicators, the attributes including at least one of the frequency and severity of occurrence of security events; and determining the second weight vector for the group of evaluation indicators based on the attributes.
[0007] In some embodiments, determining the second weight vector of the group of evaluation indicators based on the attributes includes: preferentially determining the second weight vector according to the severity of the security incident for each evaluation indicator, wherein the higher the severity of the security incident, the larger the element corresponding to the evaluation indicator; when the severity of the security incidents is the same, determining the second weight vector according to the frequency of occurrence of the security incidents, wherein the higher the frequency of the security incidents, the larger the element corresponding to the evaluation indicator.
[0008] In some embodiments, determining the third weight vector of each group of evaluation indicators based on the first weight vector and the second weight vector of the group of evaluation indicators includes: performing weighted summation on the first weight vector and the second weight vector of each group of evaluation indicators to obtain the third weight vector of the group of evaluation indicators.
[0009] In some embodiments, the at least one group of evaluation indicators includes a first group of evaluation indicators and a plurality of second groups of evaluation indicators, and each evaluation indicator in the first group of evaluation indicators includes a corresponding one of the plurality of second groups of evaluation indicators.
[0010] In some embodiments, performing a security assessment on a blockchain based on a third weight vector and an evaluation matrix includes: multiplying the third weight vector of each second group of evaluation indicators in the plurality of second groups of evaluation indicators by the evaluation matrix to obtain a sub-evaluation vector of the second group of evaluation indicators, wherein the evaluation matrix is an M×N matrix, M is the number of evaluation indicators in each second group of evaluation indicators and the number of elements in the third weight vector, N is the number of the plurality of security levels, the i-th row element in the evaluation matrix and the i-th element in the third weight vector correspond to the same evaluation indicator, 1≤i≤M; constructing a sub-evaluation matrix, the sub Elements in different rows of the evaluation matrix are different sub-evaluation vectors; the third weight vector of the first group of evaluation indicators is multiplied by the sub-evaluation matrix to obtain the evaluation vector of the blockchain, wherein the sub-evaluation matrix is an m×N matrix, m is the number of evaluation indicators in the first group of evaluation indicators and the number of elements in the third weight vector of the first group of evaluation indicators, the second group of evaluation indicators corresponding to the j-th row element in the sub-evaluation matrix is the same as the second group of evaluation indicators included in the evaluation indicator corresponding to the j-th element in the third weight vector of the first group of evaluation indicators, 1≤j≤m; security assessment of the blockchain is performed based on the evaluation vector.
[0011] In some embodiments, the method also includes: determining a security level vector, wherein different elements in the security level vector correspond to different security levels; multiplying the evaluation vector by the column vector of the security level vector to obtain a security evaluation score of the blockchain, wherein the kth element in the evaluation vector and the kth element in the security level vector correspond to the same security level, 1≤k≤N; and determining the security level of the blockchain based on the security evaluation score.
[0012] In some embodiments, different security levels correspond to different score segments, and each element in the security level vector is a score value in the corresponding score segment.
[0013] In some embodiments, the fractional value is an intermediate value.
[0014] In some embodiments, determining the first weight vector for each group of evaluation indicators includes: determining multiple first weight sub-vectors for each group of evaluation indicators, different elements in each first weight sub-vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators; and determining the quotient of the sum of the multiple first weight sub-vectors for each group of evaluation indicators and the number of the multiple first weight sub-vectors as the first weight vector for the group of evaluation indicators.
[0015] In some embodiments, determining the first weight vector of each group of evaluation indicators includes: constructing a judgment matrix for each group of evaluation indicators, wherein the same row elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators, and the same column elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators, wherein each element is determined based on the relative importance between two evaluation indicators corresponding to the row and column to which the element belongs; determining a first eigenvector of an eigenroot of the judgment matrix for each group of evaluation indicators; normalizing the first eigenvector to obtain a second eigenvector; determining the second eigenvector that satisfies the following conditions as the first weight vector of the group of evaluation indicators,
[0016]
[0017] Among them, λ represents the characteristic root, n is the number of rows in the judgment matrix, and RI is the random consistency index.
[0018] In some embodiments, the eigenvalue is the largest eigenvalue among all eigenvalues of the judgment matrix.
[0019] According to another aspect of an embodiment of the present disclosure, a security assessment device for a blockchain is provided, comprising: a first determination module, configured to determine at least one group of assessment indicators and multiple security levels for security assessment of the blockchain; a second determination module, configured to determine a first weight vector for each group of assessment indicators, wherein different elements in the first weight vector are determined based on the importance of different assessment indicators in the group of assessment indicators; a third determination module, configured to determine a second weight vector for each group of assessment indicators, wherein different elements in the second weight vector are determined based on security events associated with different assessment indicators in the group of assessment indicators; a fourth determination module, configured to determine a third weight vector for each group of assessment indicators based on the first weight vector and the second weight vector for each group of assessment indicators; a fifth determination module, configured to determine an evaluation matrix for each group of assessment indicators, wherein the same row elements in the evaluation matrix correspond to the same assessment indicator in the group of assessment indicators, the same column elements in the evaluation matrix correspond to the same security level in the multiple security levels, and each row element in the evaluation matrix represents the weight of the assessment indicator corresponding to the row element belonging to each security level in the multiple security levels; and an assessment module, configured to perform security assessment on the blockchain based on the third weight vector and the evaluation matrix.
[0020] According to another aspect of an embodiment of the present disclosure, a blockchain security assessment device is provided, comprising: a memory; and a processor coupled to the memory, wherein the processor is configured to execute the method described in any one of the above embodiments based on instructions stored in the memory.
[0021] According to another aspect of the embodiments of the present disclosure, a computer-readable storage medium is provided, comprising computer-executable instructions, wherein when the computer-executable instructions are executed by one or more processors, the one or more processors execute the method described in any one of the above embodiments.
[0022] In the disclosed embodiment, the first weight vector and the second weight vector are determined based on the importance of the evaluation index and the security events associated with the evaluation index, and then the third weight vector is determined based on the first weight vector and the second weight vector, so that a third weight vector with high confidence can be obtained. The security assessment of the blockchain based on the third weight vector and the evaluation matrix can make the security assessment result of the blockchain more accurate. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0024] Figure 1 is a flowchart of a security assessment method for a blockchain according to some embodiments of the present disclosure;
[0025] Figure 2 is a flowchart of determining a first weight vector for each group of evaluation indicators according to some embodiments of the present disclosure;
[0026] Figure 3 are examples of multiple groups of evaluation indicators determined according to some embodiments of the present disclosure;
[0027] Figure 4 is a flowchart of performing security assessment on a blockchain based on a third weight vector and an evaluation matrix according to some embodiments of the present disclosure;
[0028] Figure 5 is a schematic diagram of the structure of a security assessment device for a blockchain according to some embodiments of the present disclosure;
[0029] Figure 6 It is a structural diagram of a security assessment device for a blockchain according to other embodiments of the present disclosure. DETAILED DESCRIPTION
[0030] The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present disclosure.
[0031] Unless specifically stated otherwise, the relative arrangement of components and steps, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present disclosure.
[0032] At the same time, it should be understood that for the convenience of description, the sizes of the various parts shown in the drawings are not drawn according to the actual proportional relationship.
[0033] Technologies, methods, and apparatus known to ordinary technicians in the relevant field may not be discussed in detail, but where appropriate, such technologies, methods, and apparatus should be considered part of the authorization specification.
[0034] In all examples shown and discussed herein, any specific values should be interpreted as merely exemplary and not as limiting. Therefore, other examples of the exemplary embodiments may have different values.
[0035] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.
[0036] Figure 1 It is a flowchart of a blockchain security assessment method according to some embodiments of the present disclosure.
[0037] like Figure 1 As shown, the security assessment method of blockchain includes steps 102 to 112.
[0038] In step 102, at least one set of evaluation indicators and multiple security levels for performing security evaluation on the blockchain are determined.
[0039] Here, a set of evaluation indicators includes multiple evaluation indicators. In some embodiments, each evaluation indicator is an indicator for evaluating a specific security capability of a certain aspect of the blockchain. For example, a set of evaluation indicators can be determined, and the set of evaluation indicators can include multiple evaluation indicators such as resource monitoring, permission management, and physical device security.
[0040] In some embodiments, the at least one set of evaluation indicators determined includes a first set of evaluation indicators and a plurality of second sets of evaluation indicators. Each evaluation indicator in the first set of evaluation indicators includes a corresponding second set of evaluation indicators in the plurality of second sets of evaluation indicators. Figure 3 Give examples of determining multiple sets of evaluation metrics.
[0041] The security level can be used to represent the security assessment result of the blockchain. The multiple security levels can include, for example, five security levels (e.g., "poor", "poor", "medium", "good", and "good"). In some embodiments, the more security levels determined, the more accurate the security assessment result of the blockchain that can be determined.
[0042] In step 104, a first weight vector for each group of evaluation indicators is determined. Here, different elements in the first weight vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators.
[0043] It should be understood that different elements in the first weight vector of each group of evaluation indicators correspond one-to-one to different evaluation indicators in the group of evaluation indicators, and the weight of the evaluation indicator corresponding to the element in the group of evaluation indicators can be reflected by the numerical value of the element.
[0044] In some embodiments, the importance of the evaluation index can be determined based on the security requirements of the application scenario of the blockchain. For example, if the application scenario of the blockchain involves a large number of physical devices, the importance of the evaluation index of physical device security is higher.
[0045] In some embodiments, the higher the importance of the evaluation indicator, the larger the value of the element corresponding to the evaluation indicator in the first weight vector.
[0046] In some embodiments, the sum of all elements in the first weight vector of each group of evaluation indicators is equal to 1.
[0047] In some embodiments, multiple first weight sub-vectors of each group of evaluation indicators can be determined, and the quotient of the sum of the multiple first weight sub-vectors of each group of evaluation indicators and the number of the multiple first weight sub-vectors is determined as the first weight vector of the group of evaluation indicators. It should be understood that, similar to the first weight vector, different elements in the first weight sub-vector are also determined based on the importance of different evaluation indicators in the group of evaluation indicators.
[0048] For example, multiple first weight sub-vectors determined by multiple experts based on their expert experience may be obtained, and the quotient of the sum of the multiple first weight sub-vectors determined based on the expert experience and the number of the multiple first weight sub-vectors may be determined as the first weight vector of the group of evaluation indicators. In this way, the first weight vector may be made more accurate.
[0049] The following text will combine Figure 2 Some implementations of determining the first weight vector are given.
[0050] In step 106, a second weight vector is determined for each group of evaluation indicators. Here, different elements in the second weight vector are determined based on security events associated with different evaluation indicators in the group of evaluation indicators.
[0051] The security incidents here refer to the security incidents that occurred in the blockchain collected during the testing or application of the blockchain. The same security incident can be associated with one or more evaluation indicators.
[0052] It should be understood that, similar to the first weight vector, different elements in the second weight vector of each group of evaluation indicators also correspond one-to-one to different evaluation indicators in the group of evaluation indicators, and the weight of the evaluation indicator corresponding to the element in the group of evaluation indicators can be reflected by the numerical size of the element.
[0053] In some embodiments, the second weight vector of each group of evaluation indicators may be determined by obtaining an attribute of a security event associated with each evaluation indicator in each group of evaluation indicators and based on the attribute.
[0054] In some embodiments, the attributes of the security event include at least one of the frequency and severity of the security event.
[0055] For example, the frequency of security events associated with each evaluation indicator in each group of evaluation indicators can be obtained, and the second weight vector of the group of evaluation indicators can be determined based on the frequency. In some embodiments, the higher the frequency of security events, the greater the value of the element corresponding to the evaluation indicator associated with the security event in the second weight vector.
[0056] For another example, the severity of the security event associated with each evaluation indicator in each group of evaluation indicators can be obtained, and the second weight vector of the group of evaluation indicators can be determined based on the severity. In some embodiments, the higher the severity of the security event, the greater the value of the element corresponding to the evaluation indicator associated with the security event in the second weight vector.
[0057] For another example, the second weight vector of each group of evaluation indicators may be determined based on the frequency and severity of the security events associated with each evaluation indicator in each group of evaluation indicators.
[0058] For this implementation, in some embodiments, the second weight vector can be determined preferentially according to the severity of the security incidents for each evaluation indicator, and when the severity of the security incidents is the same, the second weight vector can be determined according to the frequency of occurrence of the security incidents, so that the determined second weight vector can be more accurate.
[0059] In step 108 , a third weight vector of each group of evaluation indicators is determined based on the first weight vector and the second weight vector of the group of evaluation indicators.
[0060] It should be understood that, similar to the first weight vector and the second weight vector, different elements in the third weight vector of each group of evaluation indicators also correspond one-to-one to different evaluation indicators in the group of evaluation indicators, and can reflect the weight of the evaluation indicator corresponding to the element in the group of evaluation indicators.
[0061] In some embodiments, the first weight vector and the second weight vector of each group of evaluation indicators can be weighted and summed to obtain a third weight vector of the group of evaluation indicators. The third weight vector obtained by such weighted summation involves both the importance of blockchain evaluation indicators (for example, the application scenarios of blockchain) and the actual security assurance capabilities of blockchain. In this way, the confidence of the third weight vector can be higher.
[0062] For example, the first weight vector of a set of evaluation indicators is (0.5, 0.2, 0.3), and the second weight vector is (0.4, 0.2, 0.4). A weight of 0.6 can be assigned to the first weight vector, and a weight of 0.4 can be assigned to the second weight vector. In this way, the third weight vector of the set of evaluation indicators can be calculated as 0.6×(0.5, 0.2, 0.3)+0.4×(0.4, 0.2, 0.4)=(0.46, 0.2, 0.34).
[0063] In step 110, an evaluation matrix for each group of evaluation indicators is determined. Here, the same row element in the evaluation matrix corresponds to the same evaluation indicator in the group of evaluation indicators, the same column element in the evaluation matrix corresponds to the same security level in multiple security levels, and each row element in the evaluation matrix represents the weight of the evaluation indicator corresponding to the row element belonging to each security level in the multiple security levels.
[0064] For example, the evaluation matrix of each group of evaluation indicators can be an M×N matrix, where M is the number of evaluation indicators in the group of evaluation indicators, N is the number of security levels, and the element A in the evaluation matrix is xy It can be said that the evaluation index corresponding to the xth row belongs to the weight of the security level corresponding to the yth column, 1≤x≤M, 1≤y≤N.
[0065] In some embodiments, an evaluation matrix for each set of evaluation indicators may be determined based on attributes of security events associated with different evaluation indicators in the set of evaluation indicators.
[0066] The following is an example of three security levels (e.g., "poor", "medium", and "good") and a set of evaluation indicators including two evaluation indicators (e.g., communication security and network resource security). Assuming that the frequency of security events associated with communication security is very low, while the frequency of security events associated with network resource security is very high, the determined evaluation matrix can be The first row in the evaluation matrix corresponds to communication security, the second row corresponds to network resource security, the first column in the evaluation matrix corresponds to "poor", the second column corresponds to "medium", and the third column corresponds to "good".
[0067] In some embodiments, multiple sub-evaluation matrices of each group of evaluation indicators can be determined based on the attributes of security events associated with different evaluation indicators in the group of evaluation indicators, and the sum of the multiple sub-evaluation matrices can be determined as the evaluation matrix of the group of evaluation indicators.
[0068] For example, multiple sub-evaluation matrices determined by multiple experts based on their expert experience may be obtained, and the sum of the multiple sub-evaluation matrices determined based on their expert experience may be determined as the evaluation matrix of the group of evaluation indicators. In this way, the evaluation matrix may be made more accurate.
[0069] In step 112, a security assessment is performed on the blockchain based on the third weight vector and the evaluation matrix.
[0070] As described above, the third weight vector of each group of evaluation indicators can reflect the weight of each evaluation indicator in each group of evaluation indicators. The evaluation matrix of each group of evaluation indicators can reflect the weight of each evaluation indicator in each group of evaluation indicators belonging to each security level. Based on the third weight vector and the evaluation matrix, the overall security assessment of the blockchain can be performed.
[0071] As some implementations, for example, when a set of evaluation indicators is determined, the third weight vector of the set of evaluation indicators and the evaluation matrix can be multiplied to obtain an evaluation vector of the set of evaluation indicators. The blockchain can be security evaluated based on the evaluation vector.
[0072] As other implementations, a security assessment score of the blockchain can be obtained based on the above assessment vector. In some embodiments, the blockchain can be security assessed based on the security assessment score. In other embodiments, the security level of the blockchain can be determined based on the security assessment score.
[0073] Will be later Figure 4 Some specific implementation methods of security assessment of blockchain based on the third weight vector and evaluation matrix are described in the text.
[0074] In the above embodiment, the first weight vector and the second weight vector are determined based on the importance of the evaluation index and the security events associated with the evaluation index, and then the third weight vector is determined based on the first weight vector and the second weight vector, so that a third weight vector with high confidence can be obtained. The security assessment of the blockchain based on the third weight vector and the evaluation matrix can make the security assessment result of the blockchain more accurate.
[0075] Figure 2 is a flowchart of determining a first weight vector for each group of evaluation indicators according to some embodiments of the present disclosure.
[0076] like Figure 2 As shown, the implementation method of determining the first weight vector of each group of evaluation indicators includes steps 202 to 210.
[0077] In step 202, a judgment matrix for each group of evaluation indicators is constructed. Here, the same row elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators, and the same column elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators. Each element is determined based on the relative importance between the two evaluation indicators corresponding to the row and column to which the element belongs.
[0078] In some embodiments, the relative importance of two evaluation indicators may be represented based on multiple score values.
[0079] For example, three integer score values from 1 to 3 may be used to represent the relative importance of two evaluation indicators.
[0080] The following uses the two evaluation indicators of physical environment security and resource monitoring as examples for explanation. "1" can indicate that physical environment security is equally important as resource monitoring; "2" can indicate that physical environment security is slightly more important than resource monitoring (i.e., resource monitoring is slightly less important than physical environment security, which can be represented by "1 / 2"); "3" can indicate that physical environment security is significantly more important than resource monitoring (i.e., resource monitoring is significantly less important than physical environment security, which can be represented by "1 / 3").
[0081] If it is determined that the importance of physical environment security is slightly more important than resource monitoring, a judgment matrix can be constructed The first row and first column elements in the judgment matrix correspond to physical environment security, and the second row and second column elements correspond to resource monitoring.
[0082] In step 204, a first eigenvector of a eigenroot of a judgment matrix of each group of evaluation indicators is determined.
[0083] In some embodiments, the eigenvalue in step 204 is the largest eigenvalue among all eigenvalues of the judgment matrix.
[0084] In step 206, the first eigenvector is normalized to obtain a second eigenvector.
[0085] In step 208, it is determined whether the second eigenvector satisfies the condition:
[0086]
[0087] Among them, λ represents the characteristic root, n is the number of rows in the judgment matrix, and RI is the random consistency index.
[0088] In some embodiments, there is a corresponding relationship between the random consistency index RI and n. For example, the corresponding relationship between n and RI can be as shown in Table 1.
[0089] Table 1
[0090] n 1 2 3 4 5 6 7 8 9 10 RI 0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49
[0091] In step 210, the second feature vector that meets the condition is determined as the first weight vector of the group of evaluation indicators.
[0092] In the above implementation, the importance of each evaluation indicator in a set of evaluation indicators is reflected by means of a judgment matrix constructed based on the relative importance between two evaluation indicators, rather than directly comparing all the evaluation indicators together to determine the importance of each evaluation indicator. This can make the determination of the importance of the evaluation indicators more accurate, thereby making the first weight vector more accurate.
[0093] Figure 3 are examples of multiple groups of evaluation indicators determined according to some embodiments of the present disclosure.
[0094] like Figure 3 As shown, the multiple groups of evaluation indicators include two layers of evaluation indicators, the first layer of evaluation indicators includes a first group of evaluation indicators, and the second layer of evaluation indicators includes multiple second groups of evaluation indicators. Each evaluation indicator in the first group of evaluation indicators includes a corresponding second group of evaluation indicators in the multiple second groups of evaluation indicators.
[0095] like Figure 3 As shown, for example, the first group of evaluation indicators includes six evaluation indicators (i.e., management and operation security, smart contract security, consensus security, encryption security, data security and network security). Each evaluation indicator in the first group of evaluation indicators also includes a second group of evaluation indicators. For example, management and operation security includes a second group of evaluation indicators, and the second group of evaluation indicators includes physical environment security, business management security, resource monitoring, authority management and auditability. For another example, the second group of evaluation indicators for smart contract security includes operating environment security, contract implementation security, and contract interaction security; the second group of evaluation indicators for consensus security includes Byzantine fault tolerance, anti-attack, and switchable consensus mechanism; the second group of evaluation indicators for encryption security includes national encryption, random number security, key strength security, and secret key storage security; the second group of evaluation indicators for data security includes data confidentiality, data integrity, and data availability; network security includes network resource security and communication security.
[0096] It should be understood that the following are given for illustrative purposes and not for limiting purposes. Figure 3 The determined evaluation indicators may only include Figure 3 Some of the evaluation indicators shown may also include other various evaluation indicators not shown.
[0097] Figure 4 It is a flowchart of performing security assessment on a blockchain based on a third weight vector and an evaluation matrix according to some embodiments of the present disclosure.
[0098] like Figure 4 As shown, the implementation method of performing security assessment on the blockchain based on the third weight vector and the evaluation matrix may include steps 402 to 412.
[0099] In step 402, the third weight vector of each second group of evaluation indicators in the plurality of second groups of evaluation indicators is multiplied by the evaluation matrix to obtain a sub-evaluation vector of the second group of evaluation indicators.
[0100] As described above, the evaluation matrix of each second group of evaluation indicators is, for example, an M×N matrix, where M is the number of evaluation indicators in each second group of evaluation indicators and the number of elements in the third weight vector, and N is the number of multiple security levels. It should be noted that the i-th row element in the evaluation matrix and the i-th element in the third weight vector correspond to the same evaluation indicator, 1≤i≤M.
[0101] It can be understood that the number of elements in the sub-evaluation vector of each second group of evaluation indicators obtained is N, and different elements correspond to different security levels.
[0102] In step 404, a sub-evaluation matrix is constructed. Here, elements in different rows of the sub-evaluation matrix are different sub-evaluation vectors.
[0103] For example, the sub-evaluation vectors of the m second group of evaluation indicators are R1, R2, ..., R m , then the constructed sub-evaluation matrix R can be expressed as:
[0104]
[0105] The sub-evaluation matrix R as described above is an m×N matrix, where m is the number of the second group evaluation indicators and the number of sub-evaluation vectors. It should be understood that the elements in the same column of the sub-evaluation matrix correspond to the same security level.
[0106] In step 406, the third weight vector of the first set of evaluation indicators is multiplied by the sub-evaluation matrix to obtain an evaluation vector of the blockchain.
[0107] As described above, for example, the sub-evaluation matrix is an m×N matrix, where m is the number of evaluation indicators in the first group of evaluation indicators and the number of elements in the third weight vector of the first group of evaluation indicators. It should be noted that the second group of evaluation indicators corresponding to the j-th row element in the sub-evaluation matrix is the same as the second group of evaluation indicators included in the evaluation indicator corresponding to the j-th element in the third weight vector of the first group of evaluation indicators, 1≤j≤m.
[0108] It can be understood that the number of elements in the evaluation vector of the obtained blockchain is N, and different elements correspond to different security levels. Each element in the evaluation vector can represent the weight of the blockchain belonging to the corresponding security level.
[0109] In some implementations, a security assessment of the blockchain may be performed based on the assessment vector.
[0110] In step 408, a security level vector is determined. Here, different elements in the security level vector correspond to different security levels. It can be understood that the number of elements in the security level vector is N.
[0111] In some embodiments, different security levels correspond to different score segments, and each element in the security level vector is a score value in the corresponding score segment. As some implementations, each element in the security level vector is an intermediate value in the corresponding score segment, so that each element in the security level vector can more accurately represent the corresponding security level.
[0112] The following example is used to determine three security levels (e.g., "poor", "medium", and "good"). The three security levels can correspond to three score segments respectively. For example, the three score segments can be [0-60), [60-80), and [80-100]. The middle value of the three score segments can be taken to form a security level vector, that is, (30, 70, 90).
[0113] In step 410, the evaluation vector is multiplied by the column vector of the security level vector to obtain a security evaluation score of the blockchain.
[0114] As mentioned above, the number of elements in the evaluation vector and the security level vector is N. It should be noted that the kth element in the evaluation vector and the kth element in the security level vector correspond to the same security level, 1≤k≤N.
[0115] The following is an example of the number of security levels N=3 (for example, the security levels are "poor", "medium", and "good"). Assuming the evaluation vector is (N1, N2, N3) and the security level vector is (N4, N5, N6), then N1 and N4 can correspond to "poor", N2 and N5 can correspond to "medium", and N3 and N6 can correspond to "good". It can be understood that the security evaluation score = N1N4+N2N5+N3N6.
[0116] At step 412, a security level of the blockchain is determined based on the security assessment score.
[0117] For example, a score segment to which the security assessment score belongs can be determined, and the security level corresponding to the score segment is used as the security level of the blockchain.
[0118] In the above embodiment, by determining a security level vector for the security level and obtaining a security assessment score of the blockchain based on the security level vector, the security assessment result of the blockchain can be made more intuitive and accurate.
[0119] On the other hand, the evaluation vector or security assessment score of the blockchain as described above can be used as the security assessment result of the blockchain to guide the subsequent development of the blockchain, thereby improving the risk response capabilities of the blockchain.
[0120] The above embodiment is described by taking multiple groups of evaluation indicators as an example. It should be understood that when only one group of evaluation indicators is determined, the evaluation vector and security evaluation score of the blockchain can also be obtained by referring to this implementation method.
[0121] Figure 5 It is a structural diagram of a security assessment device for a blockchain according to some embodiments of the present disclosure.
[0122] like Figure 5 As shown, the blockchain security assessment device 500 includes a first determination module 501, a second determination module 502, a third determination module 503, a fourth determination module 504, a fifth determination module 505 and an assessment module 506.
[0123] The first determination module 501 is configured to determine at least one set of evaluation indicators and multiple security levels for security evaluation of the blockchain.
[0124] The second determination module 502 is configured to determine a first weight vector for each group of evaluation indicators, where different elements in the first weight vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators.
[0125] The third determination module 503 is configured to determine a second weight vector for each group of evaluation indicators, where different elements in the second weight vector are determined based on security events associated with different evaluation indicators in the group of evaluation indicators.
[0126] The fourth determination module 504 is configured to determine a third weight vector of each group of evaluation indicators based on the first weight vector and the second weight vector of the group of evaluation indicators.
[0127] The fifth determination module 505 is configured to determine an evaluation matrix for each group of evaluation indicators, wherein elements in the same row of the evaluation matrix correspond to the same evaluation indicator in the group of evaluation indicators, elements in the same column of the evaluation matrix correspond to the same security level in multiple security levels, and elements in each row of the evaluation matrix represent the weight of the evaluation indicator corresponding to the row element in each security level in the multiple security levels.
[0128] The evaluation module 506 is configured to perform a security evaluation on the blockchain based on the third weight vector and the evaluation matrix.
[0129] Figure 6 It is a structural diagram of a security assessment device for a blockchain according to other embodiments of the present disclosure.
[0130] like Figure 6As shown, the blockchain security assessment device 600 includes a memory 601 and a processor 602 coupled to the memory 601, and the processor 602 is configured to execute the blockchain security assessment method described in any one of the aforementioned embodiments based on the instructions stored in the memory 601.
[0131] The memory 601 may include, for example, a system memory, a fixed non-volatile storage medium, etc. The system memory may store, for example, an operating system, an application program, a boot loader, and other programs.
[0132] The security assessment device 600 of the blockchain may also include an input / output interface 603, a network interface 604, a storage interface 605, etc. These interfaces 603, 604, 605, and the memory 601 and the processor 602 may be connected, for example, via a bus 606. The input / output interface 603 provides a connection interface for input / output devices such as a display, a mouse, a keyboard, and a touch screen. The network interface 604 provides a connection interface for various networked devices. The storage interface 605 provides a connection interface for external storage devices such as SD cards and USB flash drives.
[0133] The solution provided by the embodiments of the present disclosure has strong universality. For example, by adjusting the evaluation indicators and corresponding weights for security evaluation of blockchain, it can be applied to different business scenarios.
[0134] The embodiments of the present disclosure further provide a computer-readable storage medium on which computer program instructions are stored. When the instructions are executed by a processor, the method of any one of the above embodiments is implemented.
[0135] So far, various embodiments of the present disclosure have been described in detail. In order to avoid obscuring the concept of the present disclosure, some details known in the art are not described. Based on the above description, those skilled in the art can fully understand how to implement the technical solution disclosed here.
[0136] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the blockchain security assessment device embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0137] In addition, in the description of the present disclosure, the terms “first”, “second”, etc. are only used for descriptive purposes and cannot be understood as indicating or implying relative importance and order.
[0138] Those skilled in the art will appreciate that the embodiments of the present disclosure may be provided as methods, systems, or computer program products. Therefore, the present disclosure may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present disclosure may take the form of a computer program product implemented on one or more computer-usable non-transient storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0139] The present disclosure is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present disclosure. It should be understood that the functions specified in one or more processes in the flowchart and / or one or more blocks in the block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the functions specified in the flowchart. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0140] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0141] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0142] Although some specific embodiments of the present disclosure have been described in detail by way of examples, it should be understood by those skilled in the art that the above examples are for illustration only and are not intended to limit the scope of the present disclosure. It should be understood by those skilled in the art that the above embodiments may be modified or some technical features may be replaced by equivalents without departing from the scope and spirit of the present disclosure. The scope of the present disclosure is defined by the appended claims.
Claims
1. A blockchain security assessment method, comprising: Determine at least one set of evaluation indicators and multiple security levels for security evaluation of blockchain; Determine a first weight vector for each group of evaluation indicators, wherein different elements in the first weight vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators; Determining a second weight vector for each group of evaluation indicators, different elements in the second weight vector are determined based on security events associated with different evaluation indicators in the group of evaluation indicators; Determine a third weight vector for each group of evaluation indicators based on the first weight vector and the second weight vector for the group of evaluation indicators; Determine an evaluation matrix for each group of evaluation indicators, wherein the same row elements in the evaluation matrix correspond to the same evaluation indicator in the group of evaluation indicators, the same column elements in the evaluation matrix correspond to the same security level in the multiple security levels, and each row element in the evaluation matrix represents the weight of the evaluation indicator corresponding to the row element belonging to each security level in the multiple security levels; The blockchain is security evaluated based on the third weight vector and the evaluation matrix.
2. The method according to claim 1, wherein: The second weight vector for determining each set of evaluation indicators includes: Obtaining an attribute of a security event associated with each evaluation indicator in each group of evaluation indicators, the attribute comprising at least one of a frequency and a severity of the security event; A second weight vector for the set of evaluation indicators is determined based on the attribute.
3. The method according to claim 2, wherein: Determining a second weight vector of the set of evaluation indicators based on the attribute includes: The second weight vector is determined preferentially according to the severity of the security event of each evaluation indicator, wherein the element corresponding to the evaluation indicator with a higher severity of the security event is larger; When the severity of security events is the same, the second weight vector is determined according to the frequency of occurrence of the security events, wherein the element corresponding to the evaluation indicator with a higher frequency of security events is larger.
4. The method according to claim 1, wherein: Determining a third weight vector of each group of evaluation indicators based on the first weight vector and the second weight vector of the group of evaluation indicators includes: A weighted sum is performed on the first weight vector and the second weight vector of each group of evaluation indicators to obtain a third weight vector of the group of evaluation indicators.
5. The method according to claim 1, wherein: The at least one group of evaluation indicators includes a first group of evaluation indicators and a plurality of second groups of evaluation indicators, and each evaluation indicator in the first group of evaluation indicators includes a corresponding one of the plurality of second groups of evaluation indicators.
6. The method according to claim 5, wherein: The security assessment of blockchain based on the third weight vector and evaluation matrix includes: Multiplying the third weight vector of each second group of evaluation indicators in the plurality of second groups of evaluation indicators by the evaluation matrix to obtain a sub-evaluation vector of the second group of evaluation indicators, wherein the evaluation matrix is an M×N matrix, M is the number of evaluation indicators in each second group of evaluation indicators and the number of elements in the third weight vector, N is the number of the plurality of security levels, the i-th row element in the evaluation matrix and the i-th element in the third weight vector correspond to the same evaluation indicator, 1≤i≤M; Constructing a sub-evaluation matrix, wherein elements in different rows of the sub-evaluation matrix are different sub-evaluation vectors; Multiplying the third weight vector of the first group of evaluation indicators by the sub-evaluation matrix to obtain an evaluation vector of the blockchain, wherein the sub-evaluation matrix is an m×N matrix, m is the number of evaluation indicators in the first group of evaluation indicators and the number of elements in the third weight vector of the first group of evaluation indicators, and the second group of evaluation indicators corresponding to the j-th row element in the sub-evaluation matrix is the same as the second group of evaluation indicators included in the evaluation indicator corresponding to the j-th element in the third weight vector of the first group of evaluation indicators, and 1≤j≤m; Conduct security assessment of blockchain based on assessment vectors.
7. The method according to claim 6, further comprising: Determining a security level vector, wherein different elements in the security level vector correspond to different security levels; Multiply the evaluation vector by the column vector of the security level vector to obtain the security evaluation score of the blockchain, where the kth element in the evaluation vector and the kth element in the security level vector correspond to the same security level, 1≤k≤N; Determine the security level of the blockchain based on the security assessment score.
8. The method according to claim 7, wherein: Different security levels correspond to different score segments, and each element in the security level vector is a score value in the corresponding score segment.
9. The method according to claim 8, wherein: The fractional values stated are median values.
10. The method according to claim 1, wherein: Determine the first weight vector for each set of evaluation indicators including: Determine a plurality of first weight sub-vectors for each group of evaluation indicators, wherein different elements in each first weight sub-vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators; The quotient of the sum of the plurality of first weight sub-vectors of each group of evaluation indicators and the number of the plurality of first weight sub-vectors is determined as the first weight vector of the group of evaluation indicators.
11. The method according to claim 1, wherein: Determine the first weight vector for each set of evaluation indicators including: Constructing a judgment matrix for each group of evaluation indicators, wherein the same row elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators, and the same column elements in the judgment matrix correspond to the same evaluation indicator in the group of evaluation indicators, wherein each element is determined based on the relative importance between the two evaluation indicators corresponding to the row and column to which the element belongs; Determine the first eigenvector of a characteristic root of the judgment matrix of each group of evaluation indicators; Normalizing the first eigenvector to obtain a second eigenvector; The second feature vector satisfying the following conditions is determined as the first weight vector of the group of evaluation indicators, Among them, λ represents the characteristic root, n is the number of rows in the judgment matrix, and RI is the random consistency index.
12. The method according to claim 11, wherein: The eigenvalue is the largest eigenvalue among all eigenvalues of the judgment matrix.
13. A blockchain security assessment device, comprising: A first determination module is configured to determine at least one set of evaluation indicators and multiple security levels for performing security evaluation on the blockchain; A second determination module is configured to determine a first weight vector for each group of evaluation indicators, wherein different elements in the first weight vector are determined based on the importance of different evaluation indicators in the group of evaluation indicators; A third determination module is configured to determine a second weight vector for each group of evaluation indicators, wherein different elements in the second weight vector are determined based on security events associated with different evaluation indicators in the group of evaluation indicators; A fourth determination module is configured to determine a third weight vector of each group of evaluation indicators based on the first weight vector and the second weight vector of the group of evaluation indicators; A fifth determination module is configured to determine an evaluation matrix for each group of evaluation indicators, wherein the same row elements in the evaluation matrix correspond to the same evaluation indicator in the group of evaluation indicators, the same column elements in the evaluation matrix correspond to the same security level in the multiple security levels, and each row element in the evaluation matrix represents the weight of the evaluation indicator corresponding to the row element belonging to each security level in the multiple security levels; The evaluation module is configured to perform a security evaluation on the blockchain based on the third weight vector and the evaluation matrix.
14. A blockchain security assessment device, comprising: Memory; and A processor coupled to the memory, the processor being configured to execute the method of any one of claims 1-12 based on instructions stored in the memory.
15. A computer-readable storage medium comprising computer-executable instructions, which, when executed by one or more processors, cause the one or more processors to perform the method of any one of claims 1-12.
