Blockchain-driven distributed privacy data storage and access control method and system

By conducting semantic analysis and sensitivity evaluation of private data, combining Blonde filter and bilinear pairing encryption algorithm, access keys are generated dynamically and a trust network of authenticated nodes is built, which solves the flexibility and security issues of privacy data storage and access control in the existing technology, and achieves efficient data integrity verification and trusted authorization.

CN119783138BActive Publication Date: 2025-08-29NOVNET COMPUTING SYST TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510264900.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-07
Publication Date
2025-08-29
Estimated Expiration
2045-03-07

AI Technical Summary

Technical Problem

The existing technology lacks a quantitative evaluation mechanism for the sensitivity to privacy data, and it is impossible to dynamically adjust access permissions based on visitors' behavior. The traditional data integrity verification method has a large calculation overhead, and the authorization process is low in credibility, making it difficult to prevent malicious behavior.

Method used

Data sensitivity is evaluated through semantic analysis, a hierarchical integrity proof tree is constructed using a Bloom filter, and a bilinear pairing encryption algorithm is used to encrypt data shards, and a dynamic hierarchical access key is generated based on the visitor's behavior characteristics. An authenticated node trust network is built for key distribution and authorization, and a threshold signature scheme for grid passwords is used to ensure the credibility of the authorization process.

Benefits of technology

It realizes dynamic adjustment of access control based on data sensitivity and visitor behavior, improves data security and integrity verification efficiency, ensures the reliability and transparency of the authorization process, reduces data access delays and provides traceable operation records.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119783138B_ABST
    Figure CN119783138B_ABST
Patent Text Reader

Abstract

The present invention provides a blockchain-driven distributed privacy data storage and access control method and system, which relates to the field of access control technology. The method comprises the following steps: sensitivity scoring and sharding of privacy data, organizing data fingerprints into a Bloom filter to construct an integrity proof tree, encrypting the data shards and submitting them to a distributed storage network, and generating a record of the data fingerprint in the blockchain; when accessing data, dynamically generating hierarchical access keys based on visitor behavior characteristics, performing threshold segmentation and distributing them to an authorized node group; the authorized node group generates an authorization certificate using a threshold signature scheme based on a lattice cipher and writes the certificate into the blockchain; the visitor uses the authorization certificate to obtain the data fingerprint and encrypted data shards, and after verifying the integrity, decrypts the data shards corresponding to the permission level through secure multi-party computation to reconstruct the key components.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of access control technology, and in particular to a blockchain-driven distributed privacy data storage and access control method and system. Background Art

[0002] As the value of data continues to rise, the secure storage and controlled sharing of private data have become important research topics. Traditional centralized storage models present single points of failure, making it difficult to guarantee data availability and integrity. Blockchain technology, with its decentralized and tamper-proof properties, combined with distributed storage networks, can provide a more secure and reliable data storage solution. However, in practical applications, implementing secure storage and fine-grained access control for private data based on blockchain still faces numerous technical challenges.

[0003] Existing technologies still have shortcomings. There is a lack of a quantitative assessment mechanism for the sensitivity of privacy data, and it is impossible to adopt differentiated protection strategies based on data sensitivity; existing access control schemes often use static key distribution mechanisms, which make it difficult to dynamically adjust access rights based on visitor behavior; traditional data integrity verification methods have high computational overhead and low verification efficiency; the authorization process in existing schemes has low credibility, making it difficult to prevent malicious behavior of authorized nodes.

[0004] In summary, there is an urgent need to combine blockchain and distributed storage to achieve secure storage of private data; implement differentiated access control based on data sensitivity; provide an efficient data integrity verification mechanism; and build a trusted authorization mechanism. This invention can solve the problems in the existing technology. Summary of the Invention

[0005] The embodiments of the present invention provide a blockchain-driven distributed privacy data storage and access control method and system, which can solve the problems in the existing technology.

[0006] According to a first aspect of the embodiments of the present invention,

[0007] Provided is a blockchain-driven distributed privacy data storage and access control method, including:

[0008] Receive private data, perform semantic analysis on the private data to obtain a sensitivity score, and shard the private data based on the sensitivity score to obtain data shards; calculate a data fingerprint value for each data shard, organize the data fingerprint values ​​into a Bloom filter, and construct a hierarchical integrity proof tree based on the Bloom filter; encrypt the data shards using a bilinear pairing encryption algorithm to obtain encrypted data shards; submit the encrypted data shards and the integrity proof tree to a distributed storage network, and generate an attestation record of the data fingerprint in the blockchain;

[0009] Receive a data access request, extract visitor behavioral characteristics, obtain a behavioral risk score based on the visitor behavioral characteristics through deep learning, dynamically generate a hierarchical access key based on the behavioral risk score, and perform threshold segmentation on the hierarchical access key to obtain key components; build an authentication node trust network, select an authorized node group within the authentication node trust network based on a consensus algorithm; distribute key components within the authorized node group; collect authorization signatures from the authorized node group using a threshold signature scheme based on lattice cryptography; generate an authorization certificate containing the authorization signature, and write the authorization certificate into the blockchain;

[0010] Accept the visitor's request, read the corresponding authorization certificate, obtain the data fingerprint from the evidence record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network to verify the data integrity; obtain the key component from the authorized node group; execute the secure multi-party computing protocol to reorganize the key component to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shard of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score.

[0011] In an optional embodiment,

[0012] Calculate the data fingerprint value of each data shard, organize the data fingerprint value into a Bloom filter, and build a hierarchical integrity proof tree based on the Bloom filter, including:

[0013] A secure hash algorithm is used to calculate the data fingerprint value on the data slice, and an XOR operation is performed on the data fingerprint value to generate a check sequence;

[0014] Adaptively adjust the size of the Bloom filter according to the number of data fragments and the system security level, select multiple independent hash functions to process the data fingerprint value respectively, obtain multiple mapping positions, update the bits corresponding to the multiple mapping positions in the Bloom filter to valid values, determine the marking position, divide the check sequence into subsequences equal to the number of the marking positions in sequence, and store each subsequence in a one-to-one correspondence in one of the marking positions to form a check information matrix;

[0015] Dynamically adjust the partitioning granularity of the Bloom filter according to the distribution law of data sensitivity to obtain multiple data blocks of different sizes, each of which constitutes a leaf node, and calculate the weight coefficient of the corresponding leaf node based on the number of marked positions contained in each data block;

[0016] Perform weighted sorting on the leaf nodes, pair the leaf nodes whose weight coefficients are less than the similar weight threshold according to a preset first node weight threshold to form a node group, calculate the weighted hash connection value of the two leaf nodes in each node group to obtain a parent node, record the weight coefficient and the number of the mark position of the corresponding leaf node in the parent node, repeat the pairing until the root node is generated, and construct a hierarchical integrity proof tree;

[0017] According to the preset period, the nodes of the integrity proof tree are rebalanced. When the difference in the weight coefficients of the leaf nodes exceeds the preset second node weight threshold, the node reorganization is triggered. The weight coefficients are recalculated according to the number of marked positions contained in the reorganized nodes, and the subsequence of the corresponding marked positions in the Bloom filter is updated.

[0018] In an optional embodiment,

[0019] The encrypted data fragments obtained by encrypting the data fragments using the bilinear pairing encryption algorithm include:

[0020] selecting a system security parameter to obtain a prime order value, constructing a first cyclic group and a second cyclic group based on the prime order value, and verifying that the order of the first cyclic group and the order of the second cyclic group are equal;

[0021] Selecting a first generator in the first cyclic group, generating a system master private key using random number calculation, performing a scalar multiplication operation on the system master private key and the first generator to generate a system public parameter, and selecting a corresponding second generator in the second cyclic group;

[0022] Constructing a bilinear map, mapping elements of the first cyclic group and the second cyclic group to a target group, and determining a bilinear property of the target group and a bilinear map operation method;

[0023] Obtaining user identity information and current system time, concatenating the user identity information with the current system time to generate a space-time joint identifier, performing a secure hash operation, and mapping the space-time joint identifier to the first cyclic group to obtain a first mapping point;

[0024] receiving data to be encrypted, sharding the data to be encrypted according to a preset length to obtain a plurality of data shards, generating a random number for each of the data shards, and performing a bilinear pairing operation using the first mapping point and the second generator to generate a session key belonging to the target group;

[0025] A symmetric encryption operation is performed on the corresponding data slice using each of the session keys to obtain a ciphertext slice, a scalar multiplication operation is performed on each random number and the system public parameter to generate an encryption auxiliary parameter, and the ciphertext slice and the corresponding encryption auxiliary parameter are combined to form an encrypted data slice.

[0026] In an optional embodiment,

[0027] Dynamically generating a hierarchical access key based on the behavioral risk score, and performing threshold segmentation on the hierarchical access key to obtain key components includes:

[0028] receiving a behavioral risk score, wherein the behavioral risk score is a real number between 0 and 1;

[0029] Multiplying the behavior risk score by a preset maximum number of levels to obtain a product value, and rounding up the product value to obtain a level value of the hierarchical access key;

[0030] Obtaining a random salt value, concatenating the behavior risk score, the level value, and the random salt value in a preset order to obtain a concatenated value, and calculating the concatenated value using a secure hash function to obtain a hierarchical access key;

