WO2023050555A1 - Method for high-performance distributed storage of block data and timestamp, cross-chain communication and data collaboration - Google Patents
Method for high-performance distributed storage of block data and timestamp, cross-chain communication and data collaboration Download PDFInfo
- Publication number
- WO2023050555A1 WO2023050555A1 PCT/CN2021/134240 CN2021134240W WO2023050555A1 WO 2023050555 A1 WO2023050555 A1 WO 2023050555A1 CN 2021134240 W CN2021134240 W CN 2021134240W WO 2023050555 A1 WO2023050555 A1 WO 2023050555A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- block
- chain
- nodes
- information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004891 communication Methods 0.000 title claims abstract description 35
- 230000008569 process Effects 0.000 claims abstract description 28
- 239000012634 fragment Substances 0.000 claims description 26
- 238000013467 fragmentation Methods 0.000 claims description 10
- 238000006062 fragmentation reaction Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000010076 replication Effects 0.000 claims description 4
- LPLLVINFLBSFRP-UHFFFAOYSA-N 2-methylamino-1-phenylpropan-1-one Chemical compound CNC(C)C(=O)C1=CC=CC=C1 LPLLVINFLBSFRP-UHFFFAOYSA-N 0.000 claims description 3
- 241000132539 Cosmos Species 0.000 claims description 3
- 235000005956 Cosmos caudatus Nutrition 0.000 claims description 3
- 235000006679 Mentha X verticillata Nutrition 0.000 claims description 3
- 235000002899 Mentha suaveolens Nutrition 0.000 claims description 3
- 235000001636 Mentha x rotundifolia Nutrition 0.000 claims description 3
- 230000015556 catabolic process Effects 0.000 claims description 3
- 238000006731 degradation reaction Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 claims description 3
- 238000012858 packaging process Methods 0.000 claims description 3
- 238000000926 separation method Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 239000006185 dispersion Substances 0.000 claims description 2
- 238000000605 extraction Methods 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002153 concerted effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/121—Timestamp
Definitions
- the invention belongs to the technical field of block chains, and in particular relates to a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method.
- Blockchain involves many scientific and technical issues such as mathematics, cryptography, Internet and computer programming. From the perspective of application, in simple terms, blockchain is a distributed shared ledger and database, which has the characteristics of decentralization, non-tampering, traceability throughout the process, traceability, collective maintenance, and openness and transparency. These characteristics ensure the "honesty” and “transparency” of the blockchain, and lay the foundation for the creation of trust in the blockchain.
- the rich application scenarios of the blockchain are basically based on the fact that the blockchain can solve the problem of information asymmetry and realize collaborative trust and concerted action among multiple subjects.
- Blockchain is a new application model of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm. Blockchain is an important concept of Bitcoin.
- the block chain-based data distributed storage and data acquisition method and device disclosed by the authorized announcement number CN112637297A although it realizes that the terminal equipment configured with the D2D protocol can quickly upload the data to the block chain server, the block chain The chain server utilizes blockchain technology to distribute storage in other nodes.
- each node can directly communicate with each other through multiplexing cell resources (D2D protocol), and quickly and efficiently obtain distributed data stored on other nodes.
- D2D protocol multiplexing cell resources
- the purpose of the present invention is to provide a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method to solve the problems raised in the above-mentioned background technology.
- the present invention provides the following technical solution: a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method, including the following method steps:
- the block data information is connected in a chain: after fragmentation in S1, all the fragments in each data file are connected, and the branch chain chain connection is performed through the address timestamp to complete the same data file All fragments in the database are connected organically to improve the speed of data information retrieval;
- the data file information is stored in all nodes through distributed storage: the data file information is stored in all nodes through distributed storage, and then the data file information can be quickly queried and stored. , effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the complexity of accessing all nodes when nodes perform data queries degree;
- the consensus algorithm in S1 includes Proof of Work, Proof of Stake, Proof of Delegated Stake and Practical Byzantine Fault Tolerant Algorithm
- the Practical Byzantine Fault Tolerant Algorithm is a state machine copy replication algorithm, that is, the service is performed as a state machine Modeling, the state machine performs copy replication on different nodes of the distributed system, and each copy of the state machine saves the state of the service, and at the same time realizes the operation of the service.
- the set of all copies is represented by the capital letter R, Use an integer from 0 to
- 3f+1, where f is the maximum number of copies that may fail, although there can be more than 3f+1 copies, but additional A copy of , does not improve reliability other than performance.
- the data size of the fragments in the S1 is maintained at 128M Bytes, and then written into the dat file in the form of sequenced bytecodes.
- the process of serialization if it is detected that the current write file size increases If the upper block size is greater than 128M Bytes, a dat file will be regenerated.
- the specific serialization process is as follows:
- the fragmentation in S1 includes the following steps:
- the storage system divides data into smaller pieces, a process called sharding, which breaks down data into manageable chunks that can be distributed across multiple nodes;
- Encrypt each shard After sharding, the storage system needs to encrypt each shard of data on the local system, the content owner has full control over this process, the goal is to ensure that no one other than the content owner can view/access the data in the shard data, regardless of where the data is located, whether that data is static or dynamic;
- the blockchain storage system generates a unique hash based on the shard’s data or encryption key—that is, a fixed-length encrypted output string, which is added to the ledger and the shard element data in order to link transactions to shards of storage;
- Replicate each shard The storage system replicates each shard so there are enough redundant copies to ensure availability and performance and prevent performance degradation and data loss, the number of replicas per shard is up to the content owner and where those shards reside, where the content owner establishes a threshold for the minimum number of replicas that need to be maintained to ensure no data loss;
- the P2P network distributes replicated shards to geographically dispersed storage nodes, whether regional or global, multiple organizations or individuals own storage nodes, and rent additional storage space in exchange for some type of compensation , no one entity can own all storage resources, or control the storage infrastructure, and only content owners have full access to all their data, no matter where these nodes are located;
- the storage system records all transactions in the blockchain ledger and synchronizes this information among all nodes.
- the ledger stores details related to transactions. Since the ledger is based on blockchain technology, it It is transparent, verifiable, traceable, and tamper-resistant.
- the timestamp in the S3 is in the block header, the block header and the block body together constitute a block, and the block body records all transaction data during the period when the block is created, and these records are passed through
- the merkle tree is organized, and the hash value of the merkle tree root is put into the block header as the summary, abstract, and "fingerprint" of all transaction records in this block.
- the block header includes not only the merkle tree root, but also the previous block header
- the summary that is, the merkle tree root of the previous block, the timestamp of this block, and the height: that is, counting from the first block, the information of which block this block is.
- connection between the fragments in the S2 is implemented through address information and a hash algorithm to implement an accurate algorithm, maintain the connection between the fragments, and realize the connection during the query, and complete the connection of the data file during the query. Extract all.
- the storage in the S4 supports storing custom types of structured data, thereby increasing the expansion;
- Nervos supports the deployment of different consensus algorithms through the Generator to achieve a balance between performance and network decentralization.
- Nervos proposes a new Blockchain design consists of a cell that can store multiple data, and an application execution logic generator Generator, Validator, Type, and Identity to form a distributed architecture capable of autonomy and verification separation.
- Nervos has changed the original data input , verification, packaging process, when an event X occurs, the client first confirms the identity through Identity verification, and at the same time stores the corresponding mapping of the state Y outside the chain to the client through the consensus, and executes the logic generator Generator to convert the event state Y , passed to the accounting node through the hash, the node only needs the Validator to verify whether the mapping on the chain is consistent with the event state Y under the chain, and if confirmed, it will be packaged into the next block.
- the storage is a state mapping
- the chain can infer whether the data on the chain and the data off the chain are consistent through reverse logic, and if the newly added node is a synchronous node, the accounting nodes responsible for the calculation work are all in operation Parties or participants, the management contract can also set the weight of the bookkeeping nodes. This level requires better node voting decisions and dynamic joining.
- the heterogeneous cross-chain PegZone in S5 includes five parts, which are:
- smart contract the role of asset custody in token custody in Ethereum and Cosmos, it mainly provides four methods: lock, unlock, mint and destroy;
- PegZone is a Tendermint-based blockchain that maintains user account information, allows asset transfers between users and provides transaction queries;
- Secp256k1 is used to sign the transaction so that the signature can be effectively verified by the smart contract; this corresponds to the validator public key set of the smart contract;
- the relay is responsible for all transaction forwarding, forwarding the signed SignTx to the smart contract.
- each master node in the practical Byzantine fault-tolerant algorithm is called a view
- v represents the view number
- Its operation method process when working normally, receive the transaction request from the client, after verifying the identity of the request, set the number for the request, and broadcast the pre-prepare message;
- the new master node When the new master node is elected, it will send View-New information according to the View-Change message collected by itself, so that other nodes can synchronize data;
- the master node maintains a heartbeat with all other nodes
- the master node does not send the received request.
- the client fails to reply after a timeout, it will resend the request to all replica nodes and trigger view-change;
- the primary node tampers with the message. Because there is data and the signature of the client in the Request, the primary cannot tamper with the message. The other replicas will first verify the legitimacy of the message, otherwise discard it and trigger view-change.
- the present invention realizes the distributed storage of the data information of the block chain, and completes the fast identification process through the consensus algorithm, accelerates the storage and upload of the data information inside the block chain, and realizes the fragmented storage of the data information, speeding up
- the storage speed and query speed are convenient for processing and use, and the time stamp is carried on the data, which can facilitate the storage and query of data information, and realize cross-chain communication between different blockchains, and complete the data exchange between data information Collaboration improves the transmission and connection of data information between blockchains for ease of use and operation.
- Fig. 1 is the step structural representation of the present invention
- Fig. 2 is a schematic diagram of the dat file serialization steps of the present invention.
- Fig. 3 is a schematic diagram of fragmentation steps in the present invention.
- the present invention provides a technical solution: a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method, including the following method steps:
- the block data information is connected in a chain: after fragmentation in S1, all the fragments in each data file are connected, and the branch chain chain connection is performed through the address timestamp to complete the same data file All fragments in the database are connected organically to improve the speed of data information retrieval;
- the data file information is stored in all nodes through distributed storage: the data file information is stored in all nodes through distributed storage, and then the data file information can be quickly queried and stored. , effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the complexity of accessing all nodes when nodes perform data queries degree;
- the consensus algorithm in S1 includes proof of work, proof of equity, proof of entrusted equity and practical Byzantine fault-tolerant algorithm.
- Byzantine Fault Tolerance Algorithm A state machine copy replication algorithm, that is, the service is modeled as a state machine, and the state machine is copied on different nodes in the distributed system.
- Each copy of the state machine saves the state of the service, and also realizes The operation of the service, the set of all replicas is represented by the capital letter R, and each replica is represented by an integer from 0 to
- 3f+1, where f is a replica that may fail Maximum number, although there can be more than 3f+1 replicas, additional replicas do not improve reliability other than performance.
- the data size of the fragmentation in the S1 is kept at 128M Bytes, and then written in the dat file in the form of a sequence of bytecodes, During the serialization process, if it is detected that the current written file size plus the block size is greater than 128M Bytes, a dat file will be regenerated.
- the specific serialization process is as follows:
- the fragmentation in S1 includes the following steps:
- the storage system divides data into smaller pieces, a process called sharding, which breaks down data into manageable chunks that can be distributed across multiple nodes;
- Encrypt each shard After sharding, the storage system needs to encrypt each shard of data on the local system, the content owner has full control over this process, the goal is to ensure that no one other than the content owner can view/access the data in the shard data, regardless of where the data is located, whether that data is static or dynamic;
- the blockchain storage system generates a unique hash based on the shard’s data or encryption key—that is, a fixed-length encrypted output string, which is added to the ledger and the shard element data in order to link transactions to shards of storage;
- Replicate each shard The storage system replicates each shard so there are enough redundant copies to ensure availability and performance and prevent performance degradation and data loss, the number of replicas per shard is up to the content owner and where those shards reside, where the content owner establishes a threshold for the minimum number of replicas that need to be maintained to ensure no data loss;
- the P2P network distributes replicated shards to geographically dispersed storage nodes, whether regional or global, multiple organizations or individuals own storage nodes, and rent additional storage space in exchange for some type of compensation , no one entity can own all storage resources, or control the storage infrastructure, and only content owners have full access to all their data, no matter where these nodes are located;
- the storage system records all transactions in the blockchain ledger and synchronizes this information among all nodes.
- the ledger stores details related to transactions. Since the ledger is based on blockchain technology, it It is transparent, verifiable, traceable, and tamper-resistant.
- the time stamp in S3 is in the block header, the block header and the block body together form a block, and the block body records the block All transaction data during the period of creation, these records are organized through the merkle tree, and the hash value of the root of the merkle tree is put into the block header as the summary, summary, and "fingerprint" of all transaction records in this block.
- the block header contains not only the merkle tree root, but also the summary of the previous block header, that is, the merkle tree root of the previous block, the timestamp of this block, and the height: that is, counting from the first block, this block It is the information of the first few blocks.
- the connection between the fragments in the S2 implements an accurate algorithm through address information and a hash algorithm, and maintains the connection between the fragments , can realize the connection during the query, and complete the extraction of all the data files during the query.
- the storage in S4 supports storage of self-defined structured data, thereby increasing expansion; Nervos supports deploying different The consensus algorithm achieves a balance between performance and network dispersion.
- Nervos proposes a new blockchain design, which consists of five elements: a cell that can store multiple data, and an application execution logic generator Generator, Validator, Type, and Identity. Forming a distributed architecture capable of autonomy and verification separation, Nervos has changed the original data input, verification, and packaging processes.
- an event X occurs, the client first confirms its identity through Identity verification, and at the same time, the state Y outside the chain is passed through consensus.
- the node only needs the Validator to verify whether the mapping on the chain is consistent with the event state Y off the chain. If it is confirmed, it will be packaged into the next block.
- the storage is the mapping of the state.
- the chain can infer whether the data on the chain and the data off the chain are consistent through reverse logic.
- the accounting nodes are all on the operator or participating side, and the management contract can also set the weight of the accounting nodes. At this level, better node voting decisions and dynamic joining are required.
- the heterogeneous cross-chain PegZone in S5 includes five parts, which are:
- smart contract the role of asset custody in token custody in Ethereum and Cosmos, it mainly provides four methods: lock, unlock, mint and destroy;
- PegZone is a Tendermint-based blockchain that maintains user account information, allows asset transfers between users and provides transaction queries;
- Secp256k1 is used to sign the transaction so that the signature can be effectively verified by the smart contract; this corresponds to the validator public key set of the smart contract;
- the relay is responsible for all transaction forwarding, forwarding the signed SignTx to the smart contract.
- the working process of each master node in the practical Byzantine fault-tolerant algorithm is called a view, and v represents the view number
- Its operation method process when working normally, receive the transaction request from the client, after verifying the identity of the request, set the number for the request, and broadcast the pre-prepare message;
- the new master node When the new master node is elected, it will send View-New information according to the View-Change message collected by itself, so that other nodes can synchronize data;
- the master node maintains a heartbeat with all other nodes
- the master node does not send the received request.
- the client fails to reply after a timeout, it will resend the request to all replica nodes and trigger view-change;
- the primary node tampers with the message. Because there is data and the signature of the client in the Request, the primary cannot tamper with the message. The other replicas will first verify the legitimacy of the message, otherwise discard it and trigger view-change.
- the first step is to upload the block data information and store it effectively: when storing the block data information, first send a request to a certain node in the block chain, and complete the quick determination through the consensus algorithm , and then divide the data file into pieces, and implement encryption and hash generation for each data piece, and then copy, differentiate and record it on the ledger;
- the second step the block data information is connected in a chain: after fragmentation in S1, connect all the fragments in each data file, and perform branch chain chain connection through the address timestamp to complete the same All fragments in the data file are connected organically to improve the speed of data information retrieval;
- the third step when the data file information is uploaded, carry the time stamp: when the data file information is uploaded, the time stamp is carried on the block header of the data file information, and each fragment of the data file information is changed
- the block headers of each block carry the same time stamp, and are finally connected into a blockchain according to the sequence of block generation time, and then realize distributed storage of data file information according to different time stamps, and each independent node passes through
- the P2P network establishes a connection, thus forming a decentralized distributed time stamp service system for the recording of information data;
- the fourth step is to store the data file information in all nodes through distributed storage: through distributed storage, the data file information is stored in all nodes, and then the data file information can be quickly queried and stored. It can effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the need for nodes to access all nodes when performing data queries the complexity of
- the fifth step is to carry out cross-chain communication between different blockchains, complete effective cross-chain communication, and improve the coordination of data information: through the notary mechanism, side chain, relay, and hash between different blockchains Locking, distributed private key control or heterogeneous cross-chain PegZone realizes cross-chain connections, enabling communication connections between different blockchains.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Disclosed in the present invention is a method for the high-performance distributed storage of block data and timestamp, cross-chain communication and data collaboration. The method comprises: S1, uploading block data information, and effectively storing same; S2, performing chain-type connection on the block data information; S3, when being uploaded, data file information carrying a timestamp; S4, respectively storing the data file information in all nodes by means of distributed storage; and S5, performing cross-chain communication between different blockchains, so as to complete effective cross-chain communication, thereby improving the collaboration of data information. By means of the present invention, the distributed storage of data information of blockchains is realized, a rapid identification process is completed by means of a consensus algorithm, the sharding storage of the data information is realized, a timestamp is carried in data, and cross-chain communication between different blockchains is realized, so as to complete data collaboration between the data information.
Description
本发明属于区块链技术领域,具体涉及一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法。The invention belongs to the technical field of block chains, and in particular relates to a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method.
区块链涉及数学、密码学、互联网和计算机编程等很多科学技术问题。从应用视角来看,简单来说,区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。而区块链丰富的应用场景,基本上都基于区块链能够解决信息不对称问题,实现多个主体之间的协作信任与一致行动。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链,是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块,然而市面上各种的区块链仍存在各种各样的问题。Blockchain involves many scientific and technical issues such as mathematics, cryptography, Internet and computer programming. From the perspective of application, in simple terms, blockchain is a distributed shared ledger and database, which has the characteristics of decentralization, non-tampering, traceability throughout the process, traceability, collective maintenance, and openness and transparency. These characteristics ensure the "honesty" and "transparency" of the blockchain, and lay the foundation for the creation of trust in the blockchain. The rich application scenarios of the blockchain are basically based on the fact that the blockchain can solve the problem of information asymmetry and realize collaborative trust and concerted action among multiple subjects. Blockchain is a new application model of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm. Blockchain is an important concept of Bitcoin. It is essentially a decentralized database. At the same time, as the underlying technology of Bitcoin, it is a series of data blocks associated with each other using cryptographic methods. Each data block It contains a batch of bitcoin network transaction information, which is used to verify the validity of the information (anti-counterfeiting) and generate the next block. However, there are still various problems in various blockchains on the market.
如授权公告号为CN112637297A所公开的基于区块链的数据分布式存储以及数据获取方法、装置,其虽然实现了配置有D2D协议的终端设备可以将数据迅速上传至区块链服务器后,区块链服务器利用区块链技术分布式存储于其他节点。同时,各个节点之间可以通过复用小区资源(D2D协议)直接进行通信,快速地、高效地获取分布式存储于其他节点上的数据,但是并未解决现有不能够有效的进行高性能的分布式存储数据、并且实现对数据进行时间戳的携带,进行有效的跨链通信和数据协同等的问题,为此我们提出一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法。For example, the block chain-based data distributed storage and data acquisition method and device disclosed by the authorized announcement number CN112637297A, although it realizes that the terminal equipment configured with the D2D protocol can quickly upload the data to the block chain server, the block chain The chain server utilizes blockchain technology to distribute storage in other nodes. At the same time, each node can directly communicate with each other through multiplexing cell resources (D2D protocol), and quickly and efficiently obtain distributed data stored on other nodes. Distributed storage of data, and realize the carrying of time stamps on data, effective cross-chain communication and data collaboration, etc., for this we propose a high-performance distributed storage block data, time stamp, cross-chain communication and Data collaboration method.
发明内容Contents of the invention
本发明的目的在于提供一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,以解决上述背景技术中提出的问题。The purpose of the present invention is to provide a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method to solve the problems raised in the above-mentioned background technology.
为实现上述目的,本发明提供如下技术方案:一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,包括有以下方法步骤:In order to achieve the above purpose, the present invention provides the following technical solution: a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method, including the following method steps:
S1、实现对区块数据信息进行上传,并且进行有效的存储:在进行数据信息的区块存储的时候,先向区块链中的某一个节点进行发送请求,通过共识算法完成快速确定,然后将数据文件分片,并且实现对每个数据分片进行加密和生成哈希,然后进行复制、分化和记录到分类账上;S1. Realize uploading and effective storage of block data information: when storing data information blocks, first send a request to a certain node in the blockchain, and complete the quick determination through the consensus algorithm, and then Fragment the data file, and realize the encryption and hash generation of each data fragment, and then copy, differentiate and record it on the ledger;
S2、区块数据信息在进行链式连接:在S1中进行分片之后,将每一数据文件中的所有分片进行连接,通过地址时间戳进行支链链式连接,完成对同一个数据文件中的所有分片进行有机的数据连接,提高数据信息在进行检索时候的快速性;S2. The block data information is connected in a chain: after fragmentation in S1, all the fragments in each data file are connected, and the branch chain chain connection is performed through the address timestamp to complete the same data file All fragments in the database are connected organically to improve the speed of data information retrieval;
S3、数据文件信息在进行上传的时候,携带时间戳:在数据文件信息进行上传的时候,在数据文件信息的区块头上进行携带时间戳,并且在改数据文件信息的每个分片的区块头上都携带相同的时间戳,并且在最终依照区块生成时间的先后顺序相连成区块链,并且再根据不同时间戳实现对数据文件信息进行分布式存储,每个独立节点又通过P2P网络建立联系,这样就为信息数据的记录形成了一个去中心化的分布式时间戳服务系统;S3. When the data file information is uploaded, carry the time stamp: when the data file information is uploaded, carry the time stamp on the block header of the data file information, and change the area of each fragment of the data file information The block headers all carry the same time stamp, and are finally connected into a blockchain according to the order of block generation time, and then realize distributed storage of data file information according to different time stamps, and each independent node passes through the P2P network Establish a connection, thus forming a decentralized distributed timestamp service system for the recording of information data;
S4、通过分布式存储使得数据文件信息分别存储在所有的节点内:通过分布式存储使得数据文件信息分别存储在所有的节点内,继而使得数据文件信息在进行查询和存储的时候能够快速的进行,有效的提高数据协同的操作,并且在区块链中心处设有服务器,实现对区块链节点的所有信息进行接收和转发,减少节点在进行数据查询的时候,对所有节点进行访问的复杂程度;S4. The data file information is stored in all nodes through distributed storage: the data file information is stored in all nodes through distributed storage, and then the data file information can be quickly queried and stored. , effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the complexity of accessing all nodes when nodes perform data queries degree;
S5、在不同区块链之间进行跨链通讯,完成有效的跨链通讯,提高数据信息的协同:在不同的区块链之间通过公证人机制、侧链、中继、哈希锁定、 分布式私钥控制或者异构跨链PegZone实现跨链连接,使得不同区块链之间能够实现通讯连接。S5. Carry out cross-chain communication between different blockchains to complete effective cross-chain communication and improve the coordination of data information: between different blockchains through notary mechanisms, side chains, relays, hash locks, Distributed private key control or heterogeneous cross-chain PegZone realizes cross-chain connections, enabling communication connections between different blockchains.
较佳的,所述S1中的共识算法中包括有工作量证明、权益证明、委托权益证明和实用拜占庭容错算法,所述实用拜占庭容错算法一种状态机副本复制算法,即服务作为状态机进行建模,状态机在分布式系统的不同节点进行副本复制,每个状态机的副本都保存了服务的状态,同时也实现了服务的操作,将所有的副本组成的集合使用大写字母R表示,使用0到|R|-1的整数表示每一个副本,假设|R|=3f+1,这里f是有可能失效的副本的最大个数,尽管可以存在多于3f+1个副本,但是额外的副本除了降低性能之外不能提高可靠性。Preferably, the consensus algorithm in S1 includes Proof of Work, Proof of Stake, Proof of Delegated Stake and Practical Byzantine Fault Tolerant Algorithm, the Practical Byzantine Fault Tolerant Algorithm is a state machine copy replication algorithm, that is, the service is performed as a state machine Modeling, the state machine performs copy replication on different nodes of the distributed system, and each copy of the state machine saves the state of the service, and at the same time realizes the operation of the service. The set of all copies is represented by the capital letter R, Use an integer from 0 to |R|-1 to represent each copy, assuming |R|=3f+1, where f is the maximum number of copies that may fail, although there can be more than 3f+1 copies, but additional A copy of , does not improve reliability other than performance.
较佳的,所述S1中的分片的数据大小保持在128M Bytes,然后以序列成字节码的形式写入dat文件中,在序列化的过程中,若检测到当前写入文件尺寸加上区块尺寸大于128M Bytes,则会重新生成一个dat文件,具体的序列化过程如下所述:Preferably, the data size of the fragments in the S1 is maintained at 128M Bytes, and then written into the dat file in the form of sequenced bytecodes. In the process of serialization, if it is detected that the current write file size increases If the upper block size is greater than 128M Bytes, a dat file will be regenerated. The specific serialization process is as follows:
获取当前dat文件大小npos,并将区块大小追加写入至dat文件中,Get the current dat file size npos, and append the block size to the dat file,
序列化区块数据和区块中的交易数据,并将序列化的数据追加至dat文件中,Serialize the block data and transaction data in the block, and append the serialized data to the dat file,
在写入数据的过程中,会生成区块和交易相关的元数据,In the process of writing data, metadata related to blocks and transactions will be generated,
若检测到当前写入文件尺寸加上区块尺寸小于等于128M Bytes,则直接生成一个dat文件。If it is detected that the current written file size plus the block size is less than or equal to 128M Bytes, a dat file will be generated directly.
较佳的,所述S1中的分片包括有以下步骤:Preferably, the fragmentation in S1 includes the following steps:
创建数据分片:存储系统将数据分成更小的片段,这个过程称为分片,这一步将数据分解为可管理的块,这些块可以分布在多个节点上;Create data shards: The storage system divides data into smaller pieces, a process called sharding, which breaks down data into manageable chunks that can be distributed across multiple nodes;
加密每个分片:分片之后,存储系统需要加密本地系统上的每个数据分片,内容所有者完全控制此过程,目标是确保内容所有者以外的任何人都无 法查看/访问分片中的数据,无论数据位于何处、该数据是静态还是动态;Encrypt each shard: After sharding, the storage system needs to encrypt each shard of data on the local system, the content owner has full control over this process, the goal is to ensure that no one other than the content owner can view/access the data in the shard data, regardless of where the data is located, whether that data is static or dynamic;
为每个分片生成哈希:区块链存储系统根据分片的数据或加密密钥生成唯一的哈希——即固定长度的加密输出字符串,哈希将添加到分类帐和分片元数据,以便将事务链接到存储的分片;Generate a hash for each shard: The blockchain storage system generates a unique hash based on the shard’s data or encryption key—that is, a fixed-length encrypted output string, which is added to the ledger and the shard element data in order to link transactions to shards of storage;
复制每个分片:存储系统会复制每个分片,因此有足够的冗余副本,可确保可用性和性能,并防止性能下降和数据丢失,由内容所有者来决定每个分片的副本数量以及这些分片所在的位置,此过程中,内容所有者为需要维护的最小副本数建立阈值,以确保不会丢失数据;Replicate each shard: The storage system replicates each shard so there are enough redundant copies to ensure availability and performance and prevent performance degradation and data loss, the number of replicas per shard is up to the content owner and where those shards reside, where the content owner establishes a threshold for the minimum number of replicas that need to be maintained to ensure no data loss;
分发复制的分片:P2P网络将复制的分片分发到地理上分散的存储节点,无论是区域还是全局,多个组织或个人拥有存储节点,通过租用额外的存储空间可换取某种类型的补偿,没有一个实体能够拥有所有存储资源,或者控制存储基础架构,只有内容所有者才能完全访问其所有数据,无论这些节点位于何处;Distributing replicated shards: The P2P network distributes replicated shards to geographically dispersed storage nodes, whether regional or global, multiple organizations or individuals own storage nodes, and rent additional storage space in exchange for some type of compensation , no one entity can own all storage resources, or control the storage infrastructure, and only content owners have full access to all their data, no matter where these nodes are located;
将交易记录到分类帐:存储系统记录区块链分类帐中的所有事务,并在所有节点之间同步该信息,分类帐存储与事务相关的详细信息,由于分类帐基于区块链技术,因此它具有透明性、可验证性、可追溯性以及防篡改性。Record transactions to the ledger: The storage system records all transactions in the blockchain ledger and synchronizes this information among all nodes. The ledger stores details related to transactions. Since the ledger is based on blockchain technology, it It is transparent, verifiable, traceable, and tamper-resistant.
较佳的,所述S3中的时间戳处于区块头中,区块头和区块体共同构成区块,区块体中记录着该区块被创建这段时间内的所有交易数据,这些记录通过merkle树组织起来,merkle树根的哈希值作为本区块中所有交易记录的总结、摘要、“指纹”被放入区块头当中,区块头中不光有merkle树根,还有前一个区块头的摘要,也就是前一区块的merkle树根、本区块的时间戳、高度:即从第一个区块开始数,本区块是第几个区块的信息。Preferably, the timestamp in the S3 is in the block header, the block header and the block body together constitute a block, and the block body records all transaction data during the period when the block is created, and these records are passed through The merkle tree is organized, and the hash value of the merkle tree root is put into the block header as the summary, abstract, and "fingerprint" of all transaction records in this block. The block header includes not only the merkle tree root, but also the previous block header The summary, that is, the merkle tree root of the previous block, the timestamp of this block, and the height: that is, counting from the first block, the information of which block this block is.
较佳的,所述S2中的分片之间的连接通过地址信息和哈希算法进行实现精准的算法,保持分片之间的连接,能够实现查询时的连接,完成查询时的数据文件的全部提取。Preferably, the connection between the fragments in the S2 is implemented through address information and a hash algorithm to implement an accurate algorithm, maintain the connection between the fragments, and realize the connection during the query, and complete the connection of the data file during the query. Extract all.
较佳的,所述S4中的存储支持存储自定义类型的结构化数据,从而增加了扩展;Nervos支持通过Generator部署不同的共识算法获得性能与网络分散度的平衡,Nervos提出了一种新的区块链设计,分别由可以存放多个数据的cell,应用的执行逻辑生成器Generator,Validator,Type,Identity五种元素组成能够自治及验证分离的分布式架构,Nervos改变了原有的数据输入,验证,打包的流程,当事件X发生时,客户端先通过Identity验证确定身份,同时将链外的状态Y通过共识做对应的映射存储到客户端中,执行逻辑生成器Generator将事件状态Y,通过哈希传递到记账的节点,节点上只需要Validator验证链上的映射是否与链下的事件状态Y一致,若确认,打包成下一个区块。Preferably, the storage in the S4 supports storing custom types of structured data, thereby increasing the expansion; Nervos supports the deployment of different consensus algorithms through the Generator to achieve a balance between performance and network decentralization. Nervos proposes a new Blockchain design consists of a cell that can store multiple data, and an application execution logic generator Generator, Validator, Type, and Identity to form a distributed architecture capable of autonomy and verification separation. Nervos has changed the original data input , verification, packaging process, when an event X occurs, the client first confirms the identity through Identity verification, and at the same time stores the corresponding mapping of the state Y outside the chain to the client through the consensus, and executes the logic generator Generator to convert the event state Y , passed to the accounting node through the hash, the node only needs the Validator to verify whether the mapping on the chain is consistent with the event state Y under the chain, and if confirmed, it will be packaged into the next block.
较佳的,所述存储的是状态的映射,链条通过反向逻辑可推断链上与链下数据是否一致,且对于新加入的节点要是同步节点,担计算工作的记账节点都是在运营方或参与方,管理合约还可以对记账节点的权重进行设置,这个层面要更好的节点投票决议和动态加入。Preferably, the storage is a state mapping, and the chain can infer whether the data on the chain and the data off the chain are consistent through reverse logic, and if the newly added node is a synchronous node, the accounting nodes responsible for the calculation work are all in operation Parties or participants, the management contract can also set the weight of the bookkeeping nodes. This level requires better node voting decisions and dynamic joining.
较佳的,所述S5中的异构跨链PegZone包括有五部分,分别为:Preferably, the heterogeneous cross-chain PegZone in S5 includes five parts, which are:
smart contract:资产托管在以太坊和Cosmos中代币托管中的作用,它主要提供四种方法:锁定,解锁,铸造和销毁;smart contract: the role of asset custody in token custody in Ethereum and Cosmos, it mainly provides four methods: lock, unlock, mint and destroy;
witness:这是一个完整的以太坊节点,它监视以太坊合约的事件并等待生成100个区块,封装的见证人Tx被提交给PegZone以证明以太坊区块链上的状态变化;witness: This is a full Ethereum node, which monitors the events of the Ethereum contract and waits for 100 blocks to be generated, and the encapsulated witness Tx is submitted to PegZone to prove the state change on the Ethereum blockchain;
PegZone:PegZone是基于Tendermint的区块链,可维护用户帐户信息,允许用户之间进行资产转移并提供交易查询;PegZone: PegZone is a Tendermint-based blockchain that maintains user account information, allows asset transfers between users and provides transaction queries;
signer:Secp256k1用于签名交易,以便可以通过智能合约有效地验证签名;这对应于智能合约的验证者公钥集;signer: Secp256k1 is used to sign the transaction so that the signature can be effectively verified by the smart contract; this corresponds to the validator public key set of the smart contract;
relay:relay负责所有事务转发,将已签名的SignTx转发到智能合约。relay: The relay is responsible for all transaction forwarding, forwarding the signed SignTx to the smart contract.
较佳的,所述实用拜占庭容错算法中的每个主节点的工作过程称为一个视图,用v表示视图编号,Preferably, the working process of each master node in the practical Byzantine fault-tolerant algorithm is called a view, and v represents the view number,
主节点由普通节点轮流当选,具体计算过程为主节点p=v mod|R|(|R|为节点个数),The master node is elected by ordinary nodes in turn, and the specific calculation process is master node p=v mod|R| (|R| is the number of nodes),
其运行方法过程:正常工作时,接收客户端的事务请求,验证request身份后,为该请求设置编号,广播pre-prepare消息;Its operation method process: when working normally, receive the transaction request from the client, after verifying the identity of the request, set the number for the request, and broadcast the pre-prepare message;
新主节点当选时,根据自己收集的View-Change消息,发送View-New信息,让其它节点同步数据;When the new master node is elected, it will send View-New information according to the View-Change message collected by itself, so that other nodes can synchronize data;
主节点与所有的其它节点维系心跳;The master node maintains a heartbeat with all other nodes;
主节点宕机,会因为心跳超时,而触发重新选举,保证系统运行稳定;If the master node is down, re-election will be triggered due to the heartbeat timeout, so as to ensure the stable operation of the system;
主节点恶意发送错误编号的消息,那么会在后续的操作中,被副本节点察觉,因为prepare和commit阶段都是会进行广播的,一旦不一致,触发view-change;If the master node maliciously sends a message with the wrong number, it will be noticed by the replica node in the subsequent operation, because the prepare and commit phases will broadcast, and if they are inconsistent, view-change will be triggered;
主节点不发送接收到的request,客户端在超时未回复时,会重发request到所有的副本节点,并触发view-change;The master node does not send the received request. When the client fails to reply after a timeout, it will resend the request to all replica nodes and trigger view-change;
主节点节点篡改消息,因为有Request里面有数据和客户端的签名,所以primary无法篡改消息,其它副本会先验证消息的合法性,否则丢弃,并触发view-change。The primary node tampers with the message. Because there is data and the signature of the client in the Request, the primary cannot tamper with the message. The other replicas will first verify the legitimacy of the message, otherwise discard it and trigger view-change.
与现有技术相比,本发明的有益效果是:Compared with prior art, the beneficial effect of the present invention is:
本发明实现对区块链的数据信息进行分布式存储,并且通过共识算法完成对快速的认定过程,加快对区块链内部的数据信息进行存储上传,并且实现对数据信息进行分片存储,加快存储速度和查询速度,便于进行处理使用,以及对数据进行携带时间戳,可以便于数据信息进行存储和查询,以及实现对不同区块链之间进行跨链通信,完成对数据信息之间的数据协同,提高区块链之间的数据信息传输和连接,便于进行使用和操作。The present invention realizes the distributed storage of the data information of the block chain, and completes the fast identification process through the consensus algorithm, accelerates the storage and upload of the data information inside the block chain, and realizes the fragmented storage of the data information, speeding up The storage speed and query speed are convenient for processing and use, and the time stamp is carried on the data, which can facilitate the storage and query of data information, and realize cross-chain communication between different blockchains, and complete the data exchange between data information Collaboration improves the transmission and connection of data information between blockchains for ease of use and operation.
图1为本发明的步骤结构示意图;Fig. 1 is the step structural representation of the present invention;
图2为本发明的dat文件序列化步骤示意图;Fig. 2 is a schematic diagram of the dat file serialization steps of the present invention;
图3为本发明的分片步骤示意图。Fig. 3 is a schematic diagram of fragmentation steps in the present invention.
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some, not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.
请参阅图1-3,本发明提供一种技术方案:一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,包括有以下方法步骤:Please refer to Figures 1-3, the present invention provides a technical solution: a high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method, including the following method steps:
S1、实现对区块数据信息进行上传,并且进行有效的存储:在进行数据信息的区块存储的时候,先向区块链中的某一个节点进行发送请求,通过共识算法完成快速确定,然后将数据文件分片,并且实现对每个数据分片进行加密和生成哈希,然后进行复制、分化和记录到分类账上;S1. Realize uploading and effective storage of block data information: when storing data information blocks, first send a request to a certain node in the blockchain, and complete the quick determination through the consensus algorithm, and then Fragment the data file, and realize the encryption and hash generation of each data fragment, and then copy, differentiate and record it on the ledger;
S2、区块数据信息在进行链式连接:在S1中进行分片之后,将每一数据文件中的所有分片进行连接,通过地址时间戳进行支链链式连接,完成对同一个数据文件中的所有分片进行有机的数据连接,提高数据信息在进行检索时候的快速性;S2. The block data information is connected in a chain: after fragmentation in S1, all the fragments in each data file are connected, and the branch chain chain connection is performed through the address timestamp to complete the same data file All fragments in the database are connected organically to improve the speed of data information retrieval;
S3、数据文件信息在进行上传的时候,携带时间戳:在数据文件信息进行上传的时候,在数据文件信息的区块头上进行携带时间戳,并且在改数据文件信息的每个分片的区块头上都携带相同的时间戳,并且在最终依照区块生成时间的先后顺序相连成区块链,并且再根据不同时间戳实现对数据文件信息进行分布式存储,每个独立节点又通过P2P网络建立联系,这样就为信息数据的记录形成了一个去中心化的分布式时间戳服务系统;S3. When the data file information is uploaded, carry the time stamp: when the data file information is uploaded, carry the time stamp on the block header of the data file information, and change the area of each fragment of the data file information The block headers all carry the same time stamp, and are finally connected into a blockchain according to the order of block generation time, and then realize distributed storage of data file information according to different time stamps, and each independent node passes through the P2P network Establish a connection, thus forming a decentralized distributed timestamp service system for the recording of information data;
S4、通过分布式存储使得数据文件信息分别存储在所有的节点内:通过分布式存储使得数据文件信息分别存储在所有的节点内,继而使得数据文件信息在进行查询和存储的时候能够快速的进行,有效的提高数据协同的操作,并且在区块链中心处设有服务器,实现对区块链节点的所有信息进行接收和转发,减少节点在进行数据查询的时候,对所有节点进行访问的复杂程度;S4. The data file information is stored in all nodes through distributed storage: the data file information is stored in all nodes through distributed storage, and then the data file information can be quickly queried and stored. , effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the complexity of accessing all nodes when nodes perform data queries degree;
S5、在不同区块链之间进行跨链通讯,完成有效的跨链通讯,提高数据信息的协同:在不同的区块链之间通过公证人机制、侧链、中继、哈希锁定、分布式私钥控制或者异构跨链PegZone实现跨链连接,使得不同区块链之间能够实现通讯连接。S5. Carry out cross-chain communication between different blockchains to complete effective cross-chain communication and improve the coordination of data information: between different blockchains through notary mechanisms, side chains, relays, hash locks, Distributed private key control or heterogeneous cross-chain PegZone realizes cross-chain connections, enabling communication connections between different blockchains.
为了提高对节点上传数据信息进行快速的认定操作,本实施例中,优选的,所述S1中的共识算法中包括有工作量证明、权益证明、委托权益证明和实用拜占庭容错算法,所述实用拜占庭容错算法一种状态机副本复制算法,即服务作为状态机进行建模,状态机在分布式系统的不同节点进行副本复制,每个状态机的副本都保存了服务的状态,同时也实现了服务的操作,将所有的副本组成的集合使用大写字母R表示,使用0到|R|-1的整数表示每一个副本,假设|R|=3f+1,这里f是有可能失效的副本的最大个数,尽管可以存在多于3f+1个副本,但是额外的副本除了降低性能之外不能提高可靠性。In order to improve the fast identification operation of the data information uploaded by nodes, in this embodiment, preferably, the consensus algorithm in S1 includes proof of work, proof of equity, proof of entrusted equity and practical Byzantine fault-tolerant algorithm. Byzantine Fault Tolerance Algorithm A state machine copy replication algorithm, that is, the service is modeled as a state machine, and the state machine is copied on different nodes in the distributed system. Each copy of the state machine saves the state of the service, and also realizes The operation of the service, the set of all replicas is represented by the capital letter R, and each replica is represented by an integer from 0 to |R|-1, assuming |R|=3f+1, where f is a replica that may fail Maximum number, although there can be more than 3f+1 replicas, additional replicas do not improve reliability other than performance.
为了使得数据信息存储的快捷和便于进行查询,本实施例中,优选的,所述S1中的分片的数据大小保持在128M Bytes,然后以序列成字节码的形式写入dat文件中,在序列化的过程中,若检测到当前写入文件尺寸加上区块尺寸大于128M Bytes,则会重新生成一个dat文件,具体的序列化过程如下所述:In order to make the data information storage quick and easy to query, in this embodiment, preferably, the data size of the fragmentation in the S1 is kept at 128M Bytes, and then written in the dat file in the form of a sequence of bytecodes, During the serialization process, if it is detected that the current written file size plus the block size is greater than 128M Bytes, a dat file will be regenerated. The specific serialization process is as follows:
获取当前dat文件大小npos,并将区块大小追加写入至dat文件中,Get the current dat file size npos, and append the block size to the dat file,
序列化区块数据和区块中的交易数据,并将序列化的数据追加至dat文件中,Serialize the block data and transaction data in the block, and append the serialized data to the dat file,
在写入数据的过程中,会生成区块和交易相关的元数据,In the process of writing data, metadata related to blocks and transactions will be generated,
若检测到当前写入文件尺寸加上区块尺寸小于等于128M Bytes,则直接生成一个dat文件。If it is detected that the current written file size plus the block size is less than or equal to 128M Bytes, a dat file will be generated directly.
为了实现对数据信息进行分片操作,本实施例中,优选的,所述S1中的分片包括有以下步骤:In order to implement fragmentation operations on data information, in this embodiment, preferably, the fragmentation in S1 includes the following steps:
创建数据分片:存储系统将数据分成更小的片段,这个过程称为分片,这一步将数据分解为可管理的块,这些块可以分布在多个节点上;Create data shards: The storage system divides data into smaller pieces, a process called sharding, which breaks down data into manageable chunks that can be distributed across multiple nodes;
加密每个分片:分片之后,存储系统需要加密本地系统上的每个数据分片,内容所有者完全控制此过程,目标是确保内容所有者以外的任何人都无法查看/访问分片中的数据,无论数据位于何处、该数据是静态还是动态;Encrypt each shard: After sharding, the storage system needs to encrypt each shard of data on the local system, the content owner has full control over this process, the goal is to ensure that no one other than the content owner can view/access the data in the shard data, regardless of where the data is located, whether that data is static or dynamic;
为每个分片生成哈希:区块链存储系统根据分片的数据或加密密钥生成唯一的哈希——即固定长度的加密输出字符串,哈希将添加到分类帐和分片元数据,以便将事务链接到存储的分片;Generate a hash for each shard: The blockchain storage system generates a unique hash based on the shard’s data or encryption key—that is, a fixed-length encrypted output string, which is added to the ledger and the shard element data in order to link transactions to shards of storage;
复制每个分片:存储系统会复制每个分片,因此有足够的冗余副本,可确保可用性和性能,并防止性能下降和数据丢失,由内容所有者来决定每个分片的副本数量以及这些分片所在的位置,此过程中,内容所有者为需要维护的最小副本数建立阈值,以确保不会丢失数据;Replicate each shard: The storage system replicates each shard so there are enough redundant copies to ensure availability and performance and prevent performance degradation and data loss, the number of replicas per shard is up to the content owner and where those shards reside, where the content owner establishes a threshold for the minimum number of replicas that need to be maintained to ensure no data loss;
分发复制的分片:P2P网络将复制的分片分发到地理上分散的存储节点,无论是区域还是全局,多个组织或个人拥有存储节点,通过租用额外的存储空间可换取某种类型的补偿,没有一个实体能够拥有所有存储资源,或者控制存储基础架构,只有内容所有者才能完全访问其所有数据,无论这些节点位于何处;Distributing replicated shards: The P2P network distributes replicated shards to geographically dispersed storage nodes, whether regional or global, multiple organizations or individuals own storage nodes, and rent additional storage space in exchange for some type of compensation , no one entity can own all storage resources, or control the storage infrastructure, and only content owners have full access to all their data, no matter where these nodes are located;
将交易记录到分类帐:存储系统记录区块链分类帐中的所有事务,并在所有节点之间同步该信息,分类帐存储与事务相关的详细信息,由于分类帐基于区块链技术,因此它具有透明性、可验证性、可追溯性以及防篡改性。Record transactions to the ledger: The storage system records all transactions in the blockchain ledger and synchronizes this information among all nodes. The ledger stores details related to transactions. Since the ledger is based on blockchain technology, it It is transparent, verifiable, traceable, and tamper-resistant.
为了实现对数据信息进行携带时间戳,本实施例中,优选的,所述S3中的时间戳处于区块头中,区块头和区块体共同构成区块,区块体中记录着该区块被创建这段时间内的所有交易数据,这些记录通过merkle树组织起来,merkle树根的哈希值作为本区块中所有交易记录的总结、摘要、“指纹”被放入区块头当中,区块头中不光有merkle树根,还有前一个区块头的摘要,也就是前一区块的merkle树根、本区块的时间戳、高度:即从第一个区块开始数,本区块是第几个区块的信息。In order to carry the time stamp on the data information, in this embodiment, preferably, the time stamp in S3 is in the block header, the block header and the block body together form a block, and the block body records the block All transaction data during the period of creation, these records are organized through the merkle tree, and the hash value of the root of the merkle tree is put into the block header as the summary, summary, and "fingerprint" of all transaction records in this block. The block header contains not only the merkle tree root, but also the summary of the previous block header, that is, the merkle tree root of the previous block, the timestamp of this block, and the height: that is, counting from the first block, this block It is the information of the first few blocks.
为了实现对分片之间进行地址连接,本实施例中,优选的,所述S2中的分片之间的连接通过地址信息和哈希算法进行实现精准的算法,保持分片之间的连接,能够实现查询时的连接,完成查询时的数据文件的全部提取。In order to realize the address connection between the fragments, in this embodiment, preferably, the connection between the fragments in the S2 implements an accurate algorithm through address information and a hash algorithm, and maintains the connection between the fragments , can realize the connection during the query, and complete the extraction of all the data files during the query.
为了实现对存储的进行自定义类型的结构化数据存储,本实施例中,优选的,所述S4中的存储支持存储自定义类型的结构化数据,从而增加了扩展;Nervos支持通过Generator部署不同的共识算法获得性能与网络分散度的平衡,Nervos提出了一种新的区块链设计,分别由可以存放多个数据的cell,应用的执行逻辑生成器Generator,Validator,Type,Identity五种元素组成能够自治及验证分离的分布式架构,Nervos改变了原有的数据输入,验证,打包的流程,当事件X发生时,客户端先通过Identity验证确定身份,同时将链外的状态Y通过共识做对应的映射存储到客户端中,执行逻辑生成器Generator将事件状态Y,通过哈希传递到记账的节点,节点上只需要Validator验证链上的映射是否与链下的事件状态Y一致,若确认,打包成下一个区块,所述存储的是状态的映射,链条通过反向逻辑可推断链上与链下数据是否一致,且对于新加入的节点要是同步节点,担计算工作的记账节点都是在运营方或参与方,管理合约还可以对记账节点的权重进行设置,这个层面要更好的节点投票决议和动态加入。In order to realize self-defined structured data storage for storage, in this embodiment, preferably, the storage in S4 supports storage of self-defined structured data, thereby increasing expansion; Nervos supports deploying different The consensus algorithm achieves a balance between performance and network dispersion. Nervos proposes a new blockchain design, which consists of five elements: a cell that can store multiple data, and an application execution logic generator Generator, Validator, Type, and Identity. Forming a distributed architecture capable of autonomy and verification separation, Nervos has changed the original data input, verification, and packaging processes. When an event X occurs, the client first confirms its identity through Identity verification, and at the same time, the state Y outside the chain is passed through consensus. Make the corresponding mapping and store it in the client, and execute the logic generator to pass the event state Y to the accounting node through hash. The node only needs the Validator to verify whether the mapping on the chain is consistent with the event state Y off the chain. If it is confirmed, it will be packaged into the next block. The storage is the mapping of the state. The chain can infer whether the data on the chain and the data off the chain are consistent through reverse logic. The accounting nodes are all on the operator or participating side, and the management contract can also set the weight of the accounting nodes. At this level, better node voting decisions and dynamic joining are required.
为了实现对跨链通信,本实施例中,优选的,所述S5中的异构跨链PegZone 包括有五部分,分别为:In order to realize cross-chain communication, in this embodiment, preferably, the heterogeneous cross-chain PegZone in S5 includes five parts, which are:
smart contract:资产托管在以太坊和Cosmos中代币托管中的作用,它主要提供四种方法:锁定,解锁,铸造和销毁;smart contract: the role of asset custody in token custody in Ethereum and Cosmos, it mainly provides four methods: lock, unlock, mint and destroy;
witness:这是一个完整的以太坊节点,它监视以太坊合约的事件并等待生成100个区块,封装的见证人Tx被提交给PegZone以证明以太坊区块链上的状态变化;witness: This is a full Ethereum node, which monitors the events of the Ethereum contract and waits for 100 blocks to be generated, and the encapsulated witness Tx is submitted to PegZone to prove the state change on the Ethereum blockchain;
PegZone:PegZone是基于Tendermint的区块链,可维护用户帐户信息,允许用户之间进行资产转移并提供交易查询;PegZone: PegZone is a Tendermint-based blockchain that maintains user account information, allows asset transfers between users and provides transaction queries;
signer:Secp256k1用于签名交易,以便可以通过智能合约有效地验证签名;这对应于智能合约的验证者公钥集;signer: Secp256k1 is used to sign the transaction so that the signature can be effectively verified by the smart contract; this corresponds to the validator public key set of the smart contract;
relay:relay负责所有事务转发,将已签名的SignTx转发到智能合约。relay: The relay is responsible for all transaction forwarding, forwarding the signed SignTx to the smart contract.
为了实现进行共识算法,确定节点之间的确定地位,本实施例中,优选的,所述实用拜占庭容错算法中的每个主节点的工作过程称为一个视图,用v表示视图编号,In order to implement the consensus algorithm and determine the definite position between nodes, in this embodiment, preferably, the working process of each master node in the practical Byzantine fault-tolerant algorithm is called a view, and v represents the view number,
主节点由普通节点轮流当选,具体计算过程为主节点p=v mod|R|(|R|为节点个数),The master node is elected by ordinary nodes in turn, and the specific calculation process is master node p=v mod|R| (|R| is the number of nodes),
其运行方法过程:正常工作时,接收客户端的事务请求,验证request身份后,为该请求设置编号,广播pre-prepare消息;Its operation method process: when working normally, receive the transaction request from the client, after verifying the identity of the request, set the number for the request, and broadcast the pre-prepare message;
新主节点当选时,根据自己收集的View-Change消息,发送View-New信息,让其它节点同步数据;When the new master node is elected, it will send View-New information according to the View-Change message collected by itself, so that other nodes can synchronize data;
主节点与所有的其它节点维系心跳;The master node maintains a heartbeat with all other nodes;
主节点宕机,会因为心跳超时,而触发重新选举,保证系统运行稳定;If the master node is down, re-election will be triggered due to the heartbeat timeout, so as to ensure the stable operation of the system;
主节点恶意发送错误编号的消息,那么会在后续的操作中,被副本节点察觉,因为prepare和commit阶段都是会进行广播的,一旦不一致,触发view-change;If the master node maliciously sends a message with the wrong number, it will be noticed by the replica node in the subsequent operation, because the prepare and commit phases will broadcast, and if they are inconsistent, view-change will be triggered;
主节点不发送接收到的request,客户端在超时未回复时,会重发request到所有的副本节点,并触发view-change;The master node does not send the received request. When the client fails to reply after a timeout, it will resend the request to all replica nodes and trigger view-change;
主节点节点篡改消息,因为有Request里面有数据和客户端的签名,所以primary无法篡改消息,其它副本会先验证消息的合法性,否则丢弃,并触发view-change。The primary node tampers with the message. Because there is data and the signature of the client in the Request, the primary cannot tamper with the message. The other replicas will first verify the legitimacy of the message, otherwise discard it and trigger view-change.
本发明的工作原理及使用流程:Principle of work of the present invention and use process:
第一步、实现对区块数据信息进行上传,并且进行有效的存储:在进行数据信息的区块存储的时候,先向区块链中的某一个节点进行发送请求,通过共识算法完成快速确定,然后将数据文件分片,并且实现对每个数据分片进行加密和生成哈希,然后进行复制、分化和记录到分类账上;The first step is to upload the block data information and store it effectively: when storing the block data information, first send a request to a certain node in the block chain, and complete the quick determination through the consensus algorithm , and then divide the data file into pieces, and implement encryption and hash generation for each data piece, and then copy, differentiate and record it on the ledger;
第二步、区块数据信息在进行链式连接:在S1中进行分片之后,将每一数据文件中的所有分片进行连接,通过地址时间戳进行支链链式连接,完成对同一个数据文件中的所有分片进行有机的数据连接,提高数据信息在进行检索时候的快速性;The second step, the block data information is connected in a chain: after fragmentation in S1, connect all the fragments in each data file, and perform branch chain chain connection through the address timestamp to complete the same All fragments in the data file are connected organically to improve the speed of data information retrieval;
第三步、数据文件信息在进行上传的时候,携带时间戳:在数据文件信息进行上传的时候,在数据文件信息的区块头上进行携带时间戳,并且在改数据文件信息的每个分片的区块头上都携带相同的时间戳,并且在最终依照区块生成时间的先后顺序相连成区块链,并且再根据不同时间戳实现对数据文件信息进行分布式存储,每个独立节点又通过P2P网络建立联系,这样就为信息数据的记录形成了一个去中心化的分布式时间戳服务系统;The third step, when the data file information is uploaded, carry the time stamp: when the data file information is uploaded, the time stamp is carried on the block header of the data file information, and each fragment of the data file information is changed The block headers of each block carry the same time stamp, and are finally connected into a blockchain according to the sequence of block generation time, and then realize distributed storage of data file information according to different time stamps, and each independent node passes through The P2P network establishes a connection, thus forming a decentralized distributed time stamp service system for the recording of information data;
第四步、通过分布式存储使得数据文件信息分别存储在所有的节点内:通过分布式存储使得数据文件信息分别存储在所有的节点内,继而使得数据文件信息在进行查询和存储的时候能够快速的进行,有效的提高数据协同的操作,并且在区块链中心处设有服务器,实现对区块链节点的所有信息进行接收和转发,减少节点在进行数据查询的时候,对所有节点进行访问的复杂 程度;The fourth step is to store the data file information in all nodes through distributed storage: through distributed storage, the data file information is stored in all nodes, and then the data file information can be quickly queried and stored. It can effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the need for nodes to access all nodes when performing data queries the complexity of
第五步、在不同区块链之间进行跨链通讯,完成有效的跨链通讯,提高数据信息的协同:在不同的区块链之间通过公证人机制、侧链、中继、哈希锁定、分布式私钥控制或者异构跨链PegZone实现跨链连接,使得不同区块链之间能够实现通讯连接。The fifth step is to carry out cross-chain communication between different blockchains, complete effective cross-chain communication, and improve the coordination of data information: through the notary mechanism, side chain, relay, and hash between different blockchains Locking, distributed private key control or heterogeneous cross-chain PegZone realizes cross-chain connections, enabling communication connections between different blockchains.
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。Although the embodiments of the present invention have been shown and described, those skilled in the art can understand that various changes, modifications and substitutions can be made to these embodiments without departing from the principle and spirit of the present invention. and modifications, the scope of the invention is defined by the appended claims and their equivalents.
Claims (10)
- 一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于,包括有以下方法步骤:A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method, characterized in that it includes the following method steps:S1、实现对区块数据信息进行上传,并且进行有效的存储:在进行数据信息的区块存储的时候,先向区块链中的某一个节点进行发送请求,通过共识算法完成快速确定,然后将数据文件分片,并且实现对每个数据分片进行加密和生成哈希,然后进行复制、分化和记录到分类账上;S1. Realize uploading and effective storage of block data information: when storing data information blocks, first send a request to a certain node in the blockchain, and complete the quick determination through the consensus algorithm, and then Fragment the data file, and realize the encryption and hash generation of each data fragment, and then copy, differentiate and record it on the ledger;S2、区块数据信息在进行链式连接:在S1中进行分片之后,将每一数据文件中的所有分片进行连接,通过地址时间戳进行支链链式连接,完成对同一个数据文件中的所有分片进行有机的数据连接,提高数据信息在进行检索时候的快速性;S2. The block data information is connected in a chain: after fragmentation in S1, all the fragments in each data file are connected, and the branch chain chain connection is performed through the address timestamp to complete the same data file All fragments in the database are connected organically to improve the speed of data information retrieval;S3、数据文件信息在进行上传的时候,携带时间戳:在数据文件信息进行上传的时候,在数据文件信息的区块头上进行携带时间戳,并且在改数据文件信息的每个分片的区块头上都携带相同的时间戳,并且在最终依照区块生成时间的先后顺序相连成区块链,并且再根据不同时间戳实现对数据文件信息进行分布式存储,每个独立节点又通过P2P网络建立联系,这样就为信息数据的记录形成了一个去中心化的分布式时间戳服务系统;S3. When the data file information is uploaded, carry the time stamp: when the data file information is uploaded, carry the time stamp on the block header of the data file information, and change the area of each fragment of the data file information The block headers all carry the same time stamp, and are finally connected into a blockchain according to the order of block generation time, and then realize distributed storage of data file information according to different time stamps, and each independent node passes through the P2P network Establish a connection, thus forming a decentralized distributed timestamp service system for the recording of information data;S4、通过分布式存储使得数据文件信息分别存储在所有的节点内:通过分布式存储使得数据文件信息分别存储在所有的节点内,继而使得数据文件信息在进行查询和存储的时候能够快速的进行,有效的提高数据协同的操作,并且在区块链中心处设有服务器,实现对区块链节点的所有信息进行接收和转发,减少节点在进行数据查询的时候,对所有节点进行访问的复杂程度;S4. The data file information is stored in all nodes through distributed storage: the data file information is stored in all nodes through distributed storage, and then the data file information can be quickly queried and stored. , effectively improve the operation of data collaboration, and there is a server at the center of the blockchain to receive and forward all the information of the blockchain nodes, reducing the complexity of accessing all nodes when nodes perform data queries degree;S5、在不同区块链之间进行跨链通讯,完成有效的跨链通讯,提高数据信息的协同:在不同的区块链之间通过公证人机制、侧链、中继、哈希锁定、分布式私钥控制或者异构跨链PegZone实现跨链连接,使得不同区块链之间能够实现通讯连接。S5. Carry out cross-chain communication between different blockchains to complete effective cross-chain communication and improve the coordination of data information: between different blockchains through notary mechanisms, side chains, relays, hash locks, Distributed private key control or heterogeneous cross-chain PegZone realizes cross-chain connections, enabling communication connections between different blockchains.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S1中的共识算法中包括有工作量证明、权益证明、委托权益证明和实用拜占庭容错算法,所述实用拜占庭容错算法一种状态机副本复制算法,即服务作为状态机进行建模,状态机在分布式系统的不同节点进行副本复制,每个状态机的副本都保存了服务的状态,同时也实现了服务的操作,将所有的副本组成的集合使用大写字母R表示,使用0到|R|-1的整数表示每一个副本,假设|R|=3f+1,这里f是有可能失效的副本的最大个数,尽管可以存在多于3f+1个副本,但是额外的副本除了降低性能之外不能提高可靠性。A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the consensus algorithm in S1 includes workload proof, equity proof, Delegated proof of rights and practical Byzantine fault-tolerant algorithm, the practical Byzantine fault-tolerant algorithm is a state machine copy replication algorithm, that is, the service is modeled as a state machine, and the state machine is replicated on different nodes in the distributed system. All replicas save the state of the service, and also realize the operation of the service. The set of all replicas is represented by a capital letter R, and each replica is represented by an integer from 0 to |R|-1, assuming |R|=3f +1, where f is the maximum number of replicas that are likely to fail, although there can be more than 3f+1 replicas, additional replicas do not improve reliability other than performance.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S1中的分片的数据大小保持在128 M Bytes,然后以序列成字节码的形式写入dat文件中,在序列化的过程中,若检测到当前写入文件尺寸加上区块尺寸大于128 M Bytes,则会重新生成一个dat文件,具体的序列化过程如下所述:A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the data size of the fragments in the S1 is kept at 128 M Bytes, and then Write the dat file in the form of serialized bytecode. During the serialization process, if it is detected that the current written file size plus the block size is greater than 128 M Bytes, a dat file will be regenerated. The specific sequence The transformation process is as follows:获取当前dat文件大小npos,并将区块大小追加写入至dat文件中,Get the current dat file size npos, and append the block size to the dat file,序列化区块数据和区块中的交易数据,并将序列化的数据追加至dat文件中,Serialize the block data and transaction data in the block, and append the serialized data to the dat file,在写入数据的过程中,会生成区块和交易相关的元数据,In the process of writing data, metadata related to blocks and transactions will be generated,若检测到当前写入文件尺寸加上区块尺寸小于等于128 M Bytes,则直接生成一个dat文件。If it is detected that the size of the currently written file plus the size of the block is less than or equal to 128 M Bytes, a dat file will be generated directly.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S1中的分片包括有以下步骤:A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the fragmentation in S1 includes the following steps:创建数据分片:存储系统将数据分成更小的片段,这个过程称为分片,这一步将数据分解为可管理的块,这些块可以分布在多个节点上;Create data shards: The storage system divides data into smaller pieces, a process called sharding, which breaks down data into manageable chunks that can be distributed across multiple nodes;加密每个分片:分片之后,存储系统需要加密本地系统上的每个数据分 片,内容所有者完全控制此过程,目标是确保内容所有者以外的任何人都无法查看/访问分片中的数据,无论数据位于何处、该数据是静态还是动态;Encrypt each shard: After sharding, the storage system needs to encrypt each shard of data on the local system, the content owner has full control over this process, the goal is to ensure that no one other than the content owner can view/access the data in the shard data, regardless of where the data is located, whether that data is static or dynamic;为每个分片生成哈希:区块链存储系统根据分片的数据或加密密钥生成唯一的哈希——即固定长度的加密输出字符串,哈希将添加到分类帐和分片元数据,以便将事务链接到存储的分片;Generate a hash for each shard: The blockchain storage system generates a unique hash based on the shard’s data or encryption key—that is, a fixed-length encrypted output string, which is added to the ledger and the shard element data in order to link transactions to shards of storage;复制每个分片:存储系统会复制每个分片,因此有足够的冗余副本,可确保可用性和性能,并防止性能下降和数据丢失,由内容所有者来决定每个分片的副本数量以及这些分片所在的位置,此过程中,内容所有者为需要维护的最小副本数建立阈值,以确保不会丢失数据;Replicate each shard: The storage system replicates each shard so there are enough redundant copies to ensure availability and performance and prevent performance degradation and data loss, the number of replicas per shard is up to the content owner and where those shards reside, where the content owner establishes a threshold for the minimum number of replicas that need to be maintained to ensure no data loss;分发复制的分片:P2P网络将复制的分片分发到地理上分散的存储节点,无论是区域还是全局,多个组织或个人拥有存储节点,通过租用额外的存储空间可换取某种类型的补偿,没有一个实体能够拥有所有存储资源,或者控制存储基础架构,只有内容所有者才能完全访问其所有数据,无论这些节点位于何处;Distributing replicated shards: The P2P network distributes replicated shards to geographically dispersed storage nodes, whether regional or global, multiple organizations or individuals own storage nodes, and rent additional storage space in exchange for some type of compensation , no one entity can own all storage resources, or control the storage infrastructure, and only content owners have full access to all their data, no matter where these nodes are located;将交易记录到分类帐:存储系统记录区块链分类帐中的所有事务,并在所有节点之间同步该信息,分类帐存储与事务相关的详细信息,由于分类帐基于区块链技术,因此它具有透明性、可验证性、可追溯性以及防篡改性。Record transactions to the ledger: The storage system records all transactions in the blockchain ledger and synchronizes this information among all nodes. The ledger stores details related to transactions. Since the ledger is based on blockchain technology, it It is transparent, verifiable, traceable, and tamper-resistant.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S3中的时间戳处于区块头中,区块头和区块体共同构成区块,区块体中记录着该区块被创建这段时间内的所有交易数据,这些记录通过merkle树组织起来,merkle树根的哈希值作为本区块中所有交易记录的总结、摘要、“指纹”被放入区块头当中,区块头中不光有merkle树根,还有前一个区块头的摘要,也就是前一区块的merkle树根、本区块的时间戳、高度:即从第一个区块开始数,本区块是第几个区块的信息。A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the time stamp in the S3 is in the block header, and the block header and block The blocks together form a block, which records all transaction data during the period when the block was created. These records are organized through the merkle tree, and the hash value of the root of the merkle tree is used as the hash value of all transaction records in this block. Summary, abstract, and "fingerprint" are put into the block header, which not only contains the merkle tree root, but also the summary of the previous block header, that is, the merkle tree root of the previous block, the timestamp of this block, Height: Counting from the first block, this block is the information of which block.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S2中的分片之间的连接通过地址信息和哈希算法进行实现精准的算法,保持分片之间的连接,能够实现查询时的连接,完成查询时的数据文件的全部提取。A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the connection between the fragments in the S2 is through address information and hash The algorithm implements precise algorithms, maintains the connection between shards, realizes the connection during query, and completes the extraction of all data files during query.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S4中的存储支持存储自定义类型的结构化数据,从而增加了扩展;Nervos支持通过Generator部署不同的共识算法获得性能与网络分散度的平衡,Nervos提出了一种新的区块链设计,分别由可以存放多个数据的cell,应用的执行逻辑生成器Generator,Validator,Type,Identity五种元素组成能够自治及验证分离的分布式架构,Nervos改变了原有的数据输入,验证,打包的流程,当事件X发生时,客户端先通过Identity验证确定身份,同时将链外的状态Y通过共识做对应的映射存储到客户端中,执行逻辑生成器Generator将事件状态Y,通过哈希传递到记账的节点,节点上只需要Validator验证链上的映射是否与链下的事件状态Y一致,若确认,打包成下一个区块。A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the storage in the S4 supports the storage of self-defined types of structured data, so that Added extensions; Nervos supports the deployment of different consensus algorithms through Generator to achieve a balance between performance and network dispersion. Nervos proposes a new blockchain design, which consists of cells that can store multiple data and the execution logic generator of the application. The five elements of Generator, Validator, Type, and Identity form a distributed architecture capable of autonomy and separation of verification. Nervos changes the original data input, verification, and packaging processes. When event X occurs, the client first confirms its identity through Identity verification At the same time, the state Y outside the chain is stored in the client through the corresponding mapping through the consensus, and the execution logic generator Generator passes the event state Y to the accounting node through the hash. The node only needs the Validator to verify the mapping on the chain Whether it is consistent with the event state Y under the chain, if confirmed, it will be packaged into the next block.
- 根据权利要求7所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述存储的是状态的映射,链条通过反向逻辑可推断链上与链下数据是否一致,且对于新加入的节点要是同步节点,担计算工作的记账节点都是在运营方或参与方,管理合约还可以对记账节点的权重进行设置,这个层面要更好的节点投票决议和动态加入。A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 7, characterized in that: the storage is the mapping of the state, and the chain can be deduced through reverse logic Whether the data on the chain is consistent with the off-chain data, and if the newly added node is a synchronous node, the bookkeeping nodes responsible for the calculation work are all on the operator or the participant, and the management contract can also set the weight of the bookkeeping nodes. Better node voting resolution and dynamic joining.
- 根据权利要求1所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述S5中的异构跨链PegZone包括有五部分,分别为:A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 1, characterized in that: the heterogeneous cross-chain PegZone in the S5 includes five parts, which are respectively :smart contract:资产托管在以太坊和Cosmos中代币托管中的作用,它主要提供四种方法:锁定,解锁,铸造和销毁;smart contract: the role of asset custody in token custody in Ethereum and Cosmos, it mainly provides four methods: lock, unlock, mint and destroy;witness:这是一个完整的以太坊节点,它监视以太坊合约的事件并等待生成100个区块,封装的见证人Tx被提交给PegZone以证明以太坊区块链上的状态变化;witness: This is a full Ethereum node, which monitors the events of the Ethereum contract and waits for 100 blocks to be generated, and the encapsulated witness Tx is submitted to PegZone to prove the state change on the Ethereum blockchain;PegZone:PegZone是基于Tendermint的区块链,可维护用户帐户信息,允许用户之间进行资产转移并提供交易查询;PegZone: PegZone is a Tendermint-based blockchain that maintains user account information, allows asset transfers between users and provides transaction queries;signer:Secp256k1用于签名交易,以便可以通过智能合约有效地验证签名;这对应于智能合约的验证者公钥集;signer: Secp256k1 is used to sign the transaction so that the signature can be effectively verified by the smart contract; this corresponds to the validator public key set of the smart contract;relay:relay负责所有事务转发,将已签名的SignTx转发到智能合约。relay: The relay is responsible for all transaction forwarding, forwarding the signed SignTx to the smart contract.
- 根据权利要求2所述的一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法,其特征在于:所述实用拜占庭容错算法中的每个主节点的工作过程称为一个视图,用v表示视图编号,A high-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method according to claim 2, characterized in that: the working process of each master node in the practical Byzantine fault-tolerant algorithm is called A view, with v representing the view number,主节点由普通节点轮流当选,具体计算过程为主节点p=v mod|R|(|R|为节点个数),The master node is elected by ordinary nodes in turn, and the specific calculation process is master node p=v mod|R| (|R| is the number of nodes),其运行方法过程:正常工作时,接收客户端的事务请求,验证request身份后,为该请求设置编号,广播pre-prepare消息;Its operation method process: when working normally, receive the transaction request from the client, after verifying the identity of the request, set the number for the request, and broadcast the pre-prepare message;新主节点当选时,根据自己收集的View-Change消息,发送View-New信息,让其它节点同步数据;When the new master node is elected, it will send View-New information according to the View-Change message collected by itself, so that other nodes can synchronize data;主节点与所有的其它节点维系心跳;The master node maintains a heartbeat with all other nodes;主节点宕机,会因为心跳超时,而触发重新选举,保证系统运行稳定;If the master node is down, re-election will be triggered due to the heartbeat timeout, so as to ensure the stable operation of the system;主节点恶意发送错误编号的消息,那么会在后续的操作中,被副本节点察觉,因为prepare和commit阶段都是会进行广播的,一旦不一致,触发view-change;If the master node maliciously sends a message with the wrong number, it will be noticed by the replica node in the subsequent operation, because the prepare and commit phases will broadcast, and if they are inconsistent, view-change will be triggered;主节点不发送接收到的request,客户端在超时未回复时,会重发request到所有的副本节点,并触发view-change;The master node does not send the received request. When the client fails to reply after a timeout, it will resend the request to all replica nodes and trigger view-change;主节点节点篡改消息,因为有Request里面有数据和客户端的签名,所 以primary无法篡改消息,其它副本会先验证消息的合法性,否则丢弃,并触发view-change。The primary node tampers with the message. Because there is data and the signature of the client in the Request, the primary cannot tamper with the message. The other replicas will first verify the legitimacy of the message, otherwise discard it and trigger view-change.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111141592.5A CN114079660B (en) | 2021-09-28 | 2021-09-28 | High-performance distributed storage block data, time stamp, cross-chain communication and data collaboration method |
CN202111141592.5 | 2021-09-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023050555A1 true WO2023050555A1 (en) | 2023-04-06 |
Family
ID=80283515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/134240 WO2023050555A1 (en) | 2021-09-28 | 2021-11-30 | Method for high-performance distributed storage of block data and timestamp, cross-chain communication and data collaboration |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114079660B (en) |
WO (1) | WO2023050555A1 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116561182A (en) * | 2023-07-07 | 2023-08-08 | 华北电力大学 | Power data storage method and system based on block chain |
CN116567631A (en) * | 2023-07-06 | 2023-08-08 | 北京航空航天大学 | Mobile terminal security authentication method based on segmented block chain |
CN116915404A (en) * | 2023-09-13 | 2023-10-20 | 华中科技大学 | Engineering data cross-chain collaboration method and system based on block chain technology |
CN117319422A (en) * | 2023-11-28 | 2023-12-29 | 天津市城市规划设计研究总院有限公司 | Block chain blocking method and system for Internet of things data in urban planning field |
CN117478304A (en) * | 2023-12-28 | 2024-01-30 | 湖南天河国云科技有限公司 | Block chain management method, system and computer equipment |
CN117494219A (en) * | 2023-12-29 | 2024-02-02 | 智慧(东营)大数据有限公司 | Bill management system and method based on blockchain technology |
CN117574447A (en) * | 2024-01-16 | 2024-02-20 | 中国标准化研究院 | Data storage evidence and traceability system based on blockchain technology |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114185997B (en) * | 2022-02-17 | 2022-05-13 | 天津眧合数字科技有限公司 | Pet information credible storage system based on block chain |
CN114238867B (en) * | 2022-02-28 | 2022-05-17 | 南开大学 | Automatic switching access method for distributed multi-backup copyright content |
CN114629918B (en) * | 2022-03-02 | 2023-10-27 | 北京国联视讯信息技术股份有限公司 | Big data information processing method based on block chain |
CN114510539B (en) * | 2022-04-18 | 2022-06-24 | 北京易鲸捷信息技术有限公司 | Method for generating and applying consistency check point of distributed database |
CN115357932B (en) * | 2022-08-18 | 2023-11-28 | 山东浪潮智慧供应链科技有限公司 | Cross-chain secure storage method and device based on blockchain technology |
CN116016569A (en) * | 2022-12-23 | 2023-04-25 | 北京林业大学 | Efficient and reliable germplasm resource data storage method based on blockchain |
CN115860744B (en) * | 2023-02-20 | 2023-05-09 | 中国信息通信研究院 | Processing method and device of cross-blockchain transaction, blockchain system and equipment |
CN116308667A (en) * | 2023-03-25 | 2023-06-23 | 北京农夫铺子技术研究院 | Commodity big data intelligent storage system for meta-universe shopping platform |
CN116842029B (en) * | 2023-09-01 | 2023-11-17 | 天津理工大学 | Asset management method, device, computer equipment and storage medium |
CN116910126B (en) * | 2023-09-14 | 2023-11-24 | 国网山东省电力公司营销服务中心(计量中心) | System and method for conveniently storing, classifying and inquiring massive daily clear electric quantity data |
CN117200977B (en) * | 2023-11-07 | 2024-01-19 | 天津市城市规划设计研究总院有限公司 | Method and system for hierarchical storage of blockchain data in smart city field |
CN117763052B (en) * | 2024-02-22 | 2024-05-10 | 浩鲸云计算科技股份有限公司 | Data synchronization method and system for charging multi-center memory database |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587253A (en) * | 2018-12-11 | 2019-04-05 | 浙江大学 | A method of distributed storage is realized to file based on block chain |
US20190340267A1 (en) * | 2018-05-01 | 2019-11-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
US20200112445A1 (en) * | 2018-10-08 | 2020-04-09 | International Business Machines Corporation | Blockchain timestamp agreement |
CN111507730A (en) * | 2020-05-12 | 2020-08-07 | 北京俩撇科技有限公司 | Block chain cross-chain method and device |
CN112256663A (en) * | 2020-10-30 | 2021-01-22 | 深圳壹账通智能科技有限公司 | Block chain based distributed file storage method and system |
CN112988764A (en) * | 2021-05-14 | 2021-06-18 | 北京百度网讯科技有限公司 | Data storage method, device, equipment and storage medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295401A (en) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | A kind of read-only secure file storage system and method for block chain |
CN111683058A (en) * | 2020-05-18 | 2020-09-18 | 国科微城市智能科技(南京)有限责任公司 | Data storage system based on block chain and storage method thereof |
-
2021
- 2021-09-28 CN CN202111141592.5A patent/CN114079660B/en active Active
- 2021-11-30 WO PCT/CN2021/134240 patent/WO2023050555A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190340267A1 (en) * | 2018-05-01 | 2019-11-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
US20200112445A1 (en) * | 2018-10-08 | 2020-04-09 | International Business Machines Corporation | Blockchain timestamp agreement |
CN109587253A (en) * | 2018-12-11 | 2019-04-05 | 浙江大学 | A method of distributed storage is realized to file based on block chain |
CN111507730A (en) * | 2020-05-12 | 2020-08-07 | 北京俩撇科技有限公司 | Block chain cross-chain method and device |
CN112256663A (en) * | 2020-10-30 | 2021-01-22 | 深圳壹账通智能科技有限公司 | Block chain based distributed file storage method and system |
CN112988764A (en) * | 2021-05-14 | 2021-06-18 | 北京百度网讯科技有限公司 | Data storage method, device, equipment and storage medium |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116567631A (en) * | 2023-07-06 | 2023-08-08 | 北京航空航天大学 | Mobile terminal security authentication method based on segmented block chain |
CN116567631B (en) * | 2023-07-06 | 2023-09-15 | 北京航空航天大学 | Mobile terminal security authentication method based on segmented block chain |
CN116561182A (en) * | 2023-07-07 | 2023-08-08 | 华北电力大学 | Power data storage method and system based on block chain |
CN116561182B (en) * | 2023-07-07 | 2023-09-19 | 华北电力大学 | Power data storage method and system based on block chain |
CN116915404A (en) * | 2023-09-13 | 2023-10-20 | 华中科技大学 | Engineering data cross-chain collaboration method and system based on block chain technology |
CN116915404B (en) * | 2023-09-13 | 2023-11-17 | 华中科技大学 | Engineering data cross-chain collaboration method and system based on block chain technology |
CN117319422A (en) * | 2023-11-28 | 2023-12-29 | 天津市城市规划设计研究总院有限公司 | Block chain blocking method and system for Internet of things data in urban planning field |
CN117319422B (en) * | 2023-11-28 | 2024-02-02 | 天津市城市规划设计研究总院有限公司 | Block chain blocking method and system for Internet of things data in urban planning field |
CN117478304A (en) * | 2023-12-28 | 2024-01-30 | 湖南天河国云科技有限公司 | Block chain management method, system and computer equipment |
CN117478304B (en) * | 2023-12-28 | 2024-03-01 | 湖南天河国云科技有限公司 | Block chain management method, system and computer equipment |
CN117494219A (en) * | 2023-12-29 | 2024-02-02 | 智慧(东营)大数据有限公司 | Bill management system and method based on blockchain technology |
CN117574447A (en) * | 2024-01-16 | 2024-02-20 | 中国标准化研究院 | Data storage evidence and traceability system based on blockchain technology |
CN117574447B (en) * | 2024-01-16 | 2024-04-16 | 中国标准化研究院 | Data storage evidence and traceability system based on blockchain technology |
Also Published As
Publication number | Publication date |
---|---|
CN114079660A (en) | 2022-02-22 |
CN114079660B (en) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023050555A1 (en) | Method for high-performance distributed storage of block data and timestamp, cross-chain communication and data collaboration | |
Chen et al. | Blockchain-based dynamic provable data possession for smart cities | |
US10103893B2 (en) | Blockchain-supported, fail-safe synchronization in a data authentication infrastructure | |
Yadav et al. | A comparative study on consensus mechanism with security threats and future scopes: Blockchain | |
US20200143366A1 (en) | Methods for decentralized digital asset transfer and smart contract state transition | |
US8234518B2 (en) | Method for voting with secret shares in a distributed system | |
CN111611315A (en) | Financial big data-oriented multi-branch tree structure block chain integrated optimization storage method | |
CN110046894B (en) | Erasure code-based block chain establishing method capable of reconstructing groups | |
CN109766673A (en) | A kind of alliance's formula audio-video copyright block catenary system and audio-video copyright cochain method | |
CN108923932A (en) | A kind of decentralization co-verification model and verification algorithm | |
Malvai et al. | Parakeet: Practical key transparency for end-to-end encrypted messaging | |
CN114329528A (en) | File data management method and system based on block chain | |
US11354335B2 (en) | Method and apparatus for obtaining number for transaction-accessed variable in blockchain in parallel | |
CN115208665B (en) | Germplasm resource data safe sharing method and system based on blockchain | |
CN110750541A (en) | Data storage indexing system and method based on block chain | |
CN110225012A (en) | The ownership inspection and update method of one outer bag data based on alliance's chain | |
CN115883214A (en) | Electronic medical data sharing system and method based on alliance chain and CP-ABE | |
Xi et al. | [Retracted] A Comprehensive Survey on Sharding in Blockchains | |
WO2019224593A1 (en) | Method and system for generating block chain | |
TWM586416U (en) | Implementing a multi-center, distributed verification system for transactions based on blockchain technology | |
Wels | Guaranteed-TX: The exploration of a guaranteed cross-shard transaction execution protocol for Ethereum 2.0. | |
Cheng et al. | Ocean data sharing based on blockchain | |
Qian | Improved authenticated data structures for blockchain synchronization | |
CN113221135A (en) | Personnel archive data safe storage method based on block chain technology | |
Fu et al. | Subtraction of Hyperledger Fabric: A blockchain-based lightweight storage mechanism for digital evidences |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21959115 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21959115 Country of ref document: EP Kind code of ref document: A1 |