Block chain system operation method and device, electronic equipment and storage medium
By configuring node verification and storing transactions in the blockchain system, and using only transaction hashing when making proposals, combining transaction type query and collaborative processing, the problem of inefficiency in transaction processing in traditional blockchain systems is solved, achieving higher transaction throughput and lower latency.
Patent Information
- Application Number
- CN202411997622.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-05-06
- Estimated Expiration
- 2044-12-31
AI Technical Summary
Because traditional blockchain systems can only process transactions in serial because their chain structure can be processed, resulting in inefficient transaction processing and limited throughput, and face challenges of expansion, speed and reliability.
By configuring nodes to verify when they receive transactions, store them in the local transaction pool, and broadcast to other nodes. The proposal only contains transaction hash. The node queries the transaction hash through the local transaction pool, obtains the transaction type and performs coordinated processing, including parallel and serial processing of different types of transactions.
It improves transaction processing efficiency in the blockchain system, reduces the time for nodes to receive block proposals for complete transaction lists, reduces the pressure of export bandwidth, and improves transaction throughput through collaborative processing.
Smart Images

Figure CN119938787A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of blockchain technology, and more specifically, to an operating method, device, electronic device, and storage medium of a blockchain system. Background Art
[0002] Since the birth of blockchain, the first generation of blockchain has provided infrastructure, and simple applications have gradually emerged on public blockchains, most of which are mainly transfers and transactions. As people's demand for applications increases, the first generation of blockchain can no longer meet complex needs, so the second generation of blockchain was born. The second generation of blockchain mainly refers to the ability to run smart contracts on the chain and conduct complex application activities. So far, most blockchain architectures are second generation blockchains. However, with the increase in application complexity, the serial structure of the original blockchain has become a major performance bottleneck, facing challenges in expansion, speed, and reliability.
[0003] In related technologies, traditional blockchain systems can only process transactions serially due to their chain structure, which limits throughput and leads to low transaction processing efficiency. The scalability of blockchain is limited by the block rate, block size and serial processing capabilities, resulting in poor transaction processing efficiency. Summary of the invention
[0004] In order to solve the above technical problems, the embodiments of the present application provide a method, device, electronic device and storage medium for operating a blockchain system, so as to improve the transaction processing efficiency in the blockchain system.
[0005] According to one aspect of an embodiment of the present application, a method for operating a blockchain system is provided, wherein the blockchain system includes multiple nodes, and the nodes are configured to verify the transactions when receiving the transactions, and store the transactions in the local transaction pool of the nodes when the verification is passed; the nodes are also configured to broadcast the transactions to other nodes in the blockchain system when receiving the transactions; the method includes: obtaining a block proposal broadcasted by a first node; wherein the block proposal only includes transaction hashes corresponding to multiple transactions respectively; the first node is a node in the blockchain system that receives the multiple transactions and broadcasts the multiple transactions; querying the local transaction pool of a second node according to the transaction hash to obtain a query result; wherein the second node is a node other than the first node in the blockchain system; when the query result is that the transaction corresponding to the transaction hash exists in the local transaction pool of the second node, obtaining the transaction type corresponding to each transaction respectively; wherein the transaction type is used to characterize whether there is a non-association relationship between transactions; and collaboratively processing transactions of the transaction type that have a non-association relationship.
[0006] In some embodiments, the underlying database of the blockchain system stores data modified by preset operations in each transaction in the form of key-value pairs, each transaction includes multiple different preset operations, and when each transaction is executed, the value in the key-value pair corresponding to the preset operation will be modified; the obtaining of the transaction type corresponding to each transaction includes: obtaining the predicted modification status of the key-value pair corresponding to each transaction; wherein the predicted modification status of the key-value pair is used to characterize whether there is a value in the same key-value pair modified by other transactions when the current transaction is executed; if the predicted modification status of the key-value pair is used to characterize the value of the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed is not the same key-value pair, then it is determined that the transaction type corresponding to the current transaction has a non-association relationship; if the predicted modification status of the key-value pair is used to characterize the value of the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed, then it is determined that the transaction type corresponding to the current transaction has no non-association relationship.
[0007] In some embodiments, obtaining the predicted modification status of the key-value pairs corresponding to each transaction includes: obtaining a relationship index between the preset operations in each transaction and the corresponding key-value pairs; constructing a topological structure diagram of the preset operations in each transaction and the corresponding key-value pairs according to the relationship index; and determining the predicted modification status of the key-value pairs corresponding to each transaction from the topological structure diagram.
[0008] In some embodiments, constructing a topological structure diagram of each transaction and the corresponding key-value pair based on the relationship index includes: arranging the first nodes into the same branch structure according to a preset order; wherein the first nodes are preset operations belonging to the same transaction, and the preset order is the chronological order of executing the preset operations; connecting and sorting the second nodes in different branch structures according to the preset order to obtain the topological structure diagram; wherein the second nodes are preset operations belonging to different transactions and modifying the value in the same key-value pair.
[0009] In some embodiments, determining the predicted modification state of the key-value pair corresponding to each transaction from the topology structure diagram includes: if there is a connection relationship between the branch structures corresponding to each transaction in the topology structure diagram, determining that the predicted modification state of the key-value pair corresponding to each transaction is a value in the key-value pair used to represent that the current transaction is modified when it is executed, and that other transactions modify the same key-value pair when they are executed; or, if there is no connection relationship in the branch structure corresponding to each transaction in the topology structure diagram, determining that the predicted modification state of the key-value pair corresponding to each transaction is a value in the key-value pair used to represent that the current transaction is modified when it is executed, and that other transactions do not modify the same key-value pair when they are executed.
[0010] In some embodiments, the collaborative processing of transactions whose transaction types are non-associated relationships includes: determining a first target operation and a second target operation from preset operations in transactions whose transaction types are non-associated relationships; wherein the first target operation is a preset operation that belongs to different transactions and does not modify the value in the same key-value pair; the second target operation is a preset operation that belongs to different transactions and modifies the value in the same key-value pair; the first target operation is processed in parallel and the second target operation is processed in serial.
[0011] In some embodiments, the method further includes: in response to an adjustment operation on the relationship index, performing a custom adjustment on the relationship index.
[0012] In some embodiments, according to one aspect of an embodiment of the present application, a running device of a blockchain system is provided, wherein the blockchain system includes multiple nodes, and the nodes are configured to verify the transactions when receiving the transactions, and store the transactions in the local transaction pool of the nodes when the verification is passed; the nodes are also configured to broadcast the transactions to other nodes in the blockchain system when receiving the transactions; the device includes: a first acquisition module, configured to obtain a block proposal broadcasted by the first node; wherein the block proposal only includes transaction hashes corresponding to multiple transactions respectively; the first node is a node in the blockchain system that receives the multiple transactions and broadcasts the multiple transactions; a query module, configured to query in the local transaction pool of the second node according to the transaction hash to obtain a query result; wherein the second node is a node other than the first node in the blockchain system; a second acquisition module, configured to obtain the transaction type corresponding to each transaction when the query result is that there is a transaction corresponding to the transaction hash in the local transaction pool of the second node; wherein the transaction type is used to characterize whether there is a non-association relationship between transactions; a processing module, configured to collaboratively process transactions of the transaction type that have a non-association relationship.
[0013] According to one aspect of an embodiment of the present application, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the operation method of the blockchain system as described above.
[0014] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor of a computer, the computer executes the above-mentioned method for operating the blockchain system.
[0015] In the technical solution provided in the embodiments of the present application, on the one hand, since the nodes in the blockchain system are configured to broadcast the transactions to other nodes in the blockchain system when receiving the transactions, and the nodes in the blockchain system verify the transactions when receiving the transactions, and store the transactions in the local transaction pool of the nodes when the verification is passed, when making a proposal, it is only necessary to package the transaction hashes of all transactions in the local transaction pool, generate block proposals for broadcasting, and there is no need to package the complete transaction list for broadcasting, which can save the time of the nodes in the blockchain system in receiving the block proposals of the complete transaction list, realize transaction pre-broadcast and transaction cache processing in the blockchain system, thereby improving transaction processing efficiency; on the other hand, by obtaining the transaction type corresponding to each transaction, and collaboratively processing transactions with non-associated relationships, transaction collaborative processing is realized in the blockchain system, which can also improve transaction processing efficiency.
[0016] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The drawings herein are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative work. In the drawings:
[0018] Figure 1 is a schematic diagram of an exemplary implementation environment of the present application;
[0019] Figure 2 This is an exemplary embodiment showing an application diagram of the consensus duration of a traditional blockchain system based on the PBFT consensus algorithm;
[0020] Figure 3 It is an application schematic diagram of the consensus duration of the improved blockchain system shown in an exemplary embodiment of the present application;
[0021] Figure 4 is a flowchart of an operating method of a blockchain system shown in an exemplary embodiment of the present application;
[0022] Figure 5 yes Figure 4 Step S430 in the illustrated embodiment is a flow chart of obtaining a transaction type corresponding to a transaction in an exemplary embodiment;
[0023] Figure 6is a schematic diagram of a topological structure diagram shown in an exemplary embodiment of the present application;
[0024] Figure 7 is an application diagram of a transaction processing before collaborative processing shown in an exemplary embodiment of the present application;
[0025] Figure 8 is an application schematic diagram of a processing transaction after collaborative processing shown in an exemplary embodiment of the present application;
[0026] Fig. 9 is a flowchart of an operating method of a blockchain system shown in another exemplary embodiment of the present application;
[0027] Fig.10 It is a structural diagram of an operating device of a blockchain system in an exemplary embodiment of the present application;
[0028] Fig.11 It is a schematic diagram of the structure of a computer system of an exemplary electronic device of the present application. DETAILED DESCRIPTION
[0029] Here, exemplary embodiments will be described in detail, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments that are the same as the present application. Instead, they are only examples of devices and methods that are the same as some aspects of the present application as detailed in the attached claims.
[0030] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in the form of an application program, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0031] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.
[0032] It should be noted that the "multiple" mentioned in this application refers to two or more than two. "And / or" describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship.
[0033] First of all, it should be noted that the embodiments of the present application involve blockchain technology. Blockchain technology is a new distributed infrastructure and computing method that uses a block chain data structure to verify and store data, a distributed node consensus algorithm to generate and update data, cryptography to ensure the security of data transmission and access, and smart contracts composed of automated script codes to program and operate data. Specifically, it is a data structure that organizes data blocks in a chronological order in a manner similar to a linked list, which can safely store data that has a chronological relationship and can be verified within the system, and cryptography to ensure that the data cannot be tampered with or forged. Simply put, blockchain is a decentralized distributed ledger, and each chain is equivalent to an independent ledger.
[0034] In related technologies, with the development of blockchain technology, blockchain systems have evolved from a single transfer and accounting system to an intelligent system that can run smart contracts to handle complex tasks. Even a modern operating system and cloud computing platform can be run inside it. This poses a huge challenge to the performance of the blockchain system. Traditional blockchain systems have the following performance problems: Due to their chain structure, traditional blockchain systems can only process transactions serially, which limits the throughput and leads to low transaction processing efficiency. The scalability of blockchain is limited by the block rate, block size, and serial processing capabilities, resulting in poor transaction processing efficiency.
[0035] Based on this, in order to improve transaction processing efficiency, the embodiments of the present application propose an operation method, device, electronic device and storage medium of a blockchain system.
[0036] The following is a detailed description of the operation method of the blockchain system provided in the embodiment of the present application.
[0037] See also Figure 1 , Figure 1 It is a schematic diagram of an exemplary implementation environment of the present application. Figure 1 The blockchain system shown includes a blockchain network 100, which may include a node device 10a, a node device 10b, a node device 10c, and a node device 10d. Among them, the node devices 10a, 10b, 10c, and 10d are Figure 1The blockchain nodes (referred to as nodes) in the blockchain network 100 shown may be computing devices of any form connected to the blockchain network 100, such as servers, user terminals, etc. The server may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms. The terminal device may be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, etc., but is not limited thereto. Each node may be directly or indirectly connected by wired or wireless communication, and this application is not limited thereto. Figure 1 The node devices 10a, 10b, 10c, and 10d shown can also be connected through network communication to form a blockchain network 100.
[0038] It should be understood that Figure 1 The nodes in the block chain network 100 shown in the structural diagram can form a peer-to-peer (P2P) network, where the P2P protocol can be an application layer protocol running on the transmission control protocol (TCP) protocol. In the network architecture corresponding to the block chain network 100, any machine such as a server or a terminal can join and become a node, and the node can specifically include a hardware layer, an intermediate layer, an operating system layer, and an application layer.
[0039] Each node in the blockchain network 100 can be used to maintain the same blockchain (i.e. Figure 1 As shown in the blockchain 10e, multiple smart contracts can be pre-deployed on the blockchain corresponding to the blockchain 10e. For example, smart contracts with different data processing functions such as proxy contracts, permission management contracts, data contracts, and proxy management contracts can be pre-deployed.
[0040] The blockchain network system in the embodiment of the present application is provided with a PBFT (Practical Byzantine Fault Tolerance) consensus algorithm. The PBFT consensus algorithm is a distributed system consensus algorithm that aims to solve the problem of how to make honest nodes in the system reach a consistent result in the presence of Byzantine faults (i.e., nodes may deliberately send wrong information or not respond).
[0041] When a traditional blockchain system based on the PBFT consensus algorithm is running, it usually executes the five steps of 1. proposal, 2. pre-voting, 3. pre-submission, 4. processing block transactions and 5. submitting the final block in sequence. That is, the block proposer (the node that receives the transaction in the blockchain network) proposes a block proposal and broadcasts the block proposal to other nodes in the blockchain network. Other nodes perform pre-voting and pre-submission stages. If all are passed, they process the transactions in the block proposal and finally submit the block. Each stage requires multiple interactions to reach a consensus.
[0042] In the operation method of the blockchain system provided by the present application, the node is configured to verify the transaction when it is received, and the transaction is stored in the node's local transaction pool when the verification is passed; and the node is configured to broadcast the transaction to other nodes in the blockchain system when the transaction is received. In this way, once the node receives the user transaction, it must immediately broadcast the transaction to other nodes. After receiving the transaction, other nodes immediately verify the validity of the transaction and store the verified transactions in the local transaction pool. Then the block proposer packages the transactions in the memory pool to generate a block proposal. Since most transactions have been propagated in the nodes in advance, the block proposer only needs to include the transaction hash in the block proposal, instead of packaging the complete transaction list for broadcasting, thereby greatly reducing the export bandwidth pressure of the master node. If the slave node finds that some transactions are missing before verification, it only needs to request the missing transactions from the master node instead of requesting all the transactions in the entire block.
[0043] For example, combining Figure 2 and Figure 3 As shown, Figure 2 It is an application schematic diagram of the consensus duration of a traditional blockchain system based on the PBFT consensus algorithm shown in an exemplary embodiment of the present application; Figure 3 This is an application diagram of the consensus duration of the blockchain system improved by the method, shown in an exemplary embodiment of the present application. Figure 2 In the traditional blockchain system based on the PBFT consensus algorithm, when running, it usually executes the five steps of 1. proposal, 2. pre-voting, 3. pre-submission, 4. processing block transactions and 5. submitting the final block in sequence. The proposal step takes 200ms, the pre-voting step takes 150ms, the pre-submission step takes 150ms, the processing of block transactions takes 400ms, and the submission of the final block takes 100ms. The total consensus time takes 1000ms. Figure 3In the improved method, the broadcasted block proposal only includes transaction hashes. If the transaction corresponding to the above transaction hash is stored in the local transaction pool of the node that receives the block proposal, the node directly finds the transaction from the local transaction pool through the index relationship between the transaction hash and the transaction after receiving the block proposal, and executes it without waiting for the pre-voting and pre-submission process. After the transaction is executed, the result is written to the cache of the current node. If the block proposal is finally accepted by the blockchain network, the data in the cache will be submitted to the blockchain network, that is, a formal block will be generated. If the blockchain network rejects the block proposal, the data in the cache is discarded. Figure 3 As can be seen from the figure, since there is no need to wait for the pre-voting and pre-submission process, the time for waiting for all transactions in the block proposal can be greatly saved. It only takes 200ms for the proposal step, 400ms for processing block transactions and 100ms for submitting the final block. Therefore, the total consensus time of the blockchain system only takes 700ms. Compared with the traditional blockchain system based on the PBFT consensus algorithm, the waiting time is greatly reduced, thereby improving the transaction processing efficiency in the blockchain system. For example, this process significantly reduces the total time the validator waits for the block. The theoretical delay improvement time is: min(T prevote +T precommit ,N·T); where T prevote is the time required for the pre-voting step, T precommit is the time required for the pre-submission step, N is the number of transactions, and T is the time required to process a transaction.
[0044] Please continue reading Figure 4 , Figure 4 is a flowchart of an exemplary embodiment of the present application showing a method for operating a blockchain system, which can be applied to Figure 1 The implementation environment shown is specifically executed by the nodes in the blockchain network in the implementation environment. It should be understood that the method can also be applied to other exemplary implementation environments and be specifically executed by the nodes in other implementation environments. This embodiment does not limit the implementation environment to which the method is applicable.
[0045] The following describes in detail the operation method of the blockchain system proposed in the embodiment of the present application, taking a computer as the specific execution subject.
[0046] like Figure 4As shown, in an exemplary embodiment, the blockchain system includes multiple nodes, and the node is configured to verify the transaction when receiving the transaction, and store the transaction in the node's local transaction pool when the verification is passed; the node is also configured to broadcast the transaction to other nodes in the blockchain system when receiving the transaction. The operation method of the blockchain system includes at least steps S410 to S440, which are described in detail as follows:
[0047] Step S410, obtaining a block proposal broadcast by a first node, wherein the block proposal only includes transaction hashes corresponding to multiple transactions respectively; the first node is a node in the blockchain system that receives multiple transactions and broadcasts multiple transactions.
[0048] It is understandable that after receiving a transaction from a client, a node in the blockchain system first stores it in a local transaction pool, and then broadcasts the transaction to other nodes in the blockchain network. After packaging, the node only needs to package the transactions in the local transaction pool and generate a block proposal that only includes the transaction hash for broadcast, without packaging the complete transaction list for broadcast, thereby greatly reducing the node's export bandwidth pressure and improving the broadcast efficiency of block proposals.
[0049] Step S420: query the local transaction pool of the second node according to the transaction hash to obtain the query result. The second node is a node other than the first node in the blockchain system.
[0050] In the embodiment of the present application, since most transactions on the blockchain network have been propagated in the nodes in advance, the transaction corresponding to the transaction hash can be directly queried by querying the transaction hash in the local transaction pool of the second node. Moreover, if the corresponding transaction is not queried, it is considered that some transactions are missing, and only the missing transactions need to be requested from the node without requesting all transactions in the entire block.
[0051] In some embodiments, a query is performed in the local transaction pool of the second node based on the transaction hash to obtain a query result, including: if a transaction corresponding to the transaction hash is matched from the local transaction pool, it is determined that the query result is that the transaction corresponding to the transaction hash is stored in the local transaction pool of the second node; if a transaction corresponding to the transaction hash is not matched from the local transaction pool, it is determined that the query result is that the transaction corresponding to the transaction hash is not stored in the local transaction pool of the second node.
[0052] Step S430, when the query result shows that there is a transaction corresponding to the transaction hash in the local transaction pool of the second node, the transaction type corresponding to each transaction is obtained. The transaction type is used to indicate whether there is an unrelated relationship between transactions.
[0053] In the embodiment of the present application, the transaction type may include RPT (Related Party Transaction) and UPT (Unrelated Party Transaction).
[0054] It is understandable that in the above-mentioned steps of processing block transactions, the transactions in the block proposal are usually executed in sequence, and a block proposal usually contains hundreds or thousands of transactions. In the process of transaction processing, the state of the blockchain will change, that is, the state of the Merkle tree will change. Therefore, all transactions must be carried out in sequence. But in fact, many transactions in a block proposal are not related, and the order in which they are executed has no effect on the result, that is, non-related transactions; while other transactions are related, and the order in which they are executed has an impact on the result and is sensitive to the order in which they are executed, that is, related transactions.
[0055] In some embodiments, associated transactions are used to represent transactions in which an associated relationship exists between transactions; unassociated transactions are transactions in which no associated relationship exists between transactions, that is, transactions in which an unassociated relationship exists between transactions.
[0056] For example, if there is a non-related relationship between multiple transactions, the multiple transactions are considered to be non-related transactions; if there is no non-related relationship between multiple transactions, the multiple transactions are considered to be related transactions.
[0057] In the blockchain system in the embodiment of the present application, the underlying database uses a structure similar to the Merkle tree, based on the key-value pair (K, V) and building up the root hash. The state changes brought about by all transactions will change the value in a certain key-value pair (K, V) in the underlying database. Therefore, by ensuring that multiple transactions do not modify the value in the same key-value pair, non-associated transactions can be determined.
[0058] Combination Figure 5 As shown, Figure 5 yes Figure 4 Step S430 in the illustrated embodiment is a flowchart of obtaining a transaction type corresponding to a transaction in an exemplary embodiment, which at least includes steps S510 to S530, which are described in detail as follows:
[0059] Step S510, obtaining the predicted modification status of the key-value pair corresponding to each transaction.
[0060] It can be understood that the predicted modification state of the key-value pair is used to characterize whether, among the values in the key-value pair modified when the current transaction is executed, there are values in the same key-value pair that are modified when other transactions are executed.
[0061] In the embodiment of the present application, the predicted modification status of the key-value pair corresponding to each transaction can be obtained through the following process, including:
[0062] Step S511, obtaining a relationship index between a preset operation in each transaction and a corresponding key-value pair;
[0063] Step S512, constructing a topological structure diagram of the preset operations and corresponding key-value pairs in each transaction according to the relationship index;
[0064] Step S513: determining the predicted modification status of the key-value pair corresponding to each transaction from the topology diagram.
[0065] It should be understood that a transaction may include multiple preset operations, wherein the preset operations may include transfer operations, document modification operations, and other operations that can cause changes in the values in the key-value pairs.
[0066] In some embodiments, constructing a topological structure diagram of preset operations and corresponding key-value pairs in each transaction according to the relationship index includes: arranging the first nodes into the same branch structure according to a preset order; connecting and sorting the second nodes in different branch structures according to a preset order to obtain a topological structure diagram. The first node is a preset operation belonging to the same transaction, and the preset order is the time sequence of executing the preset operations; the second node is a preset operation belonging to a different transaction and modifies the value in the same key-value pair.
[0067] For example, if Figure 6 As shown, Figure 6 It is a schematic diagram of a topological structure diagram shown in an exemplary embodiment of the present application. Figure 6 In the block proposal, there are 3 transactions. The first transaction Tx1 includes 4 preset operations in the order of execution R1, W1, C1 and R2. The second transaction Tx2 includes 4 preset operations in the order of execution C2, R3, W2 and C3. The third transaction Tx2 includes 3 preset operations in the order of execution B1, N1 and C4. Then, Figure 6 The nodes in the branch structure of each column are all first nodes, and the second nodes include R2 and R3, C3 and C4.
[0068] In some embodiments, the preset operation R1 is used to represent a transfer from account A to account B, R2 is used to represent a transfer from account C to account B, and R3 is used to represent a transfer from account B to account D. The preset operation R1 will modify two key-value pairs, one corresponding to account A and the other corresponding to account B; for example, the key-value pair corresponding to account A is {K(A), V(M A )}, the key-value pair corresponding to account B is {K(B),V(M B)}, K(A) is used to represent account A, V(M A ) is used to represent the balance of account A, K(B) is used to represent account B, V(M B ) is used to represent the balance of account B; if the preset operation R1 is that account A transfers 100 yuan to account B, after executing the preset operation R1, the key-value pair corresponding to account A will be modified to {K(A), V(M A -100)}, the key-value pair corresponding to account B will be modified to {K(B),V(M B +100)}. Similarly, preset operation R2 and preset operation R3 will both involve modifying the key-value pair corresponding to account B. It can be seen that preset operation R1, preset operation R2 and preset operation R3 will all modify the value in the same key-value pair. Therefore, there is an association relationship between preset operation R1, preset operation R2 and preset operation R3, and the execution time of preset operation R2 is earlier than the execution time of preset operation R3. Therefore, preset operation R3 is arranged after preset operation R2.
[0069] Moreover, in transactions Tx2 and Tx3, preset operations C2 and preset operations B1 are respectively used to represent other preset operations for modifying values in other key-value pairs, such as document modification operations and other operations, which are different from the transfer operations represented by R1, R2, and R3. Therefore, there is no association relationship between preset operations R1, preset operations C2, and preset operations B1, that is, there is a non-association relationship between preset operations R1 and preset operations C2. That is, it is considered that there is a non-association relationship between transactions Tx1 and Tx2.
[0070] In some embodiments, the key-value pair corresponding to the preset operation C2 is {K(C), V(P)}, and the key-value pair corresponding to the preset operation B1 is {K(B), V(Q)}. It can be seen that when executing the preset operations R1, C2, and B1, the values in the three different key-value pairs are also modified, and the execution time of the preset operations R1, C2, and B1 is the same, and they belong to different transactions. Therefore, it can be based on Figure 6 The topology diagram is constructed in the order in which the
[0071] Exemplarily, determining the predicted modification state of the key-value pair corresponding to each transaction from the topology structure diagram includes: if there is a connection relationship between the branch structures corresponding to each transaction in the topology structure diagram, then determining that the predicted modification state of the key-value pair corresponding to each transaction is used to represent the value in the key-value pair modified when the current transaction is executed, and the value in the same key-value pair modified when other transactions are executed.
[0072] For example, by Figure 6It can be seen from the topological structure diagram shown that there is a connection relationship between the preset operation R2 in the branch structure corresponding to transaction Tx1 and the preset operation R3 in the branch structure corresponding to transaction Tx2, that is, there is a connection relationship between the preset operations in different transactions. Therefore, it is determined that the predicted modification state of the key-value pair corresponding to transaction Tx1 / Tx2 is used to represent the value in the key-value pair modified when the current transaction is executed, and the value in the same key-value pair is modified when other transactions are executed.
[0073] Exemplarily, determining the predicted modification state of the key-value pair corresponding to each transaction from the topology structure diagram includes: if there is no connection relationship in the branch structure corresponding to each transaction in the topology structure diagram, determining that the predicted modification state of the key-value pair corresponding to each transaction is a value used to represent the key-value pair modified when the current transaction is executed, and is not the same key-value pair as the values modified when other transactions are executed.
[0074] For example, if there is no connection relationship between all preset operations in a transaction in the topology diagram and all preset operations in another transaction, then the predicted modification state of the key-value pair corresponding to the transaction is determined to be a value in the key-value pair that is used to represent the modification of the current transaction when it is executed, and the value in the key-value pair that is modified by other transactions when they are executed is not the same.
[0075] Step S520: If the predicted modification state of the key-value pair is used to represent the value of the key-value pair modified when the current transaction is executed, and the value modified when other transactions are executed is not the same key-value pair, then it is determined that the transaction type corresponding to the current transaction has a non-association relationship.
[0076] Step S530, if the predicted modification state of the key-value pair is used to represent the value in the key-value pair modified when the current transaction is executed, and other transactions modify the value in the same key-value pair when they are executed, it is determined that the transaction type corresponding to the current transaction does not have a non-association relationship.
[0077] It is understandable that if the values in the key-value pairs modified by all preset operations in one transaction are the same as the values in the key-value pairs modified by all preset operations in the other transaction, it is considered that there is no non-association relationship between the two transactions. For example, the key-value pairs modified by all preset operations in transaction 1 are (K(A), V(J)), and the key-value pairs modified by all preset operations in transaction 2 are also (K(A), V(J)), then it is considered that there is no non-association relationship between transaction 1 and transaction 2, that is, there is an association relationship between transaction 1 and transaction 2. Therefore, the preset operations that update the values in the same key-value pair need to be executed in sequence.
[0078] If, in two transactions, a value in a key-value pair modified by a preset operation in one transaction is different from a value in a key-value pair modified by a preset operation in another transaction, then the two transactions are considered to be unrelated. Therefore, preset operations that update values in different key-value pairs can be processed collaboratively.
[0079] Step S440: collaboratively process transactions of a non-association type.
[0080] In the embodiment of the present application, collaborative processing includes parallel processing and serial processing.
[0081] In some embodiments, collaborative processing of transactions whose transaction types are non-association relationships includes: determining a first target operation and a second target operation from preset operations in transactions whose transaction types are non-association relationships; processing the first target operation in parallel and processing the second target operation in serial.
[0082] The first target operation is a preset operation that belongs to a different transaction and modifies a value in a different key-value pair; the second target operation is a preset operation that belongs to a different transaction and modifies a value in a different key-value pair.
[0083] Combination Figures 7 and 8 As shown, Figure 7 is an application diagram of a transaction processing before collaborative processing shown in an exemplary embodiment of the present application; Figure 8 It is an application diagram of a processing transaction after collaborative processing shown in an exemplary embodiment of the present application. Figure 7 In the example, each transaction is executed in the order of their time, that is, the preset operations R1, W1, C1 and R2 in transaction Tx1 are processed first, then the preset operations C2, R3, W2 and R3 in transaction Tx2 are processed, and finally the preset operations B1, N1 and R4 in transaction Tx3 are processed. Figure 8In the process, the first target operation and the second target operation are determined from the preset operations in the transactions with non-association type, that is, the first target operation includes the preset operation R1 in the transaction Tx1, the preset operation C2 in the transaction Tx2, the preset operation B1 in the transaction Tx3, and the preset operation W1 in the transaction Tx1 and the preset operation N1 in the transaction Tx3. The second target operation includes the preset operation R2 in the transaction Tx1, the preset operation R3 in the transaction Tx2, and the preset operation R4 in the transaction Tx3. By processing the first target operation in parallel and the second target operation in serial, the collaborative processing of transactions can be achieved, which can greatly improve the speed of processing transactions in the blockchain system, thereby improving the efficiency of transaction processing.
[0084] In some embodiments, the relationship parsing efficiency in the topological structure graph can be obtained by: dependencyresolution =D×O(1) to obtain the relational parsing efficiency; where T dependencyresolution is the efficiency of relationship resolution, D is the total number of relationship indexes, that is, the number of transactions with associated relationships among all transactions, and O(1) is the time complexity of resolving each index relationship when constructing the topological structure graph.
[0085] In some embodiments, in serial processing, the serial throughput of the blockchain system can be obtained by calculating Get the serial throughput of the blockchain system; where Θ serial is the serial throughput of the blockchain system, n is the total number of transactions, T dependencyresolution For relational parsing efficiency.
[0086] In parallel processing, the parallel throughput of the blockchain system can be obtained by computing Get the parallel throughput of the blockchain system; where Θ parallel is the parallel throughput of the blockchain system, n is the total number of transactions, T dependencyresolution is the relationship parsing efficiency, i.e., the total parsing time, and D is the total number of relationship indexes.
[0087] In some embodiments, by adopting the collaborative processing method in the embodiments of the present application, if the number of parallelization levels is m, and the ratio of efficiency improvement of each level of parallelization is r, the total efficiency improvement is: E total =(1+r) m It can be seen that by adopting the blockchain system operation method of the present application to collaboratively process transactions, the efficiency of transaction processing can be improved exponentially. In addition, by reducing latency and increasing throughput through multi-level collaboration, the performance bottleneck problem of blockchain can be solved.
[0088] See also Fig. 9 , Fig. 9 is a flowchart of an operation method of a blockchain system shown in another exemplary embodiment of the present application. After obtaining the relationship index between the preset operation and the corresponding key-value pair in each transaction, the operation method of the blockchain system also includes at least step S910, which is described in detail as follows:
[0089] Step S910: in response to the adjustment operation on the relationship index, perform custom adjustment on the relationship index.
[0090] It is understandable that in the embodiments of the present application, in addition to the transfer operation, the preset operation in each transaction may involve more complex operation types and more complex dependency states in the smart contract. For the operation types customized by the developer, it is necessary to define the relationship index in the smart contract, and display these relationship indexes when the contract is initialized, so that the relationship index can be processed more correctly and the accuracy of constructing the topological structure diagram can be improved. At the same time, by customizing the relationship index, the transaction processing can be more in line with user needs.
[0091] It should be noted that the relevant step contents in the embodiments of the present application are consistent with the corresponding step contents recorded in the aforementioned embodiments. Therefore, for the detailed description of these steps, please refer to the records in the aforementioned embodiments, and the embodiments of the present application will not be repeated here.
[0092] Combination Fig.10 As shown, Fig.10 It is an operating device of a blockchain system shown in an exemplary embodiment of the present application. The blockchain system includes multiple nodes. The nodes are configured to verify the transactions when they are received, and store the transactions in the local transaction pool of the nodes when the verification is passed; the nodes are also configured to broadcast the transactions to other nodes in the blockchain system when they are received; the device includes a first acquisition module 1010, a query module 1020, a second acquisition module 1030 and a processing module 1040. The first acquisition module 1010 is configured to acquire the block proposal broadcasted by the first node; wherein the block proposal only includes the transaction hashes corresponding to the multiple transactions respectively; the first node is a node in the blockchain system that receives and broadcasts the multiple transactions; the query module 1020 is configured to query the local transaction pool of the second node according to the transaction hash to obtain the query result; wherein the second node is a node other than the first node in the blockchain system; the second acquisition module 1030 is configured to acquire the transaction type corresponding to each transaction when the query result is that there is a transaction corresponding to the transaction hash in the local transaction pool of the second node; wherein the transaction type is used to characterize whether there is a non-association relationship between transactions; the processing module 1040 is configured to collaboratively process transactions whose transaction type is a non-association relationship.
[0093] In some embodiments, the underlying database of the blockchain system stores data modified by preset operations in each transaction in the form of key-value pairs, each transaction includes multiple different preset operations, and when each transaction is executed, the value in the key-value pair corresponding to the preset operation will be modified; the second acquisition module 1030 is configured to obtain the transaction type corresponding to each transaction in the following manner, including: obtaining the predicted modification state of the key-value pair corresponding to each transaction; wherein the predicted modification state of the key-value pair is used to characterize whether there is a value in the same key-value pair modified by other transactions when they are executed among the values in the key-value pair modified when the current transaction is executed; if the predicted modification state of the key-value pair is used to characterize the value in the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed is not the same key-value pair, then it is determined that the transaction type corresponding to the current transaction has a non-association relationship; if the predicted modification state of the key-value pair is used to characterize the value in the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed is the same key-value pair, then it is determined that the transaction type corresponding to the current transaction has no non-association relationship.
[0094] In some embodiments, the second acquisition module 1030 is further configured to obtain the predicted modification status of the key-value pair corresponding to each transaction in the following manner, including: obtaining a relationship index between the preset operation in each transaction and the corresponding key-value pair; constructing a topological structure diagram of the preset operation in each transaction and the corresponding key-value pair based on the relationship index; and determining the predicted modification status of the key-value pair corresponding to each transaction from the topological structure diagram.
[0095] In some embodiments, the second acquisition module 1030 is also configured to construct a topological structure diagram of each transaction and the corresponding key-value pair according to the relationship index in the following manner, including: arranging the first nodes into the same branch structure according to a preset order; wherein the first node is a preset operation belonging to the same transaction, and the preset order is the chronological order of executing the preset operations; connecting and sorting the second nodes in different branch structures according to the preset order to obtain a topological structure diagram; wherein the second node is a preset operation belonging to different transactions and modifies the value in the same key-value pair.
[0096] In some embodiments, the second acquisition module 1030 is further configured to determine the predicted modification state of the key-value pair corresponding to each transaction from the topology structure diagram in the following manner, including: if there is a connection relationship between the branch structures corresponding to each transaction in the topology structure diagram, then determining that the predicted modification state of the key-value pair corresponding to each transaction is used to represent the value in the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed; or,
[0097] If there is no connection relationship in the branch structure corresponding to each transaction in the topology structure diagram, the predicted modification state of the key-value pair corresponding to each transaction is determined to be a value in the key-value pair used to represent the modification of the current transaction when it is executed, and is not the same as the value in the same key-value pair modified by other transactions when they are executed.
[0098] In some embodiments, the processing module 1040 is configured to collaboratively process transactions whose transaction types are non-association relationships in the following manner, including: determining a first target operation and a second target operation from preset operations in transactions whose transaction types are non-association relationships; wherein the first target operation is a preset operation that belongs to different transactions and does not modify the value in the same key-value pair; the second target operation is a preset operation that belongs to different transactions and modifies the value in the same key-value pair; and the first target operation is processed in parallel and the second target operation is processed in serial.
[0099] In some implementations, the operating device of the blockchain system further includes an adjustment module, which is configured to perform a customized adjustment on the relationship index in response to an adjustment operation on the relationship index.
[0100] An embodiment of the present disclosure further provides an electronic device, including: a processor and a memory; the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the electronic device executes the above method.
[0101] Fig.11 The structure diagram of the computer system suitable for implementing the electronic device of the embodiment of the present application is shown. It should be noted that: Fig.11 The computer system 1100 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0102] like Fig.11 As shown, the computer system 1100 includes a central processing unit (CPU) 1101, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1102 or the program loaded from the storage part 1108 to the random access memory (RAM) 1103, such as executing the method in the above embodiment. In the random access memory 1103, various programs and data required for system operation are also stored. The central processing unit 1101, the read-only memory 1102 and the random access memory 1103 are connected to each other through a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.
[0103] The following components are connected to the input / output interface 1105: an input section 1106 including a keyboard, a mouse, etc.; an output section 1107 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1108 including a hard disk, etc.; and a communication section 1109 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1109 performs communication processing via a network such as the Internet. A drive 1110 is also connected to the input / output interface 1105 as needed. A removable medium 1111, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1110 as needed so that a computer program read therefrom is installed into the storage section 1108 as needed.
[0104] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication section 1109, and / or installed from a removable medium 1111. When the computer program is executed by a central processing unit (CPU) 1101, various functions defined in the system of the present application are executed.
[0105] The embodiments of the present disclosure also provide a computer-readable storage medium on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor of a computer, the computer executes the above-mentioned method for operating the blockchain system.
[0106] It should be noted that the computer-readable medium shown in the embodiment of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a computer-readable computer program is carried. This propagated data signal can take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. A computer program contained on a computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0107] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0108] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.
[0109] The present application also provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the operation method of the blockchain system as described above is implemented. The computer-readable storage medium may be included in the electronic device described in the above embodiment, or may exist independently without being assembled into the electronic device.
[0110] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. A person skilled in the art can easily make corresponding changes or modifications based on the main concept and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.
Claims
1. A method for operating a blockchain system, characterized in that: The blockchain system includes a plurality of nodes, wherein the nodes are configured to verify the transactions upon receipt and store the transactions in a local transaction pool of the nodes upon passing the verification; The node is also configured to broadcast the transaction to other nodes in the blockchain system upon receiving the transaction; the method comprises: Obtaining a block proposal broadcasted by a first node; wherein the block proposal only includes transaction hashes corresponding to the multiple transactions respectively; the first node is a node in the blockchain system that receives the multiple transactions and broadcasts the multiple transactions; According to the transaction hash, a query is performed in the local transaction pool of the second node to obtain a query result; wherein the second node is a node other than the first node in the blockchain system; When the query result is that the transaction corresponding to the transaction hash exists in the local transaction pool of the second node, obtaining the transaction type corresponding to each transaction; wherein the transaction type is used to indicate whether there is a non-associated relationship between transactions; The transaction type is a transaction with a non-associated relationship and is processed collaboratively.
2. The method according to claim 1, characterized in that The underlying database of the blockchain system stores the data modified by the preset operation in each transaction in the form of key-value pairs. Each transaction includes multiple different preset operations. When each transaction is executed, the value in the key-value pair corresponding to the preset operation will be modified. The obtaining of the transaction type corresponding to each transaction includes: Obtaining a predicted modification state of a key-value pair corresponding to each transaction; wherein the predicted modification state of the key-value pair is used to indicate whether a value in a key-value pair modified when the current transaction is executed has a value in the same key-value pair as that in another transaction when the transaction is executed; If the predicted modification state of the key-value pair is used to represent that the value of the key-value pair modified by the current transaction when it is executed is not the same as the value in the key-value pair modified by other transactions when they are executed, it is determined that the transaction type corresponding to the current transaction is a non-association relationship; If the predicted modification state of the key-value pair is used to represent the value in the key-value pair modified when the current transaction is executed, and other transactions modify the same value in the key-value pair when they are executed, then it is determined that the transaction type corresponding to the current transaction does not have a non-association relationship.
3. The method according to claim 2, characterized in that The obtaining of the predicted modification status of the key-value pair corresponding to each transaction includes: Obtaining a relationship index between a preset operation and a corresponding key-value pair in each transaction; Constructing a topological structure diagram of the preset operations and corresponding key-value pairs in each transaction according to the relationship index; The predicted modification status of the key-value pairs corresponding to each transaction is determined from the topology diagram.
4. The method according to claim 3, characterized in that The step of constructing a topological structure diagram of each transaction and a corresponding key-value pair according to the relationship index includes: Arranging the first nodes into the same branch structure according to a preset order; wherein the first nodes are preset operations belonging to the same transaction, and the preset order is the time sequence of executing the preset operations; The second nodes in different branch structures are connected and sorted according to the preset order to obtain the topological structure diagram; wherein the second nodes belong to different transactions and modify the preset operations of the value in the same key-value pair.
5. The method according to claim 3, characterized in that: The step of determining the predicted modification state of the key-value pair corresponding to each transaction from the topological structure diagram includes: If there is a connection relationship between the branch structures corresponding to each transaction in the topological structure diagram, it is determined that the predicted modification state of the key-value pair corresponding to each transaction is used to represent the value in the key-value pair modified by the current transaction when it is executed, and the value in the same key-value pair modified by other transactions when they are executed; or, If there is no connection relationship in the branch structure corresponding to each transaction in the topology structure diagram, it is determined that the predicted modification state of the key-value pair corresponding to each transaction is used to represent the value of the key-value pair modified when the current transaction is executed, and it is not the same key-value pair as the value modified when other transactions are executed.
6. The method according to claim 2, characterized in that The collaborative processing of the transaction type of which is a transaction with a non-association relationship includes: Determine a first target operation and a second target operation from preset operations in transactions of which the transaction type is a non-association relationship; wherein the first target operation is a preset operation that belongs to different transactions and modifies values in different key-value pairs; and the second target operation is a preset operation that belongs to different transactions and modifies values in the same key-value pair; The first target operation is processed in parallel, and the second target operation is processed in serial.
7. The method according to claim 3, characterized in that The method further comprises: In response to the adjustment operation on the relationship index, the relationship index is customized adjusted.
8. A blockchain system operation device, characterized in that: The blockchain system includes a plurality of nodes, wherein the nodes are configured to verify the transactions upon receipt and store the transactions in a local transaction pool of the nodes upon passing the verification; The node is also configured to broadcast the transaction to other nodes in the blockchain system upon receiving the transaction; the device comprises: A first acquisition module is configured to acquire a block proposal broadcasted by a first node; wherein the block proposal only includes transaction hashes corresponding to a plurality of transactions respectively; the first node is a node in the blockchain system that receives the plurality of transactions and broadcasts the plurality of transactions; A query module is configured to query a local transaction pool of a second node according to the transaction hash to obtain a query result; wherein the second node is a node other than the first node in the blockchain system; A second acquisition module is configured to acquire a transaction type corresponding to each transaction when the query result is that the transaction corresponding to the transaction hash exists in the local transaction pool of the second node; wherein the transaction type is used to indicate whether there is a non-association relationship between transactions; The processing module is configured to collaboratively process the transactions of the transaction type with non-association relationship.
9. An electronic device, characterized in that: include: one or more processors; A storage device for storing one or more programs, when the one or more programs are executed by the one or more processors, enables the electronic device to implement the operating method of the blockchain system as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor of a computer, the computer executes the method for operating the blockchain system according to any one of claims 1 to 7.
Citation Information
Patent Citations
Transaction processing method, system, apparatus and storage medium for license chain
CN109087098A
Method and system for realizing multi-node transaction parallel execution in block chain
CN112073538A
Consensus method and device and block chain system
CN113541968A
Transaction processing method, block chain node and block chain network
CN115174067A
Data processing method and device based on block chain, electronic equipment and storage medium
CN117151714A