[0031] Generating a polynomial, wherein the highest degree of the polynomial is equal to a preset threshold value minus one, and a constant term of the polynomial is equal to the hierarchical access key;

[0032] Substituting consecutive integers starting from 1 into the polynomial in sequence to obtain a plurality of function values, and combining the consecutive integers and the corresponding function values ​​into a plurality of key components;

[0033] The level value and the behavior risk score are added to the key component to generate a key component with identification information.

[0034] In an optional embodiment,

[0035] Selecting an authorized node group in the authentication node trust network based on a consensus algorithm includes:

[0036] Obtaining the computing power index, online time ratio, and historical credit record of each authentication node in the authentication node trust network, summing the product of the computing power index and a first weight, the product of the online time ratio and a second weight, and the product of the historical credit record and a third weight to obtain the authentication node trust value of each authentication node;

[0037] Sorting the authentication nodes based on their authentication node trust values, selecting the authentication node with the highest authentication node trust value as the primary authentication node, and generating a pre-prepared message including a view number, a sequence number, and an information digest;

[0038] The master authentication node sends the pre-preparation message to other authentication nodes in the authentication node trust network, wherein the other authentication nodes are divided into different trust groups based on their respective authentication node trust values, wherein the authentication nodes whose authentication node trust values ​​are greater than a first preset threshold are divided into a high trust group, the authentication nodes whose authentication node trust values ​​are greater than a second preset threshold and less than the first preset threshold are divided into a medium trust group, and the authentication nodes whose authentication node trust values ​​are less than the second preset threshold are divided into a low trust group;

[0039] After receiving the pre-prepare message, the authentication node in the high-trust group verifies the continuity of the view number, the uniqueness of the sequence number, and the integrity of the information digest in the pre-prepare message. After the verification is successful, the authentication node generates a first prepare message and sends the first prepare message to the authentication nodes in the medium-trust group and the low-trust group.

[0040] The authentication node in the medium trust group receives the pre-prepare message and the first prepare message, verifies the consistency of the pre-prepare message and the first prepare message, generates a second prepare message, and sends it; the authentication node in the low trust group receives the pre-prepare message, the first prepare message, and the second prepare message, performs a verification operation, generates a third prepare message, and sends it;

[0041] The authentication nodes in the authentication node trust network receive the first preparation message, the second preparation message, and the third preparation message, and when the total number of preparation messages received by a certain authentication node exceeds two times the preset number of faulty nodes plus one, the corresponding authentication node generates a confirmation message;

[0042] receiving the confirmation messages sent by each authentication node, and setting a weighting coefficient according to the trust value of the authentication node sending the confirmation message, wherein the weighting coefficient is positively correlated with the trust value of the authentication node, weighting the confirmation messages to obtain weighted confirmation messages, and calculating the total number of the weighted confirmation messages;

[0043] When the total number of the weighted confirmation messages does not exceed twice the preset number of fault nodes plus one, the authentication node with the second highest authentication node trust value is selected as the new master authentication node, and the new master authentication node regenerates the pre-prepared message and executes it until a consensus is reached; when the total number of the weighted confirmation messages exceeds twice the preset number of fault nodes plus one, a consensus is reached, and based on the consensus, the authentication nodes in the high-trust group are selected to form an authorized node group.

[0044] In an optional embodiment,

[0045] Collecting the authorization signatures of the authorized node group using a threshold signature scheme based on lattice cryptography includes:

[0046] Get the authentication node information in the authorized node group;

[0047] Selecting a first dimension parameter, a second dimension parameter, and a modulus parameter to determine a lattice password parameter, and determining a Gaussian distribution parameter based on a Gaussian distributed random number;

[0048] Constructing a random matrix according to the first dimension parameter, the second dimension parameter, and the modulus parameter, where the number of rows of the random matrix corresponds to the first dimension parameter, the number of columns corresponds to the second dimension parameter, and the value range of elements is determined based on the modulus parameter;

[0049] constructing a unit vector according to the first dimension parameter, and combining the random matrix and the unit vector to generate a group public key;

[0050] generating a short basis matrix and an error vector for each authentication node in the authorized node group based on the Gaussian distribution parameters, wherein the number of rows and the number of columns of the short basis matrix correspond to the second dimension parameter, and combining the short basis matrix and the error vector to generate a signature private key;

[0051] receiving a message to be signed, calculating a hash mapping vector of the message to be signed, and each authentication node in the authorization node group using its own signature private key to multiply the short basis matrix by the hash mapping vector and add the error vector to obtain its own partial signature;

[0052] Merge all partial signatures generated by the authorized node group using an iteratively optimized lattice shortest vector algorithm. Calculate and reduce the norm of the partial signatures during each iteration to ultimately obtain a merged signature.

[0053] Calculate the norm of the merged signature and the product of the random matrix and the merged signature. When the norm of the merged signature is less than a preset norm threshold and the product of the random matrix and the merged signature is equal to the unit vector, confirm that the authorization signature of the authorized node group is obtained.

[0054] In an optional embodiment,

[0055] Accept the visitor's request, read the corresponding authorization certificate, obtain the data fingerprint from the evidence record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network to verify the data integrity; obtain the key component from the authorized node group; execute the secure multi-party computing protocol to reorganize the key component to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shard of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score, including:

[0056] Receive a data access request from a visitor, extract the visitor's identity, target data identifier, and access permission level from the data access request, and query the blockchain for a corresponding authorization credential based on the visitor's identity;

[0057] Verifying a threshold signature in the authorization certificate, where the threshold signature is generated by the authorization node group using a threshold signature scheme based on lattice cryptography, and comparing the access permission level recorded in the authorization certificate with the access permission level in the data access request;

[0058] Obtaining a data fingerprint and Bloom filter parameters from the blockchain's evidence records according to the target data identifier, and constructing a Bloom filter structure based on the Bloom filter parameters;

[0059] Obtaining an encrypted data shard and an integrity proof tree from a distributed storage network, calculating a data fingerprint of the encrypted data shard, inputting the data fingerprint into the Bloom filter structure for search, and verifying the integrity of the encrypted data shard using the integrity proof tree;

[0060] Sending a key component acquisition request to the authorization node group, wherein the key component acquisition request carries the authorization certificate, and receiving the key component returned by the authorization node group;

[0061] Initiate a secure multi-party computing protocol, with the visitor as the protocol initiator and the nodes of the authorized node group as protocol participants. The protocol participants input their respective key components, and reassemble the key components using homomorphic encryption to obtain a hierarchical access key.

[0062] decrypting the encrypted data slice using a key in the hierarchical access key corresponding to the access permission level to obtain decrypted data;

[0063] Generate an access record, the access record including the visitor identity, the target data identifier, the access permission level, and an access timestamp, and submit the access record to the blockchain;

[0064] The visitor's access frequency and time interval distribution are calculated based on the access records, and the visitor's behavior risk score is updated in combination with the visitor's historical access records.

[0065] According to a second aspect of the embodiments of the present invention,

[0066] Provides a blockchain-driven distributed privacy data storage and access control system, including:

[0067] The first unit is configured to receive private data, perform semantic analysis on the private data to obtain a sensitivity score, and shard the private data based on the sensitivity score to obtain data shards; calculate a data fingerprint value for each data shard, organize the data fingerprint values ​​into a Bloom filter, and construct a hierarchical integrity proof tree based on the Bloom filter; encrypt the data shards using a bilinear pairing encryption algorithm to obtain encrypted data shards; submit the encrypted data shards and the integrity proof tree to a distributed storage network, and generate a record of the data fingerprint in the blockchain;

[0068] The second unit is configured to receive a data access request, extract visitor behavioral characteristics, obtain a behavioral risk score based on the visitor behavioral characteristics through deep learning, dynamically generate a hierarchical access key based on the behavioral risk score, and perform threshold segmentation on the hierarchical access key to obtain key components; establish an authentication node trust network, select an authorized node group within the authentication node trust network based on a consensus algorithm; distribute key components within the authorized node group; collect authorization signatures from the authorized node group using a threshold signature scheme based on a lattice cryptography; generate an authorization certificate containing the authorization signature, and write the authorization certificate into the blockchain;

[0069] The third unit is used to accept visitor requests, read the corresponding authorization credentials, obtain data fingerprints from the evidence records in the blockchain, and obtain the corresponding encrypted data shards and integrity proof trees from the distributed storage network to verify data integrity; obtain key components from the authorized node group; execute the secure multi-party computing protocol to reorganize the key components to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shards of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score.

[0070] According to a third aspect of the embodiments of the present invention,

[0071] An electronic device is provided, comprising:

[0072] processor;

[0073] a memory for storing processor-executable instructions;

[0074] The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0075] According to a fourth aspect of the embodiments of the present invention,

[0076] A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the method described above is implemented.

[0077] In an embodiment of the present invention, privacy data is sharded through semantic analysis and sensitivity scoring, and the data shards are encrypted using a bilinear pairing encryption algorithm, effectively preventing unauthorized access and data leakage, and improving data security; Bloom filters and hierarchical integrity proof trees are used to ensure data integrity and verifiability, and prevent data tampering; dynamic hierarchical access keys generated based on visitor behavior characteristics and deep learning achieve more refined data access control; threshold segmentation and a threshold signature scheme based on lattice cryptography are used to ensure the security of key distribution and the reliability of the authorization process, further improving the security and flexibility of access control; encrypted data shards and integrity proof trees are stored in a distributed storage network, reducing data access delays; by constructing an authentication node trust network and selecting an authorized node group through a consensus algorithm, the key distribution and authorization process are optimized, and data access efficiency is improved; at the same time, access records are uploaded to the chain to facilitate auditing and tracking, and also promote the transparency and standardization of data use. BRIEF DESCRIPTION OF THE DRAWINGS

[0078] Figure 1 This is a flowchart of a blockchain-driven distributed privacy data storage and access control method according to an embodiment of the present invention;

[0079] Figure 2 This is a schematic diagram of the structure of a blockchain-driven distributed privacy data storage and access control system according to an embodiment of the present invention. DETAILED DESCRIPTION

[0080] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0081] The following specific embodiments are used to describe the technical solution of the present invention in detail. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0082] Figure 1 This is a flowchart of a distributed privacy data storage and access control method driven by blockchain according to an embodiment of the present invention. Figure 1 As shown, the method includes:

[0083] S101. Receive private data, perform semantic analysis on the private data to obtain a sensitivity score, and segment the private data based on the sensitivity score to obtain data segments; calculate a data fingerprint value for each data segment, organize the data fingerprint values ​​into a Bloom filter, and construct a hierarchical integrity proof tree based on the Bloom filter; encrypt the data segments using a bilinear pairing encryption algorithm to obtain encrypted data segments; submit the encrypted data segments and the integrity proof tree to a distributed storage network, and generate a record of the data fingerprint in the blockchain;

[0084] In this embodiment, sharding is performed based on sensitivity scores, and the data shards are encrypted using a bilinear pairing encryption algorithm to ensure the security and privacy of sensitive data. A data integrity verification mechanism is effectively constructed through Bloom filters and a hierarchical integrity proof tree to ensure the integrity and credibility of data during storage and access. Data sharding is combined with distributed storage to optimize the performance of data storage, while blockchain evidence is used to ensure the traceability of data access and operations. The blockchain evidence record of data fingerprints ensures that operations cannot be tampered with and are highly transparent, providing strong security protection for the storage and management of private data.

[0085] S102. Receive a data access request, extract visitor behavioral characteristics, derive a behavioral risk score based on the visitor behavioral characteristics through deep learning, dynamically generate a hierarchical access key based on the behavioral risk score, and perform threshold segmentation on the hierarchical access key to obtain key components; establish an authentication node trust network, select an authorized node group within the authentication node trust network based on a consensus algorithm; distribute key components within the authorized node group; collect authorization signatures from the authorized node group using a threshold signature scheme based on lattice cryptography; generate an authorization certificate containing the authorization signatures, and write the authorization certificate to the blockchain;

[0086] In this embodiment, behavioral risk scores are generated based on visitor behavioral characteristics and deep learning, and the generation of hierarchical access keys is dynamically adjusted to achieve refined and risk-aware secure access control; access keys are decomposed into multiple key components through threshold segmentation technology, distributed and stored, thereby improving the security and reliability of key management and preventing single point failures; the authentication node trust network and consensus algorithm are used to select the authorization node group, and signatures are collected through a threshold signature scheme based on lattice cryptography to ensure the credibility and anti-attack capability of the authorization process; the authorization certificate generated by the authorization signature is written into the blockchain to ensure the transparency and non-tamperability of the access authorization process, providing a reliable basis for subsequent tracing; combined with lattice cryptography technology, the system's ability to resist advanced attack methods such as quantum computing is enhanced, thereby improving the overall security of the system.

[0087] S103. Accept the visitor's request, read the corresponding authorization certificate, obtain the data fingerprint from the evidence record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network to verify the data integrity; obtain the key components from the authorized node group; execute the secure multi-party computing protocol to reorganize the key components to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shard of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score.

[0088] In this embodiment, by verifying the data fingerprint and integrity proof tree in the blockchain evidence record, it is ensured that the data has not been tampered with, thereby improving the reliability of storage and transmission; a secure multi-party computing protocol is used to reorganize the key components to generate a hierarchical access key, thereby avoiding the risk of key leakage and ensuring the security of the key in a distributed environment; based on the hierarchical access key, the data shards corresponding to the authority level are decrypted to achieve a strict match between authority control and data decryption to prevent unauthorized access; the access record is submitted to the blockchain and the visitor's behavioral risk score is updated in real time, providing complete operation traceability and risk assessment feedback, thereby enhancing the transparency and dynamic security of the system; the update mechanism of the behavioral risk score is utilized to continuously optimize the access control strategy, dynamically adjust the security level, and achieve adaptive management of potential risks.

[0089] In an optional embodiment, calculating a data fingerprint value for each data shard, organizing the data fingerprint values ​​into a Bloom filter, and constructing a hierarchical integrity proof tree based on the Bloom filter includes:

[0090] A secure hash algorithm is used to calculate the data fingerprint value on the data slice, and an XOR operation is performed on the data fingerprint value to generate a check sequence;

[0091] Adaptively adjust the size of the Bloom filter according to the number of data fragments and the system security level, select multiple independent hash functions to process the data fingerprint value respectively, obtain multiple mapping positions, update the bits corresponding to the multiple mapping positions in the Bloom filter to valid values, determine the marking position, divide the check sequence into subsequences equal to the number of the marking positions in sequence, and store each subsequence in a one-to-one correspondence in one of the marking positions to form a check information matrix;

[0092] Dynamically adjust the partitioning granularity of the Bloom filter according to the distribution law of data sensitivity to obtain multiple data blocks of different sizes, each of which constitutes a leaf node, and calculate the weight coefficient of the corresponding leaf node based on the number of marked positions contained in each data block;

[0093] Perform weighted sorting on the leaf nodes, pair the leaf nodes whose weight coefficients are less than the similar weight threshold according to a preset first node weight threshold to form a node group, calculate the weighted hash connection value of the two leaf nodes in each node group to obtain a parent node, record the weight coefficient and the number of the mark position of the corresponding leaf node in the parent node, repeat the pairing until the root node is generated, and construct a hierarchical integrity proof tree;

[0094] According to the preset period, the nodes of the integrity proof tree are rebalanced. When the difference in the weight coefficients of the leaf nodes exceeds the preset second node weight threshold, the node reorganization is triggered. The weight coefficients are recalculated according to the number of marked positions contained in the reorganized nodes, and the subsequence of the corresponding marked positions in the Bloom filter is updated.

[0095] In one specific implementation, the data is first fragmented. For example, a 1GB file is divided into 1024 1MB data fragments. A secure hash algorithm, such as SHA-256, is then used to calculate the fingerprint value for each data fragment. Assume the hash value of a data fragment is "e5b7e998." A bitwise exclusive OR operation is performed on the fingerprint values ​​of all data fragments to generate a checksum sequence. For example, the exclusive OR result of the two fingerprint values ​​"e5b7e998" and "a1b2c3d4" is "44458a6c."

[0096] Next, the Bloom filter size is adaptively adjusted based on the number of data slices and the system security level. For example, if there are 1024 data slices and the security level requires a false alarm rate of less than 0.1%, the Bloom filter size can be set to 10240 bits. Multiple independent hash functions, such as three hash functions h1, h2, and h3, are selected to process the fingerprint value of each data slice, respectively, to obtain multiple mapping positions. For example, if the fingerprint value "e5b7e998" is processed by the three hash functions, the resulting mapping positions are 100, 200, and 300, respectively. The bits corresponding to these three positions in the Bloom filter are set to 1, indicating that these positions have been marked. The fingerprint values ​​of all data slices are processed in this way, ultimately forming a Bloom filter with some bits set to 1 and others set to 0. The positions of these 1 bits are the marked positions. The previously generated checksum sequence is sequentially divided into subsequences equal to the number of marked positions. For example, if the check sequence is "44458a6c" and has three marker positions, it is split into three subsequences: "44", "45", and "8a6c". Each subsequence is stored in a marker position in a one-to-one correspondence to form a check information matrix.

[0097] Then, the granularity of the partitioning is dynamically adjusted based on the distribution of data sensitivity, dividing the Bloom filter into multiple data blocks of varying sizes. For example, the Bloom filter is divided into three data blocks, containing 200, 300, and 540 marker positions, respectively. Each data block constitutes a leaf node. The weight coefficient of the corresponding leaf node is calculated based on the number of marker positions in each data block. For example, a leaf node containing 200 marker positions has a weight coefficient of 200.

[0098] Perform weighted sorting on the leaf nodes, for example, sorting them from small to large according to the weight coefficient. According to the preset first node weight threshold, for example 500, the leaf nodes with weight coefficients less than this threshold are paired to form a node group. For example, two leaf nodes with weight coefficients of 200 and 300 are paired. The weighted hash connection value of the two leaf nodes in each node group is calculated to obtain the parent node. For example, the weight coefficients and the numbers of the marked positions of the two leaf nodes are connected, and then the hash value is calculated as the value of the parent node. The weight coefficients and the numbers of the marked positions of the corresponding leaf nodes are recorded in the parent node. Repeat the pairing until the root node is generated to build a hierarchical integrity proof tree.

[0099] Finally, the nodes of the integrity proof tree are rebalanced at a preset interval, such as once a day. Node rebalancing is triggered when the difference in the weight coefficients of leaf nodes exceeds a preset second node weight threshold, such as 100. For example, if one leaf node has a weight coefficient of 600 and another has a weight coefficient of 200, rebalancing is triggered. The weight coefficients are recalculated based on the number of marked positions contained in the reorganized nodes, and the subsequence of the corresponding marked positions in the Bloom filter is updated.

[0100] In this embodiment, the hierarchical integrity proof tree structure can quickly locate the location of data tampering, avoid full data scanning, and improve verification efficiency; the Bloom filter can effectively compress data fingerprint information and reduce storage overhead; the Bloom filter division granularity and node structure are dynamically adjusted according to data sensitivity and node weight differences to adapt to different data scenarios and security requirements.

[0101] In an optional embodiment, encrypting the data slices using a bilinear pairing encryption algorithm to obtain encrypted data slices includes:

[0102] selecting a system security parameter to obtain a prime order value, constructing a first cyclic group and a second cyclic group based on the prime order value, and verifying that the order of the first cyclic group and the order of the second cyclic group are equal;

[0103] Selecting a first generator in the first cyclic group, generating a system master private key using random number calculation, performing a scalar multiplication operation on the system master private key and the first generator to generate a system public parameter, and selecting a corresponding second generator in the second cyclic group;

[0104] Constructing a bilinear map, mapping elements of the first cyclic group and the second cyclic group to a target group, and determining a bilinear property of the target group and a bilinear map operation method;

[0105] Obtaining user identity information and current system time, concatenating the user identity information with the current system time to generate a space-time joint identifier, performing a secure hash operation, and mapping the space-time joint identifier to the first cyclic group to obtain a first mapping point;

[0106] receiving data to be encrypted, sharding the data to be encrypted according to a preset length to obtain a plurality of data shards, generating a random number for each of the data shards, and performing a bilinear pairing operation using the first mapping point and the second generator to generate a session key belonging to the target group;

[0107] A symmetric encryption operation is performed on the corresponding data slice using each of the session keys to obtain a ciphertext slice, a scalar multiplication operation is performed on each random number and the system public parameter to generate an encryption auxiliary parameter, and the ciphertext slice and the corresponding encryption auxiliary parameter are combined to form an encrypted data slice.

[0108] A cyclic group is a mathematical structure whose elements can be generated by repeatedly performing a group operation on a specific "generator," ultimately returning to the starting point, forming a closed loop. The results of the group operations always remain within the group, and each element has an inverse, allowing the results to be restored. Simply put, a cyclic group is a periodic set whose members are generated by repeated operations on a single element. It is often used in cryptography to ensure the determinism and security of computations.

[0109] The prime order is a property of a mathematical structure that describes the total number of elements in a cyclic group. It is a prime number, meaning it is divisible only by 1 and itself. In group theory, prime orders ensure that the group possesses special properties, such as that every nonzero element has a unique inverse and that the entire group can be generated through specific operations. The prime order is a key number used to define the size of a cyclic group, ensuring that the group's operations and structure follow specific mathematical rules.

[0110] A generator is a special element in a group that, through repeated operations on it, can generate all other elements in the group. It is the "core component" of the group, determining its structure and scope. A generator is a special "starting element" from which the entire group is constructed.

[0111] In one specific implementation, appropriate system security parameters are first selected, such as a key length. This determines a prime number p, the value of which determines the security strength of the system. Based on this prime number p, two cyclic groups are constructed, denoted as G1 and G2. The order of these two cyclic groups, that is, the number of elements in the group, must be equal and equal to p. For example, a point group on an elliptic curve can be selected as the cyclic group, and the order equality can be guaranteed by using elliptic curve parameters. The equality of the orders of G1 and G2 is then verified.

[0112] Next, a generator g1 is selected from the G1 group. A generator is an element in a group that, by repeatedly performing group operations on it, can be used to obtain all other elements in the group. A secure random number generator is used to generate the system master private key x, where x is a positive integer less than p. A scalar multiplication operation is performed on the system master private key x by the generator g1 from the G1 group, i.e., g1 is raised to the power of x. The result is used as the system public parameter P, which is then made public. Simultaneously, a generator g2 corresponding to g1 is selected from the G2 group. For example, g2 can be a mapping of g1 to the G2 group.

[0113] Next, construct a bilinear map e that maps elements of the G1 group and the G2 group to another cyclic group GT. This GT group is called the target group. This bilinear map needs to satisfy certain mathematical properties, such as bilinearity and non-degeneracy. The bilinear property refers to e(g1^a, g2^b)=e(g1, g2)^(ab), where a and b are arbitrary integers. Non-degeneracy means that e(g1, g2) is not equal to the identity element of the target group GT. Determine the bilinear properties of the target group GT and the specific operation method of the bilinear map. For example, a suitable elliptic curve pairing algorithm can be selected as the bilinear map.

[0114] Obtain the user's identity ID, such as username or ID number, and the current system time T. Concatenate the user ID and the current system time T to form a spatiotemporal joint identifier ID||T. Perform a secure hash operation on this spatiotemporal joint identifier, such as the SHA-256 algorithm, and map the hash result H(ID||T) to the G1 group, obtaining an element in the G1 group, denoted as Q. This mapping can be achieved by converting the hash result to an integer and then raising the generator g1 of G1 to the power of that integer.

[0115] Receive data D to be encrypted. Slice data D into multiple data slices Di according to a preset length, such as 128 bits. Generate a random number ri for each data slice Di. Using the previously obtained element Q from the group G1, the generator g2 from the group G2, and the random number ri, perform a bilinear pairing operation to calculate e(Q, g2)^ri, obtaining an element belonging to the target group GT as the session key Ki.

[0116] Use each session key Ki to perform a symmetric encryption operation on the corresponding data slice Di, such as using the AES algorithm, to obtain the ciphertext slice Ci. Perform a scalar multiplication operation on each random number ri by the system public parameter P, that is, calculate P to the power ri, to obtain the encryption auxiliary parameter Ai. The ciphertext slice Ci and the corresponding encryption auxiliary parameter Ai are combined to form the encrypted data slice (Ci, Ai).

[0117] For example, assume the user ID is "User123," the current system time T is "20241027100000," and the encrypted data D is "This is a test message." Concatenate ID and T and perform a hash operation to obtain the hash value, which is then mapped to the group G1 to obtain Q. Assuming a fragment length of 8 bits, divide the data D into multiple fragments. Generate a random number ri for each fragment and calculate the session key Ki = e(Q, g2)^ri. Use Ki to encrypt the corresponding fragment, obtaining Ci. Calculate Ai = P^ri. Ultimately, the encrypted data fragments (C1, A1), (C2, A2), and so on are obtained.

[0118] In this embodiment, a combination of a bilinear pairing encryption algorithm and a symmetric encryption algorithm is adopted, and a session key is generated using random numbers, which improves the security of data encryption and effectively prevents data leakage; by combining user identity information and time information to generate a space-time joint identifier, fine-grained access control of data shards can be achieved, and only users with correct identity information and within the specified time can decrypt the data; by sharding the data, encryption and decryption operations can be performed on the data shards in parallel, which improves data processing efficiency and is particularly suitable for encryption and decryption scenarios of large-scale data.

[0119] In an optional embodiment, dynamically generating a hierarchical access key based on the behavioral risk score, and performing threshold segmentation on the hierarchical access key to obtain key components includes:

[0120] receiving a behavioral risk score, wherein the behavioral risk score is a real number between 0 and 1;

[0121] Multiplying the behavior risk score by a preset maximum number of levels to obtain a product value, and rounding up the product value to obtain a level value of the hierarchical access key;

[0122] Obtaining a random salt value, concatenating the behavior risk score, the level value, and the random salt value in a preset order to obtain a concatenated value, and calculating the concatenated value using a secure hash function to obtain a hierarchical access key;

[0123] Generating a polynomial, wherein the highest degree of the polynomial is equal to a preset threshold value minus one, and a constant term of the polynomial is equal to the hierarchical access key;

[0124] Substituting consecutive integers starting from 1 into the polynomial in sequence to obtain a plurality of function values, and combining the consecutive integers and the corresponding function values ​​into a plurality of key components;

[0125] The level value and the behavior risk score are added to the key component to generate a key component with identification information.

[0126] In cryptography or data security, a random salt is a randomly generated piece of data introduced to enhance the security of an encryption or hashing process. Its primary function is to produce different outputs for the same input data after encryption or hashing, effectively preventing attackers from deducing the original data using precomputed tables (such as rainbow tables). A random salt is a randomly generated piece of data used to increase the unpredictability and security of encryption or hashing.

[0127] In a specific implementation, first, the system parameters are preset, the maximum number of levels is set to 5, the secure hash function is selected as SHA-256, and the threshold value is preset to 3.

[0128] Next, the user's behavior risk score is received. For example, a user's behavior risk score is 0.6.

[0129] Next, calculate the level value of the hierarchical access key. Multiply the behavioral risk score (0.6) by the maximum level (5), resulting in a product value of 3. Rounding up this product value to 3 still equals 3, so the user's hierarchical access key level value is 3.

[0130] Generate a random salt value. For example, the generated random salt value is "SaltValue123".

[0131] Concatenate and calculate the hierarchical access key. Concatenate the behavioral risk score of 0.6, the level value of 3, and the random salt value "SaltValue123" in the order "Behavioral Risk Score - Level Value - Random Salt Value" to create the string "0.6-3-SaltValue123." Use the SHA-256 algorithm to calculate the concatenated string to obtain the hierarchical access key, for example, "hash_value_example."

[0132] Construct a polynomial. Construct a polynomial with a maximum degree of 2 (the preset threshold is 3 minus 1), where the constant term is equal to the hierarchical access key "hash_value_example." Assuming the other coefficients of the polynomial are randomly generated, for example, the coefficient of the linear term is 1234 and the coefficient of the quadratic term is 5678, the polynomial can be expressed as: f(x) = 5678 × x × x + 1234 × x + hash_value_example.

[0133] Generate the key components. Substitute consecutive integers starting from 1 into the polynomial.

[0134] For example, substituting 1 into the polynomial yields the first function value f(1)=5678+1234+hash_value_example="first_function_value".

[0135] Substituting 2 into the polynomial, we obtain the second function value f(2)=5678×4+1234×2+hash_value_example="second_function_value".

[0136] Consecutive integers and their corresponding function values ​​are grouped into multiple key components, for example: (1, "first_function_value"), (2, "second_function_value").

[0137] Add identification information. Add the level value 3 and the behavioral risk score 0.6 to each key component to generate key components with identification information, for example: (1, "first_function_value", 3, 0.6), (2, "second_function_value", 3, 0.6).

[0138] In this embodiment, by introducing hierarchical access control and threshold secret sharing mechanism, the security of the key is effectively protected. Even if part of the key components are leaked, it will not lead to the leakage of the complete key, thereby enhancing the security of the system; hierarchical access keys are dynamically generated based on behavioral risk scores, which realizes more refined permission management and can dynamically adjust the access rights of users according to their risk level, thereby improving the security and flexibility of the system; even if part of the key components are lost or damaged, due to the adoption of the threshold secret sharing mechanism, as long as a sufficient number of key components are collected, the original key can be restored, thereby improving the availability and fault tolerance of the system.

[0139] In an optional embodiment, selecting an authorized node group in the authentication node trust network based on a consensus algorithm includes:

[0140] Obtaining the computing power index, online time ratio, and historical credit record of each authentication node in the authentication node trust network, summing the product of the computing power index and a first weight, the product of the online time ratio and a second weight, and the product of the historical credit record and a third weight to obtain the authentication node trust value of each authentication node;

[0141] Sorting the authentication nodes based on their authentication node trust values, selecting the authentication node with the highest authentication node trust value as the primary authentication node, and generating a pre-prepared message including a view number, a sequence number, and an information digest;

[0142] The master authentication node sends the pre-preparation message to other authentication nodes in the authentication node trust network, wherein the other authentication nodes are divided into different trust groups based on their respective authentication node trust values, wherein the authentication nodes whose authentication node trust values ​​are greater than a first preset threshold are divided into a high trust group, the authentication nodes whose authentication node trust values ​​are greater than a second preset threshold and less than the first preset threshold are divided into a medium trust group, and the authentication nodes whose authentication node trust values ​​are less than the second preset threshold are divided into a low trust group;

[0143] After receiving the pre-prepare message, the authentication node in the high-trust group verifies the continuity of the view number, the uniqueness of the sequence number, and the integrity of the information digest in the pre-prepare message. After the verification is successful, the authentication node generates a first prepare message and sends the first prepare message to the authentication nodes in the medium-trust group and the low-trust group.

[0144] The authentication node in the medium trust group receives the pre-prepare message and the first prepare message, verifies the consistency of the pre-prepare message and the first prepare message, generates a second prepare message, and sends it; the authentication node in the low trust group receives the pre-prepare message, the first prepare message, and the second prepare message, performs a verification operation, generates a third prepare message, and sends it;

[0145] The authentication nodes in the authentication node trust network receive the first preparation message, the second preparation message, and the third preparation message, and when the total number of preparation messages received by a certain authentication node exceeds two times the preset number of faulty nodes plus one, the corresponding authentication node generates a confirmation message;

[0146] receiving the confirmation messages sent by each authentication node, and setting a weighting coefficient according to the trust value of the authentication node sending the confirmation message, wherein the weighting coefficient is positively correlated with the trust value of the authentication node, weighting the confirmation messages to obtain weighted confirmation messages, and calculating the total number of the weighted confirmation messages;

[0147] When the total number of the weighted confirmation messages does not exceed twice the preset number of fault nodes plus one, the authentication node with the second highest authentication node trust value is selected as the new master authentication node, and the new master authentication node regenerates the pre-prepared message and executes it until a consensus is reached; when the total number of the weighted confirmation messages exceeds twice the preset number of fault nodes plus one, a consensus is reached, and based on the consensus, the authentication nodes in the high-trust group are selected to form an authorized node group.

[0148] In one specific implementation, the computing power index, online time ratio, and historical credit record of each authentication node in the network must first be obtained. Assume that there are three authentication nodes, A, B, and C, in the network. Node A has a computing power index of 90, an online time ratio of 0.95, and a historical credit record of 0.98; node B has a computing power index of 85, an online time ratio of 0.92, and a historical credit record of 0.95; and node C has a computing power index of 75, an online time ratio of 0.88, and a historical credit record of 0.92.

[0149] Next, the computing power index, online time ratio, and historical credit record are multiplied by their corresponding weights, and the three products are added together to obtain the trust value of each authentication node. Assuming the weights of the three indicators are 0.5, 0.3, and 0.2, respectively, the trust value of node A is 90 × 0.5 + 0.95 × 0.3 + 0.98 × 0.2 = 45 + 0.285 + 0.196 = 45.481; the trust value of node B is 85 × 0.5 + 0.92 × 0.3 + 0.95 × 0.2 = 42.5 + 0.276 + 0.19 = 42.966; and the trust value of node C is 75 × 0.5 + 0.88 × 0.3 + 0.92 × 0.2 = 37.5 + 0.264 + 0.184 = 37.948.

[0150] Authentication nodes are sorted based on their calculated trust values, and the node with the highest trust value is selected as the primary authentication node. In this example, node A has the highest trust value, so it is selected as the primary authentication node. Primary authentication node A generates a pre-prepared message containing a view number, sequence number, and message digest. Assume that the view number is 1, the sequence number is 100, and the message digest is "datahash."

[0151] Primary authentication node A sends a pre-preparation message to other authentication nodes B and C in the network. Based on preset thresholds, the other authentication nodes are divided into different trust groups. Assume the first preset threshold is 45 and the second preset threshold is 40. Node B is then classified as the medium trust group, and node C is classified as the low trust group.

[0152] After receiving the pre-prepare message, the nodes in the high-trust group (in this example, only master node A) verify the continuity of the view number, the uniqueness of the sequence number, and the integrity of the message digest. Once these verifications are successful, they generate a first prepare message and send it to nodes B and C in the medium and low-trust groups.

[0153] After receiving the pre-prepare message and the first prepare message, node B in the medium-trust group verifies their consistency. If the verification is successful, it generates a second prepare message and sends it to nodes A and C. After receiving the pre-prepare message, the first prepare message, and the second prepare message, node C in the low-trust group verifies their consistency. If the verification is successful, it generates a third prepare message and sends it to nodes A and B.

[0154] All authentication nodes A, B, and C in the network receive the first, second, and third prepare messages. When the total number of prepare messages received by a node exceeds two times the preset number of faulty nodes plus one, the node generates an acknowledgement message. Assuming the preset number of faulty nodes is 0, a node generates an acknowledgement message after receiving 2 × 0 + 1 = 1 prepare message.

[0155] Receive confirmation messages from all nodes and assign weights based on the trustworthiness of the sending node. The higher the trustworthiness, the greater the weight. Multiply the confirmation message by the corresponding weight to obtain a weighted confirmation message, and calculate the total number of weighted confirmation messages.

[0156] If the total number of weighted confirmation messages does not exceed twice the preset number of faulty nodes plus one, the node with the next highest trust value is selected as the new primary authentication node, the pre-prepared message is regenerated, and the above steps are repeated until consensus is reached. If the total number of weighted confirmation messages exceeds twice the preset number of faulty nodes plus one, consensus is reached, and nodes in the high-trust group are selected to form the authorized node group. In this example, if consensus is reached, node A is selected to form the authorized node group.

[0157] In this embodiment, the consensus algorithm and multiple verification mechanisms are used to effectively reduce the risks of single point failures and malicious attacks, ensuring the stable operation of the system. The weights of different nodes are distinguished by trust values, and high-trust nodes are preferentially selected to participate in the consensus process, thereby improving consensus efficiency and optimizing system performance. By verifying the integrity and consistency of messages, data tampering and forgery are prevented, ensuring the data security of the system.

[0158] In an optional embodiment, collecting the authorization signatures of the authorized node group using a threshold signature scheme based on lattice cryptography includes:

[0159] Get the authentication node information in the authorized node group;

[0160] Selecting a first dimension parameter, a second dimension parameter, and a modulus parameter to determine a lattice password parameter, and determining a Gaussian distribution parameter based on a Gaussian distributed random number;

[0161] Constructing a random matrix according to the first dimension parameter, the second dimension parameter, and the modulus parameter, where the number of rows of the random matrix corresponds to the first dimension parameter, the number of columns corresponds to the second dimension parameter, and the value range of elements is determined based on the modulus parameter;

[0162] constructing a unit vector according to the first dimension parameter, and combining the random matrix and the unit vector to generate a group public key;

[0163] generating a short basis matrix and an error vector for each authentication node in the authorized node group based on the Gaussian distribution parameters, wherein the number of rows and the number of columns of the short basis matrix correspond to the second dimension parameter, and combining the short basis matrix and the error vector to generate a signature private key;

[0164] receiving a message to be signed, calculating a hash mapping vector of the message to be signed, and each authentication node in the authorization node group using its own signature private key to multiply the short basis matrix by the hash mapping vector and add the error vector to obtain its own partial signature;

[0165] Merge all partial signatures generated by the authorized node group using an iteratively optimized lattice shortest vector algorithm. Calculate and reduce the norm of the partial signatures during each iteration to ultimately obtain a merged signature.

[0166] Calculate the norm of the merged signature and the product of the random matrix and the merged signature. When the norm of the merged signature is less than a preset norm threshold and the product of the random matrix and the merged signature is equal to the unit vector, confirm that the authorization signature of the authorized node group is obtained.

[0167] The first dimension parameter specifically refers to the number of rows used to describe the random matrix, representing the structural height of the matrix. It determines the vertical size of the random matrix in group public key and signature algorithms, and has a direct impact on the security of matrix generation and subsequent operations. The first dimension parameter defines the number of rows in the random matrix and is one of the foundations of matrix construction.

[0168] The second dimension parameter specifically refers to the number of columns used to describe the random matrix, representing the structural width of the matrix. This parameter directly affects the size of the short basis matrix used in the signature private key and the performance of the algorithm, determining the system's computational complexity and encryption strength. The second dimension parameter defines the number of columns in the random matrix and is a crucial part of matrix construction.

[0169] The modulus parameter is used to determine the range of values ​​for the random matrix elements, ensuring that each value in the matrix is ​​within a specified range. This parameter controls the size of the matrix elements, thus affecting the system's security and anti-attack capabilities. The modulus parameter limits the maximum range of random matrix elements, ensuring that the matrix meets the expected security properties.

[0170] In one embodiment, first, information about all authenticated nodes in the authorized node group is obtained. This includes each node's unique identifier and public key information used for subsequent communications. For example, an authorized node group contains three nodes, with identifiers Node_A, Node_B, and Node_C.

[0171] Next, determine the parameters of the lattice cipher. Select the first dimension parameter n, the second dimension parameter m, and the modulus parameter q. The choice of these parameters affects the security and efficiency of the scheme. For example, you could choose n = 1024, m = 2048, and q = a large prime number, such as 2 to the power of 128. Also, determine the Gaussian distribution parameter σ, which is used to generate the key based on the Gaussian distributed random numbers. For example, σ can be set to 6.

[0172] Next, construct a random matrix A. The number of rows in this matrix corresponds to the first dimension parameter n, and the number of columns corresponds to the second dimension parameter m. The value range of the elements is determined by the modulus parameter q, that is, between 0 and q-1. For example, A is a matrix with 1024 rows and 2048 columns, where each element is a random number between 0 and 2 to the power of 128 - 1.

[0173] Next, we construct an n-dimensional unit vector u. We combine the random matrix A and the unit vector u to generate the group public key (A, u). The group public key is publicly available to all nodes.

[0174] Afterwards, a signature private key is generated for each authentication node in the authorized node group. Based on the Gaussian distribution parameter σ, a short basis matrix S and an error vector e are generated for each node. The number of rows and columns of the short basis matrix S corresponds to the second dimension parameter m, and the dimension of the error vector e is the same as the first dimension parameter n. The short basis matrix S and the error vector e are combined to generate the signature private key (S, e). For example, the private key of Node_A is (S_A, e_A), the private key of Node_B is (S_B, e_B), and the private key of Node_C is (S_C, e_C).

[0175] When a message needs to be signed, the hash map vector h of the message to be signed is first calculated. The dimension of this vector is the same as the first dimension parameter n. For example, the hash map vector h of the message "Agreement" is a 1024-dimensional vector.

[0176] Each authentication node in the authorized node group signs the hash mapping vector using its respective signature private key. Specifically, each node multiplies its own short basis matrix by the hash mapping vector h, and then adds its own error vector to obtain its respective partial signature z. For example, Node_A calculates z_A = S_A × h + e_A, Node_B calculates z_B = S_B × h + e_B, and Node_C calculates z_C = S_C × h + e_C.

[0177] After collecting the partial signatures of all nodes, the lattice basis shortest vector algorithm with iterative optimization is used to merge these partial signatures. In each iteration, the norm of the partial signature is calculated and reduced, and finally the merged signature z is obtained.

[0178] Finally, calculate the norm ||z|| of the merged signature z and the product A × z of the random matrix A and the merged signature z. When the norm of the merged signature z is less than the preset norm threshold T and the product of the random matrix A and the merged signature z is equal to the unit vector u, it is confirmed that the authorized signature z of the authorized node group is obtained. For example, if ||z|| < T and A × z = u, then z is a valid authorized signature.

[0179] In this embodiment, lattice cryptography technology is adopted, making the signature scheme have the potential to resist quantum computer attacks and having higher security compared to traditional RSA- or ECC-based signature schemes; the threshold signature mechanism can generate a valid authorized signature only when a sufficient number of authorized nodes participate in the signature, avoiding single-point failures and attacks by malicious nodes; the lattice basis shortest vector algorithm with iterative optimization can quickly merge partial signatures to generate the final authorized signature, improving the efficiency of the signature process.

[0180] In an optional implementation manner, accept the visitor's request, read the corresponding authorization credential, obtain the data fingerprint from the deposit record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network, and verify the data integrity; obtain the key components from the authorized node group; execute a secure multi-party computation protocol to recombine the key components to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shard at the corresponding permission level to obtain the decrypted data, and at the same time create an access record, submit the access record to the blockchain, and update the behavior risk score of the visitor, including:

[0181] Receive the visitor's data access request, extract the visitor identity identifier, target data identifier, and access permission level from the data access request, and query the corresponding authorization credential from the blockchain according to the visitor identity identifier;

[0182] Verifying a threshold signature in the authorization certificate, where the threshold signature is generated by the authorization node group using a threshold signature scheme based on lattice cryptography, and comparing the access permission level recorded in the authorization certificate with the access permission level in the data access request;

[0183] Obtaining a data fingerprint and Bloom filter parameters from the blockchain's evidence records according to the target data identifier, and constructing a Bloom filter structure based on the Bloom filter parameters;

[0184] Obtaining an encrypted data shard and an integrity proof tree from a distributed storage network, calculating a data fingerprint of the encrypted data shard, inputting the data fingerprint into the Bloom filter structure for search, and verifying the integrity of the encrypted data shard using the integrity proof tree;

[0185] Sending a key component acquisition request to the authorization node group, wherein the key component acquisition request carries the authorization certificate, and receiving the key component returned by the authorization node group;

[0186] Initiate a secure multi-party computing protocol, with the visitor as the protocol initiator and the nodes of the authorized node group as protocol participants. The protocol participants input their respective key components, and reassemble the key components using homomorphic encryption to obtain a hierarchical access key.

[0187] decrypting the encrypted data slice using a key in the hierarchical access key corresponding to the access permission level to obtain decrypted data;

[0188] Generate an access record, the access record including the visitor identity, the target data identifier, the access permission level, and an access timestamp, and submit the access record to the blockchain;

[0189] The visitor's access frequency and time interval distribution are calculated based on the access records, and the visitor's behavior risk score is updated in combination with the visitor's historical access records.

[0190] In one specific implementation, a data access request from a visitor is first received. The request includes the visitor's identity (e.g., the hash value of the visitor's digital certificate, "8f3b..."), the target data identifier (e.g., the hash value of the data file, "e4a2..."), and the access permission level (e.g., read permission or write permission, assuming "read" here).

[0191] Then, based on the visitor's identity, the corresponding authorization certificate is retrieved from the blockchain. Assume that the visitor's authorization certificate is recorded in a block on the blockchain with the hash value "b1c4...". The authorization certificate contains a signature generated by the authorized node group using a threshold signature scheme based on lattice cryptography. This threshold signature is verified to ensure the validity of the authorization certificate. Simultaneously, the access permission level recorded in the authorization certificate is compared with the access permission level in the data access request. If there is a mismatch, access is denied. Assuming the access permission level in the authorization certificate is also "read," the comparison passes.

[0192] Next, based on the target data identifier "e4a2...", we retrieve the data fingerprint "f7d3..." and the Bloom filter parameters from the blockchain's attestation record. Assume the Bloom filter parameters are (m=1024, k=3). Based on these parameters, we construct the Bloom filter structure.

[0193] Next, the encrypted data shard and integrity proof tree are retrieved from the distributed storage network. Assume the encrypted data shards are {"c1","c2","c3"}, and the root hash value of the integrity proof tree is "a8b9...". The data fingerprint of the encrypted data shard is calculated, assuming it is "f7d3...". This fingerprint is input into the Bloom filter structure for a search. If the search is successful, the next step is performed; otherwise, access is denied. Since the calculated data fingerprint matches the data fingerprint obtained from the blockchain, the search is successful. Next, the integrity proof tree is used to verify the integrity of the encrypted data shard, ensuring that the data has not been tampered with.

[0194] Next, a key component retrieval request is sent to the authorized node group (for example, nodes A, B, and C). This request carries the authorization credential "b1c4..." After verifying the credential, the authorized node group returns the key components they hold. For example, node A returns the key component "k_A," node B returns "k_B," and node C returns "k_C."

[0195] Next, a secure multi-party computation protocol is initiated. The visitor acts as the protocol initiator, and nodes A, B, and C in the authorized node group act as protocol participants. Each participant inputs their respective key components k_A, k_B, and k_C. These components are recombined using homomorphic encryption to generate a hierarchical access key. Assume that the recombined hierarchical access key is K = {K_read, K_write}.

[0196] The encrypted data segments {"c1", "c2", "c3"} are decrypted using the key K_read corresponding to the access permission level "read" in the hierarchical access key to obtain the decrypted data. Assume that the decrypted data is "plaintext data".

[0197] Finally, an access record is generated. This record includes the visitor's ID "8f3b...", the target data ID "e4a2...", the access permission level "read", and the access timestamp "2024-07-27 10:00:00". This access record is then submitted to the blockchain.

[0198] Based on this access record and the visitor's historical access records, the visitor's access frequency and time interval distribution are calculated. For example, if there were three visits in the past hour, the average time interval was 20 minutes. This information is used to update the visitor's behavioral risk score. For example, the risk score could be upgraded from low risk to medium risk.

[0199] In this embodiment, by adopting technologies such as threshold signatures based on lattice cryptography, Bloom filters, integrity proof trees and homomorphic encryption, the security of data access is guaranteed to prevent unauthorized access and data tampering; through the hierarchical access key mechanism, fine-grained control of data access is achieved, and users with different authority levels can only access data within their authorized scope; the Bloom filter can quickly determine whether the data exists, thereby improving the efficiency of data access; the secure multi-party computing protocol can complete the reorganization of key components and data decryption while protecting data privacy, avoiding complex key management processes.

[0200] Figure 2 This is a schematic diagram of the structure of a distributed privacy data storage and access control system driven by blockchain in an embodiment of the present invention. Figure 2 As shown, the system includes:

[0201] The first unit is configured to receive private data, perform semantic analysis on the private data to obtain a sensitivity score, and shard the private data based on the sensitivity score to obtain data shards; calculate a data fingerprint value for each data shard, organize the data fingerprint values ​​into a Bloom filter, and construct a hierarchical integrity proof tree based on the Bloom filter; encrypt the data shards using a bilinear pairing encryption algorithm to obtain encrypted data shards; submit the encrypted data shards and the integrity proof tree to a distributed storage network, and generate a record of the data fingerprint in the blockchain;

[0202] The second unit is configured to receive a data access request, extract visitor behavioral characteristics, obtain a behavioral risk score based on the visitor behavioral characteristics through deep learning, dynamically generate a hierarchical access key based on the behavioral risk score, and perform threshold segmentation on the hierarchical access key to obtain key components; establish an authentication node trust network, select an authorized node group within the authentication node trust network based on a consensus algorithm; distribute key components within the authorized node group; collect authorization signatures from the authorized node group using a threshold signature scheme based on a lattice cryptography; generate an authorization certificate containing the authorization signature, and write the authorization certificate into the blockchain;

[0203] The third unit is used to accept visitor requests, read the corresponding authorization credentials, obtain data fingerprints from the evidence records in the blockchain, and obtain the corresponding encrypted data shards and integrity proof trees from the distributed storage network to verify data integrity; obtain key components from the authorized node group; execute the secure multi-party computing protocol to reorganize the key components to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shards of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score.

[0204] According to a third aspect of the embodiments of the present invention,

[0205] An electronic device is provided, comprising:

[0206] processor;

[0207] a memory for storing processor-executable instructions;

[0208] The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0209] According to a fourth aspect of the embodiments of the present invention,

[0210] A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the method described above is implemented.

[0211] The present invention may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present invention.

[0212] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A blockchain-driven distributed privacy data storage and access control method, characterized in that: include: receiving private data, performing semantic analysis on the private data to obtain a sensitivity score, and sharding the private data based on the sensitivity score to obtain data shards; Calculate the data fingerprint value of each data shard, organize the data fingerprint value into a Bloom filter, and build a hierarchical integrity proof tree based on the Bloom filter; Encrypting the data shards using a bilinear pairing encryption algorithm to obtain encrypted data shards; submitting the encrypted data shards and the integrity proof tree to a distributed storage network, and generating a data fingerprint record in the blockchain; Receive data access requests, extract visitor behavioral characteristics, and obtain behavioral risk scores based on visitor behavioral characteristics through deep learning; Dynamically generating a hierarchical access key based on the behavioral risk score, and performing threshold segmentation on the hierarchical access key to obtain key components, including: receiving a behavioral risk score, wherein the behavioral risk score is a real number between 0 and 1; Multiplying the behavior risk score by a preset maximum number of levels to obtain a product value, and rounding up the product value to obtain a level value of the hierarchical access key; Obtaining a random salt value, concatenating the behavior risk score, the level value, and the random salt value in a preset order to obtain a concatenated value, and calculating the concatenated value using a secure hash function to obtain a hierarchical access key; Generating a polynomial, wherein the highest degree of the polynomial is equal to a preset threshold value minus one, and a constant term of the polynomial is equal to the hierarchical access key; Substituting consecutive integers starting from 1 into the polynomial in sequence to obtain a plurality of function values, and combining the consecutive integers and the corresponding function values ​​into a plurality of key components; Adding the level value and the behavior risk score to the key component to generate a key component with identification information; Establishing an authentication node trust network, selecting an authorized node group within the authentication node trust network based on a consensus algorithm; distributing key components within the authorized node group; collecting authorization signatures from the authorized node group using a threshold signature scheme based on a lattice cryptography; generating an authorization certificate containing the authorization signatures, and writing the authorization certificate into a blockchain; Accept the visitor's request, read the corresponding authorization certificate, obtain the data fingerprint from the evidence record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network to verify the data integrity; obtain the key component from the authorized node group; execute the secure multi-party computing protocol to reorganize the key component to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data shard of the corresponding permission level to obtain decrypted data, and create an access record at the same time, submit the access record to the blockchain, and update the visitor's behavioral risk score.

2. The method according to claim 1, characterized in that Calculate the data fingerprint value of each data shard, organize the data fingerprint value into a Bloom filter, and build a hierarchical integrity proof tree based on the Bloom filter, including: A secure hash algorithm is used to calculate the data fingerprint value on the data slice, and an XOR operation is performed on the data fingerprint value to generate a check sequence; Adaptively adjust the size of the Bloom filter according to the number of data fragments and the system security level, select multiple independent hash functions to process the data fingerprint value respectively, obtain multiple mapping positions, update the bits corresponding to the multiple mapping positions in the Bloom filter to valid values, determine the marking position, divide the check sequence into subsequences equal to the number of the marking positions in sequence, and store each subsequence in a one-to-one correspondence in one of the marking positions to form a check information matrix; Dynamically adjust the partitioning granularity of the Bloom filter according to the distribution law of data sensitivity to obtain multiple data blocks of different sizes, each of which constitutes a leaf node, and calculate the weight coefficient of the corresponding leaf node based on the number of marked positions contained in each data block; Perform weighted sorting on the leaf nodes, pair the leaf nodes whose weight coefficients are less than the similar weight threshold according to a preset first node weight threshold to form a node group, calculate the weighted hash connection value of the two leaf nodes in each node group to obtain a parent node, record the weight coefficient and the number of the mark position of the corresponding leaf node in the parent node, repeat the pairing until the root node is generated, and construct a hierarchical integrity proof tree; According to the preset period, the nodes of the integrity proof tree are rebalanced. When the difference in the weight coefficients of the leaf nodes exceeds the preset second node weight threshold, the node reorganization is triggered. The weight coefficients are recalculated according to the number of marked positions contained in the reorganized nodes, and the subsequence of the corresponding marked positions in the Bloom filter is updated.

3. The method according to claim 1, characterized in that The encrypted data fragments obtained by encrypting the data fragments using the bilinear pairing encryption algorithm include: selecting a system security parameter to obtain a prime order value, constructing a first cyclic group and a second cyclic group based on the prime order value, and verifying that the order of the first cyclic group and the order of the second cyclic group are equal; Selecting a first generator in the first cyclic group, generating a system master private key using random number calculation, performing a scalar multiplication operation on the system master private key and the first generator to generate a system public parameter, and selecting a corresponding second generator in the second cyclic group; Constructing a bilinear map, mapping elements of the first cyclic group and the second cyclic group to a target group, and determining a bilinear property of the target group and a bilinear map operation method; Obtaining user identity information and current system time, concatenating the user identity information with the current system time to generate a space-time joint identifier, performing a secure hash operation, and mapping the space-time joint identifier to the first cyclic group to obtain a first mapping point; receiving data to be encrypted, sharding the data to be encrypted according to a preset length to obtain a plurality of data shards, generating a random number for each of the data shards, and performing a bilinear pairing operation using the first mapping point and the second generator to generate a session key belonging to the target group; A symmetric encryption operation is performed on the corresponding data slice using each of the session keys to obtain a ciphertext slice, a scalar multiplication operation is performed on each random number and the system public parameter to generate an encryption auxiliary parameter, and the ciphertext slice and the corresponding encryption auxiliary parameter are combined to form an encrypted data slice.

4. The method according to claim 1, wherein Selecting an authorized node group in the authentication node trust network based on a consensus algorithm includes: Obtaining the computing power index, online time ratio, and historical credit record of each authentication node in the authentication node trust network, summing the product of the computing power index and a first weight, the product of the online time ratio and a second weight, and the product of the historical credit record and a third weight to obtain the authentication node trust value of each authentication node; Sorting the authentication nodes based on their authentication node trust values, selecting the authentication node with the highest authentication node trust value as the primary authentication node, and generating a pre-prepared message including a view number, a sequence number, and an information digest; The master authentication node sends the pre-preparation message to other authentication nodes in the authentication node trust network, wherein the other authentication nodes are divided into different trust groups based on their respective authentication node trust values, wherein the authentication nodes whose authentication node trust values ​​are greater than a first preset threshold are divided into a high trust group, the authentication nodes whose authentication node trust values ​​are greater than a second preset threshold and less than the first preset threshold are divided into a medium trust group, and the authentication nodes whose authentication node trust values ​​are less than the second preset threshold are divided into a low trust group; After receiving the pre-prepare message, the authentication node in the high-trust group verifies the continuity of the view number, the uniqueness of the sequence number, and the integrity of the information digest in the pre-prepare message. After the verification is successful, the authentication node generates a first prepare message and sends the first prepare message to the authentication nodes in the medium-trust group and the low-trust group. The authentication node in the medium trust group receives the pre-prepare message and the first prepare message, verifies the consistency of the pre-prepare message and the first prepare message, generates a second prepare message, and sends it; the authentication node in the low trust group receives the pre-prepare message, the first prepare message, and the second prepare message, performs a verification operation, generates a third prepare message, and sends it; The authentication nodes in the authentication node trust network receive the first preparation message, the second preparation message, and the third preparation message, and when the total number of preparation messages received by a certain authentication node exceeds two times the preset number of faulty nodes plus one, the corresponding authentication node generates a confirmation message; receiving the confirmation messages sent by each authentication node, and setting a weighting coefficient according to the trust value of the authentication node sending the confirmation message, wherein the weighting coefficient is positively correlated with the trust value of the authentication node, weighting the confirmation messages to obtain weighted confirmation messages, and calculating the total number of the weighted confirmation messages; When the total number of the weighted confirmation messages does not exceed twice the preset number of fault nodes plus one, the authentication node with the second highest authentication node trust value is selected as the new master authentication node, and the new master authentication node regenerates the pre-prepared message and executes it until a consensus is reached; when the total number of the weighted confirmation messages exceeds twice the preset number of fault nodes plus one, a consensus is reached, and based on the consensus, the authentication nodes in the high-trust group are selected to form an authorized node group.

5. The method according to claim 1, wherein Collecting the authorization signatures of the authorized node group using a threshold signature scheme based on lattice cryptography includes: Get the authentication node information in the authorized node group; Selecting a first dimension parameter, a second dimension parameter, and a modulus parameter to determine a lattice password parameter, and determining a Gaussian distribution parameter based on a Gaussian distributed random number; Constructing a random matrix according to the first dimension parameter, the second dimension parameter, and the modulus parameter, where the number of rows of the random matrix corresponds to the first dimension parameter, the number of columns corresponds to the second dimension parameter, and the value range of elements is determined based on the modulus parameter; constructing a unit vector according to the first dimension parameter, and combining the random matrix and the unit vector to generate a group public key; generating a short basis matrix and an error vector for each authentication node in the authorized node group based on the Gaussian distribution parameters, wherein the number of rows and the number of columns of the short basis matrix correspond to the second dimension parameter, and combining the short basis matrix and the error vector to generate a signature private key; receiving a message to be signed, calculating a hash mapping vector of the message to be signed, and each authentication node in the authorization node group using its own signature private key to multiply the short basis matrix by the hash mapping vector and add the error vector to obtain its own partial signature; Merge all partial signatures generated by the authorized node group using an iteratively optimized lattice shortest vector algorithm. Calculate and reduce the norm of the partial signatures during each iteration to ultimately obtain a merged signature. Calculate the norm of the merged signature and the product of the random matrix and the merged signature. When the norm of the merged signature is less than a preset norm threshold and the product of the random matrix and the merged signature is equal to the unit vector, confirm that the authorization signature of the authorized node group is obtained.

6. The method according to claim 1, characterized in that Accept the visitor's request, read the corresponding authorization certificate, obtain the data fingerprint from the evidence record in the blockchain, and obtain the corresponding encrypted data shard and integrity proof tree from the distributed storage network to verify the data integrity; Obtaining key components from the authorization node group; executing a secure multi-party computation protocol to reassemble the key components to obtain a hierarchical access key; using the hierarchical access key to decrypt the encrypted data slices corresponding to the permission level to obtain decrypted data; creating an access record, submitting the access record to the blockchain, and updating the visitor's behavioral risk score, including: Receive a data access request from a visitor, extract the visitor's identity, target data identifier, and access permission level from the data access request, and query the blockchain for a corresponding authorization credential based on the visitor's identity; Verifying a threshold signature in the authorization certificate, where the threshold signature is generated by the authorization node group using a threshold signature scheme based on lattice cryptography, and comparing the access permission level recorded in the authorization certificate with the access permission level in the data access request; Obtaining a data fingerprint and Bloom filter parameters from the blockchain's evidence records according to the target data identifier, and constructing a Bloom filter structure based on the Bloom filter parameters; Obtaining an encrypted data shard and an integrity proof tree from a distributed storage network, calculating a data fingerprint of the encrypted data shard, inputting the data fingerprint into the Bloom filter structure for search, and verifying the integrity of the encrypted data shard using the integrity proof tree; Sending a key component acquisition request to the authorization node group, wherein the key component acquisition request carries the authorization certificate, and receiving the key component returned by the authorization node group; Initiate a secure multi-party computing protocol, with the visitor as the protocol initiator and the nodes of the authorized node group as protocol participants. The protocol participants input their respective key components, and reassemble the key components using homomorphic encryption to obtain a hierarchical access key. decrypting the encrypted data slice using a key in the hierarchical access key corresponding to the access permission level to obtain decrypted data; Generate an access record, the access record including the visitor identity, the target data identifier, the access permission level, and an access timestamp, and submit the access record to the blockchain; The visitor's access frequency and time interval distribution are calculated based on the access records, and the visitor's behavior risk score is updated in combination with the visitor's historical access records.

7. A blockchain-driven distributed privacy data storage and access control system, used to implement the method of any one of claims 1 to 6, characterized in that: include: The first unit is configured to receive private data, perform semantic analysis on the private data to obtain a sensitivity score, and perform sharding processing on the private data based on the sensitivity score to obtain data shards; Calculate the data fingerprint value of each data shard, organize the data fingerprint value into a Bloom filter, and build a hierarchical integrity proof tree based on the Bloom filter; Encrypting the data shards using a bilinear pairing encryption algorithm to obtain encrypted data shards; submitting the encrypted data shards and the integrity proof tree to a distributed storage network, and generating a data fingerprint record in the blockchain; The second unit is configured to receive a data access request, extract visitor behavioral characteristics, obtain a behavioral risk score based on the visitor behavioral characteristics through deep learning, dynamically generate a hierarchical access key based on the behavioral risk score, and perform threshold segmentation on the hierarchical access key to obtain key components; Building an authentication node trust network, and selecting an authorized node group in the authentication node trust network based on a consensus algorithm; Distributing key components among the authorized node group; collecting authorization signatures of the authorized node group using a threshold signature scheme based on lattice cryptography; Generate an authorization certificate containing the authorization signature, and write the authorization certificate into the blockchain; The third unit is used to accept visitor requests, read the corresponding authorization credentials, obtain data fingerprints from the evidence records in the blockchain, and obtain the corresponding encrypted data shards and integrity proof trees from the distributed storage network to verify data integrity; Obtain key components from the authorized node group; execute a secure multi-party computing protocol to reorganize the key components to obtain a hierarchical access key, use the hierarchical access key to decrypt the encrypted data fragments corresponding to the permission level to obtain decrypted data, and simultaneously create an access record, submit the access record to the blockchain, and update the visitor's behavioral risk score.

8. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Image supervision platform and method based on privacy intersection and block chain

    CN116842557A

  • Private data security sharing method based on block chain

    CN117692227A

  • Data security sharing method and system

    CN119483909A