CN116781772A - Message pushing method and device - Google Patents

Message pushing method and device Download PDF

Info

Publication number
CN116781772A
CN116781772A CN202310710986.0A CN202310710986A CN116781772A CN 116781772 A CN116781772 A CN 116781772A CN 202310710986 A CN202310710986 A CN 202310710986A CN 116781772 A CN116781772 A CN 116781772A
Authority
CN
China
Prior art keywords
node
pushing
endorsement
security
consensus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310710986.0A
Other languages
Chinese (zh)
Inventor
李曼潇
王志远
罗强
陈宜珩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202310710986.0A priority Critical patent/CN116781772A/en
Publication of CN116781772A publication Critical patent/CN116781772A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

The embodiment of the application provides a message pushing method and a message pushing device, which relate to the field of block chains and can also be applied to the field of finance, wherein the method comprises the following steps: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message; the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node to perform security verification, and the consensus node is enabled to receive the endorsement filtering result; pushing the endorsement filtering result of the consensus node to the execution node, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result. The application can realize parallel acceleration of message pushing among module nodes in one blockchain transaction or multiple blockchain transactions.

Description

Message pushing method and device
Technical Field
The application relates to the field of blockchains and also can be applied to the field of finance, in particular to a message pushing method and a message pushing device.
Background
In a conventional blockchain architecture, a node typically assumes multiple functions of blockchain consensus, storage, communication, execution, security, etc. However, as the amount of transactions increases, the hardware configuration of the nodes becomes a bottleneck limiting performance improvement. To improve overall efficiency, conventional blockchains are beginning to be modular in design, splitting different functions into independent modules. Through modularized decoupling, the overall efficiency is improved to a certain extent, so that the node can select a required functional module according to the needs, and the performance is improved.
However, after the modularity decoupling of the blockchain is completed, interactions between the various modules are typically pushed synchronously. This means that messages between modules need to be delivered synchronously in order, resulting in reduced transmission efficiency inside the blockchain network node. When a large number of transactions are processed, the synchronous pushing mode further causes the processing speed to be slow, and the processing performance of the whole blockchain network is limited.
Disclosure of Invention
Aiming at the problems in the prior art, the application provides a message pushing method and a message pushing device, which can realize parallel acceleration of message pushing among module nodes under one blockchain transaction or multiple blockchain transactions.
In order to solve at least one of the problems, the application provides the following technical scheme:
according to a first aspect of an embodiment of the present application, the present application provides a message pushing method, applied to a message pushing node of a blockchain network, where the message pushing node is connected to a consensus node, an endorsement node, an execution node, a security node, and a storage node, and the method includes:
pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message;
the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result;
pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the application, further comprising:
in the process of pushing the transaction message of the consensus node to the endorsement node, pushing the transaction message to other consensus nodes of a blockchain network in parallel;
in the process of pushing the execution result to a storage node and the security node in parallel, pushing the execution result to other consensus nodes of the blockchain network in parallel;
and after the storage node performs uplink storage on the execution result, pushing the storage result to other consensus nodes of the blockchain network in parallel.
According to any embodiment of the present application, the message pushing node is connected to an authentication node, and pushes the execution result to the storage node and the security node in parallel, including:
pushing the execution result to the verification node so that the verification node performs validity verification on the execution result;
and under the condition that the verification is passed, pushing the execution result of the verification node to a storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the present application, in pushing the execution result to the verification node, the method further includes:
and pushing the consensus parameters of the consensus nodes to a storage node and the security node in parallel, so that the security node performs security verification on the consensus parameters, and the storage node determines corresponding block information according to the consensus parameters.
According to any embodiment of the present application, before pushing the transaction message received by the consensus node to the endorsement node, the method further includes:
responding to receiving a storage resource contribution instruction sent by a user, and setting the storage node for a client corresponding to the user;
responding to a computing resource contribution instruction sent by a user, and setting the consensus node and the execution node to a client corresponding to the user;
responding to a bandwidth resource contribution instruction sent by a user, and setting the endorsement node and the message pushing node to a client corresponding to the user;
the transaction message is received by at least one client comprising the storage node, the consensus node, the execution node, the endorsement node, and the message pushing node.
According to any embodiment of the application, further comprising:
responding to an untrusted instruction of a user on a setting result, and associating a client corresponding to the user to the security node;
and responding to receiving a trust instruction of a user on the setting result, cutting the security node in the setting result to obtain a setting result of deleting the security node.
According to a second aspect of an embodiment of the present application, there is provided a message pushing device applied to a message pushing node of a blockchain network, the message pushing node being connected to a consensus node, an endorsement node, an execution node, a security node and a storage node, the device comprising:
the transaction task delivery module is used for: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message;
the filtering result parallel pushing module is used for: the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result;
The execution result parallel pushing module is used for: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the present application, the method further comprises a consensus node synchronization module for:
in the process of pushing the transaction message of the consensus node to the endorsement node, pushing the transaction message to other consensus nodes of a blockchain network in parallel;
in the process of pushing the execution result to a storage node and the security node in parallel, pushing the execution result to other consensus nodes of the blockchain network in parallel;
and after the storage node performs uplink storage on the execution result, pushing the storage result to other consensus nodes of the blockchain network in parallel.
According to any embodiment of the present application, the message pushing node is connected to the verification node, and the execution result parallel pushing module is specifically configured to, when pushing the execution result to the storage node and the security node in parallel:
Pushing the execution result to the verification node so that the verification node performs validity verification on the execution result;
and under the condition that the verification is passed, pushing the execution result of the verification node to a storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the present application, in the process of pushing the execution result to the verification node, the method further includes a block parameter parallel pushing module, configured to:
and pushing the consensus parameters of the consensus nodes to a storage node and the security node in parallel, so that the security node performs security verification on the consensus parameters, and the storage node determines corresponding block information according to the consensus parameters.
According to any embodiment of the present application, before pushing the transaction message received by the consensus node to the endorsement node, the node configuration module is further configured to:
responding to receiving a storage resource contribution instruction sent by a user, and setting the storage node for a client corresponding to the user;
Responding to a computing resource contribution instruction sent by a user, and setting the consensus node and the execution node to a client corresponding to the user;
responding to a bandwidth resource contribution instruction sent by a user, and setting the endorsement node and the message pushing node to a client corresponding to the user;
the transaction message is received by at least one client comprising the storage node, the consensus node, the execution node, the endorsement node, and the message pushing node.
According to any embodiment of the present application, the method further comprises a security node configuration module for:
responding to an untrusted instruction of a user on a setting result, and associating a client corresponding to the user to the security node;
and responding to receiving a trust instruction of a user on the setting result, cutting the security node in the setting result to obtain a setting result of deleting the security node.
According to a third aspect of the embodiments of the present application, there is provided an electronic device including a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of the message pushing method when executing the program.
According to a fourth aspect of embodiments of the present application, there is provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the message pushing method.
According to a fifth aspect of embodiments of the present application, there is provided a computer program product comprising computer programs/instructions which when executed by a processor implement the steps of the message pushing method.
As can be seen from the above technical solution, the present application provides a message pushing method and apparatus, by pushing a transaction message received by the consensus node to the endorsement node, so that the endorsement node performs endorsement filtering on the transaction message; the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result; and pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result and the storage node performs uplink storage on the execution result, thereby being capable of realizing parallel acceleration of message pushing among module nodes under one-stroke blockchain transaction or multiple-stroke blockchain transaction.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, and it is obvious that the drawings in the following description are some embodiments of the present application, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic diagram of a message pushing method according to an embodiment of the present application;
FIG. 2 is a flow chart of a message pushing method according to an embodiment of the present application;
FIG. 3 is a second flow chart of a message pushing method according to an embodiment of the application;
FIG. 4 is a third flow chart of a message pushing method according to an embodiment of the application;
FIG. 5 is a second diagram illustrating a message pushing method according to an embodiment of the present application;
FIG. 6 is a flowchart of a message pushing method according to an embodiment of the present application;
FIG. 7 is a flowchart of a message pushing method according to an embodiment of the present application;
FIG. 8 is a flowchart of a message pushing method according to an embodiment of the present application;
FIG. 9 is a flowchart of a message pushing method according to an embodiment of the present application;
FIG. 10 is a diagram of one of the block diagrams of a message pushing device in an embodiment of the present application;
fig. 11 is a schematic structural diagram of an electronic device in an embodiment of the application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more apparent, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it is apparent that the described embodiments are some embodiments of the present application, but not all embodiments of the present application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
The technical scheme of the application obtains, stores, uses, processes and the like the data, which all meet the relevant regulations of national laws and regulations.
The application provides a message pushing method and a message pushing device, which are used for solving the problems that after a blockchain module finishes modularized decoupling, synchronous pushing causes the reduction of transmission efficiency in a blockchain network node, and when a large number of transactions are processed, the synchronous pushing mode further causes the slowing of processing speed and limits the processing performance of the whole blockchain network.
In order to achieve parallel acceleration of message pushing between module nodes in a blockchain transaction or a multi-blockchain transaction, the application provides an embodiment of a message pushing method, wherein the embodiment is applied to a message pushing node of a blockchain network, and the message pushing node is connected with a consensus node, an endorsement node, an execution node, a security node and a storage node.
The application discloses a modular architecture design of a blockchain system, which is characterized in that the blockchain link point functions are modularized according to the complete processing flow of the blockchain, and the design of blockchain modular nodes is proposed, as shown in fig. 1, the complete blockchain link point functions are split into an endorsement node 11, a consensus node 12, a verification node 13, an execution node 14, a message pushing node 15, a storage module 16, a security node 17 and the like.
Specifically, the message pushing node is an important node provided by the application, has a plurality of key functions and is used for realizing parallel message transmission among the block chain nodes. The message push node function is explained in detail below:
first, the message pushing node can construct a Directed Acyclic Graph (DAG) for executing transactions across modules. That is, the message pushing node may be capable of ordering the plurality of transactions according to the dependency relationship and determining the order of execution. By constructing the DAG, the message pushing node can accelerate the execution process of the transaction in parallel, and the performance and throughput of the whole system are improved.
In addition, the message pushing node can also push the transaction execution result to an external client or a cross-chain transaction initiator, and perform corresponding callback processing so as to timely transmit the transaction execution result to a related party, so that the execution state and the result of the transaction can be timely obtained.
Finally, the message pushing node integrates various communication protocols, such as http, https, and grpc, for communication with other nodes. An appropriate communication protocol can be selected for messaging as desired. And meanwhile, the message subscription and pushing functions are supported, and the intermediate state messages can be efficiently transferred so as to ensure coordination and synchronization between the nodes, so that the nodes can receive and process key messages in real time.
The endorsement node can reject transactions which are not compliant, cannot verify identity or are accessed when the network is overloaded according to preset transaction filtering rules. And judging the compliance of the transaction, and screening out the transaction meeting the conditions for processing. After the transaction is accepted, the endorsement node can endorse and sign the transaction execution result to confirm the credibility of the endorsement node. According to the privacy requirement, the endorsement node can also perform zero knowledge proof and other processing to prove that the transaction execution result accords with the rule, and meanwhile, the privacy of the transaction is protected. Finally, the endorsement node returns the processed transaction execution result to the blockchain client for subsequent verification and use.
The consensus node is an important node in a blockchain network under a distributed architecture. After a series of transactions, different consensus nodes can interactively negotiate the transaction results through multiple rounds of consensus messages so as to realize the final consistency of the transactions. The task of the consensus node is to ensure that duplication, deletion or disorder of transactions does not occur in the consensus process. Different block chain nodes can agree and confirm the validity of the transaction through a consensus algorithm and a consensus rule. The message pushing node is responsible for synchronizing data to other blockchain nodes in order to achieve the collaborative work of the consensus process.
The verification node is mainly responsible for carrying out identity verification and transaction validity verification on the received blockchain transaction. Wherein the authentication includes authentication of the transaction initiator and the endorser. The underlying verification technology can utilize the services provided by the security node, and uses hash, signature verification, decryption and other technologies to verify the legitimacy of the identity. The validity verification of the transaction result comprises handling fee verification, plaintext result verification of a read-write set, zero knowledge proof verification of the read-write set and the like. The underlying authentication techniques may be implemented using services provided by the security node.
The executing node is a node for executing the processing logic appointed in advance according to the intelligent contract appointed in the transaction, and is responsible for processing the transaction according to the code logic in the intelligent contract and generating a transaction result read-write set. The transaction result read-write set can be in a plaintext form, and can also be processed by a privacy computing technology so as to protect the privacy of the transaction. The task of the execution node is to execute the transaction logic according to the contract rule and generate an effective transaction result for subsequent verification and storage.
The storage node integrates various databases and caching technologies, including a relational database, a kv database, an unstructured database, an independent operation database, an embedded database and a multi-level cache, and is responsible for realizing the persistent storage of file type data and relational data of a blockchain or performing the management of the multi-level cache. The storage nodes play an important role in storing and managing data in the blockchain system, and the safety and reliability of the data are ensured.
The security node contains a series of cryptographically related processing techniques and facilities including hash hashing, signature verification, encryption and decryption, trusted execution environments, hardware machine encryption and decryption, and privacy computing techniques (e.g., secure multiparty computing, zero knowledge proof, differential privacy, etc.). The task of the security node is to provide cryptography-related functions and services for protecting the security of the blockchain system, responsible for managing keys, certificates and other cryptographic files, ensuring confidentiality, integrity and trustworthiness of transactions and data. The security node plays an important role in the whole scheme and provides security for the blockchain system.
The message pushing node, the security node and the storage node have expandability, and can fully utilize computer resources to expand a plurality of copies, so that the overall efficiency of the block chain link point is improved. When the safety processing efficiency of the block chain node is bottleneck, a plurality of safety nodes can be expanded, the safety related functions are processed in parallel, when the information pushing of the block chain node is delayed, a plurality of information pushing nodes can be expanded, the information transmission is processed in parallel, and when the storage information of the block chain is bottleneck, a plurality of storage nodes can be expanded, and the safety related functions are processed in parallel.
Referring to fig. 2, the message pushing method of the present application is applied to a message pushing node of a blockchain network, and specifically includes the following contents:
step S101: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message.
The transaction information comprises a transaction request initiated by a participant and related parameters of transaction, and the transaction information received by the consensus node is pushed to an endorsement node so that the endorsement node can carry out endorsement filtering on the transaction information, and the transaction information which is not compliant and cannot verify identity or network overload is rejected according to preset rules, so that only the transaction information which accords with the condition is further processed, and the safety and efficiency of the whole blockchain system are improved.
Step S102: and pushing the endorsement filtering result of the endorsement node to the security node and the consensus node in parallel so that the security node performs security verification on the endorsement filtering result and the consensus node receives the endorsement filtering result.
The endorsement filtering result represents a screening result of the transaction message obtained after being processed by the endorsement node, and the result comprises the accepted transaction message, the transaction message conforming to the rule and other relevant information.
And the endorsement filtering result of the endorsement node is pushed to the security node and the consensus node in parallel. I.e. the endorsement node will pass the filtering result to both the security node and the consensus node so that it can be processed simultaneously.
Specifically, the security node may perform security verification and verification on the endorsement filtering result, for example, perform operations such as hash, signature verification, decryption, etc. on the data by using a cryptography correlation technique, so as to ensure the integrity, authenticity, and credibility of the data. The consensus node receives the endorsement filtering result of the endorsement node so as to obtain the latest endorsement information, and uses the information to negotiate a transaction result in the consensus process.
By pushing the endorsement filtering result of the endorsement node to the security node and the consensus node in parallel, the security node can carry out security check on the filtering result, and the credibility and the integrity of the data are ensured. Meanwhile, the consensus node can receive endorsement filtering results, use the results to carry out a consensus process, and negotiate a final transaction result.
Step S103: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
The endorsement filtering result of the consensus node is pushed to the execution node to acquire the execution result, and simultaneously the execution result is pushed to the storage node and the security node in parallel, so that the security node performs security check on the execution result, and the storage node performs uplink storage on the execution result.
The execution result refers to a transaction result obtained after the intelligent contract is executed, and the transaction result comprises a read-write set and other related information obtained after the transaction is processed.
By pushing the endorsement filtering result of the consensus node to the execution node, the execution result of the transaction can be obtained. Meanwhile, the execution results are pushed to the storage node and the safety node in parallel, the storage node can store the execution results in a uplink mode, the persistent storage of data and the data integrity of the blockchain are guaranteed, the safety node can carry out safety verification on the execution results, the reliability of the data is guaranteed, and the safety and the reliability of transactions and the stability of the whole blockchain system are improved.
As can be seen from the above description, the message pushing method provided by the embodiment of the present application implements a synchronous-to-asynchronous process of a transaction flow in a blockchain network through a message pushing node, and promotes parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving data processing efficiency of the blockchain network.
Specifically, first, the message pushing node acts as an intermediate of message transmission, and can receive messages sent by various modularized nodes such as a consensus node, an endorsement node and the like, and asynchronously push the messages to related receiving nodes. So that the sender node no longer needs to wait for the response of the receiver node, but can immediately continue to perform subsequent operations. The process of converting the transaction flow from synchronous to asynchronous is realized with the assistance of the message pushing node.
Furthermore, asynchronous transaction flows enable individual modular nodes to process in parallel without waiting for completion of other nodes. For example, after the endorsement node performs endorsement filtering on the transaction, the result can be pushed to the security node and the consensus node in parallel to perform security check and consensus achievement. Meanwhile, the execution node can immediately start to execute the intelligent contract and give out an execution result after receiving the endorsement filtering result of the consensus node. The parallel processing mode can accelerate the advancing speed of the transaction flow and improve the data processing efficiency of the block chain network.
Finally, by implementing asynchronous processing and parallel pushing of the transaction flow, the application can effectively improve the data processing efficiency of the blockchain network. Each modularized node can simultaneously carry out respective tasks without waiting for the completion of other nodes, thereby fully utilizing system resources and parallel computing capacity. Thus, the confirmation and processing speed of the transaction can be increased, the delay of the transaction is reduced, and the throughput and response capacity of the whole network are improved.
In an embodiment of the message pushing method of the present application, referring to fig. 3, the following may be further specifically included:
Step S104: in the process of pushing the transaction message of the consensus node to the endorsement node, pushing the transaction message to other consensus nodes of a blockchain network in parallel;
step S105: in the process of pushing the execution result to a storage node and the security node in parallel, pushing the execution result to other consensus nodes of the blockchain network in parallel;
step S106: and after the storage node performs uplink storage on the execution result, pushing the storage result to other consensus nodes of the blockchain network in parallel.
Firstly, in the process of pushing the transaction information of the consensus node to the endorsement node, the transaction information is simultaneously and parallelly pushed to other consensus nodes of the blockchain network, namely, other consensus nodes except the endorsement node can also receive the transaction information simultaneously, so that the other consensus nodes know new transaction and participate in the subsequent consensus process, the transaction can be widely verified and confirmed, and maintenance of update of a consensus node list, activity detection and communication connection is completed.
After the execution node obtains the execution result of the transaction, the execution result can be simultaneously pushed to the storage node and the security node so as to ensure that the execution result is stored permanently, and the security node can carry out security check on the execution result. And simultaneously, pushing the execution result to other consensus nodes of the blockchain network in parallel. So that other consensus nodes can obtain the information of the execution result and perform the subsequent consensus process.
After the storage node performs uplink storage on the execution result, the storage result needs to be pushed to other consensus nodes of the blockchain network in parallel, so that the other consensus nodes can acquire the storage result and correspondingly perform subsequent consensus processes. By pushing the stored result to other consensus nodes, broadcasting of the stored result can be achieved, and it is ensured that each consensus node in the network can obtain a copy of the stored result.
In the scheme of the application, the transaction information, the execution result and the storage result are pushed to other consensus nodes of the blockchain network in parallel so as to ensure the verification of the transaction, the security check of the execution result and the broadcasting of the storage result. Thus, the participation degree of the nodes in the network and the reliability of the data can be increased, and the safety and the efficiency of the whole blockchain network are further improved.
In an embodiment of the message pushing method of the present application, referring to fig. 4, the message pushing node is connected to the verification node, and the pushing the execution result to the storage node and the security node in parallel may further specifically include the following:
step S103A: pushing the execution result to the verification node so that the verification node can carry out validity verification on the execution result.
Step S103B: and under the condition that the verification is passed, pushing the execution result of the verification node to a storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
And the message pushing node and the verification node are connected so as to transfer and verify information. After the execution node obtains the execution result, the execution result is pushed to the verification node in parallel, so that the verification node can carry out validity verification on the execution result, and the execution result is ensured to accord with preset rules and standards. The verification node checks whether the execution result is legal and complete and verifies the correctness of various information and data involved therein.
Once authenticated, the authentication node pushes the execution results in parallel to the storage node and the security node. So that the storage node can store the execution result in a uplink manner and permanently store the execution result in a blockchain for later inquiry and audit. Meanwhile, the security node can carry out security check on the execution result, so that the security node is not influenced by tampering and counterfeiting. The security node uses cryptography-related techniques and facilities, such as hash hashing, signature verification, encryption and decryption, etc., to perform security check and verification on the execution result.
Preferably, in pushing the execution result to the verification node, the method further includes:
and pushing the consensus parameters of the consensus nodes to a storage node and the security node in parallel, so that the security node performs security verification on the consensus parameters, and the storage node determines corresponding block information according to the consensus parameters.
Wherein the consensus parameters characterize various information parameters related to the consensus, such as transaction results, consensus status, signature of delivery target consensus nodes, encryption and privacy calculation parameters, etc. These parameters are used to ensure the safety and correctness of the consensus process.
The aim of pushing the consensus parameters to the security node is to perform security verification on the parameters. The security node uses cryptography-related techniques and facilities, such as hash hashing, signature verification, encryption and decryption, etc., to verify the consensus parameters, ensuring that they are not tampered, forged or maliciously modified. The security check of the security node ensures the integrity and the credibility of the consensus parameters, and provides reliable reference and basis for the subsequent consensus process.
Meanwhile, the aim of pushing the consensus parameters to the storage nodes in parallel is to determine corresponding block information according to the parameters. The storage node determines the position and the content of the block to be stored according to the related information in the consensus parameters, such as the block-out related information such as the latest block height, hash and the like. The storage node can form the execution result and related consensus parameters into blocks according to the structure and rules of the blockchain in the subsequent process, and store the execution result and related consensus parameters in a blockchain network, so that the permanent storage and the non-tamper-resistance of data are realized.
In summary, in the present application, by establishing a connection between the message pushing node and the authentication node, the execution result is pushed to the storage node and the security node in parallel, and the validity of the authentication node is checked. Therefore, the safety, the integrity and the credibility of the execution result can be ensured, the uplink storage of the execution result is realized, and reliable data storage and safety guarantee are provided.
In order to further explain the present application, the present application also provides a specific application example for implementing the message pushing method by using the message pushing device, after a transaction accesses the blockchain system, a cross-module execution flow chart is generated by the message pushing node, as shown in fig. 5, specifically:
and the message A characterizes the message pushing node to push the transaction message to other consensus nodes of the blockchain network in parallel, and the maintenance of the update of the list of the consensus nodes, the detection and the communication connection is completed.
And the message B characterizes the message pushing node to push the transaction message received by the consensus node to the endorsement node, and the state notification of the consensus node is completed.
And the message C characterizes the message pushing node to push the endorsement filtering result of the endorsement node to the security node, and the legal identity verification request is completed.
And the message D characterizes the message pushing node to push the endorsement filtering result of the endorsement node to the consensus node, and the filtered transaction pushing is completed.
And the message E characterizes the message pushing node to push the endorsement filtering result of the consensus node to the executing node, and a transaction executing result is obtained.
And the message F characterizes the message pushing node to push the consensus parameters of the consensus node to the security node, and comprises reading of information such as transaction results, consensus related states, signatures of delivery target consensus nodes, encryption and privacy calculation parameters and the like.
And the message G characterizes the message pushing node to push the execution result to other consensus nodes of the blockchain network in parallel, so that the transmission of the consensus intermediate message is completed, and the alignment of the states of all the phases of the consensus is completed.
And the message H characterizes the message pushing node to push the consensus parameters of the consensus node to a storage node, and requests the latest block height, hash and other block-out associated information.
And the message I characterizes the message pushing node to push the stored result to other consensus nodes of the blockchain network in parallel after the storage node performs uplink storage on the execution result, and the transmission of the consensus block message is completed.
And the message J characterizes the message pushing node to push the execution result of the consensus node to the verification node, and reads the verification result.
And the message K characterizes the message pushing node to push the execution result of the verification node to a storage node, and reads the state data such as the information of block height, the last block Hash and the like which are depended on in verification.
And the message L characterizes the message pushing node to push the execution result of the verification node to the security node, and the functions of decryption, signature verification, privacy calculation parameter verification and the like are completed.
And the message M characterizes the message pushing node to push the execution result of the verification node to a storage node, and the next stage is entered after the block submission, the reading result after the state change and the pushing consensus are completed.
Finally, the message pushing node pushes the transaction results that have completed the full stage processing to the relevant subscribers.
Where message type A, B is the modular block link point initialization phase message (shown in dashed lines in fig. 5) and the remaining message types are messages due to blockchain transaction access (shown in solid lines in fig. 5). The message type A, B is specially processed, and the rest is the DAG structure shown in fig. 5.
Further, the present application also provides a specific flowchart of a message pushing method applied to the message pushing node, as shown in fig. 6, specifically:
step S601: the message pushing node first processes the concurrent delivery of the message A, B and constructs a cross-module execution flow DAG graph (shown in solid lines in fig. 5).
Step S602: the message pushing node handles concurrent delivery of the message C, D.
Step S603: the message pushing node handles concurrent delivery of the message E, F, G, H, I, J.
Step S604: the message pushing node handles concurrent delivery of the message K, L, M.
Step S605: the message pushing node repeats the processing of 601-604, pushing the transaction flow.
As can be seen from the above description, the message pushing method provided by the embodiment of the present application implements a synchronous-to-asynchronous process of a transaction flow in a blockchain network through a message pushing node, and promotes parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving data processing efficiency of the blockchain network.
Specifically, first, the message pushing node acts as an intermediate of message transmission, and can receive messages sent by various modularized nodes such as a consensus node, an endorsement node and the like, and asynchronously push the messages to related receiving nodes. So that the sender node no longer needs to wait for the response of the receiver node, but can immediately continue to perform subsequent operations. The process of converting the transaction flow from synchronous to asynchronous is realized with the assistance of the message pushing node.
Furthermore, asynchronous transaction flows enable individual modular nodes to process in parallel without waiting for completion of other nodes. For example, after the endorsement node performs endorsement filtering on the transaction, the result can be pushed to the security node and the consensus node in parallel to perform security check and consensus achievement. Meanwhile, the execution node can immediately start to execute the intelligent contract and give out an execution result after receiving the endorsement filtering result of the consensus node. The parallel processing mode can accelerate the advancing speed of the transaction flow and improve the data processing efficiency of the block chain network.
Finally, by implementing asynchronous processing and parallel pushing of the transaction flow, the application can effectively improve the data processing efficiency of the blockchain network. Each modularized node can simultaneously carry out respective tasks without waiting for the completion of other nodes, thereby fully utilizing system resources and parallel computing capacity. Thus, the confirmation and processing speed of the transaction can be increased, the delay of the transaction is reduced, and the throughput and response capacity of the whole network are improved.
In an embodiment of the message pushing method of the present application, referring to fig. 7, before pushing the transaction message received by the consensus node to the endorsement node, the method may further specifically include the following:
Step S107: responding to receiving a storage resource contribution instruction sent by a user, and setting the storage node for a client corresponding to the user;
step S108: responding to a computing resource contribution instruction sent by a user, and setting the consensus node and the execution node to a client corresponding to the user;
step S109: responding to a bandwidth resource contribution instruction sent by a user, and setting the endorsement node and the message pushing node to a client corresponding to the user;
step S110: the transaction message is received by at least one client comprising the storage node, the consensus node, the execution node, the endorsement node, and the message pushing node.
When the complete function of the blockchain node is limited by hardware of a single device, the function of the blockchain node can be dispersed to a plurality of devices for processing, so that the distributed deployment and cooperation of the blockchain network are realized by utilizing the idle resources of the plurality of devices.
In an exemplary embodiment, when the full functionality of a blockchain node cannot be fully deployed on a single device, different functionality may be distributed across multiple devices for processing. For example, a device with free storage resources may assume the function of a storage node for storing data of a blockchain; devices with free computing resources may assume the functions of an executing node for executing smart contracts and processing transactions; while devices with specialized encryption hardware can assume the function of a security node for cryptographic related processing and verification.
In the case of such decentralized deployment, when a user sends a storage resource contribution instruction, the system will respond to and set storage nodes to the user's corresponding clients. I.e., the free device will be designated as a storage node for storing the blockchain data.
Similarly, when a user sends a computing resource contribution instruction, the system will respond to and set consensus nodes and execution nodes to the user's corresponding clients. The free devices will be designated as consensus nodes and executing nodes for assisting the blockchain consensus process and executing intelligent contracts.
In addition, when the user sends a bandwidth resource contribution instruction, the system responds to and sets an endorsement node and a message pushing node to a client corresponding to the user. Devices with free bandwidth resources will be designated as endorsement nodes and message pushing nodes for filtering transactions and pushing messages.
The application can receive the transaction information and process the transaction information correspondingly through at least one client side comprising a storage node, a consensus node, an execution node, an endorsement node and a message pushing node. Different devices in the blockchain network work cooperatively to jointly complete the transaction processing and the network function requirements, meanwhile, the blockchain node can configure the self-customized blockchain node according to actual requirements and actual hardware, each module is flexibly deployed on different hardware devices, and the idle devices are fully utilized to construct the blockchain network.
In an embodiment of the message pushing method of the present application, referring to fig. 8, the following may be further specifically included:
step S111: responding to an untrusted instruction of a user on a setting result, and associating a client corresponding to the user to the security node;
step S112: and responding to receiving a trust instruction of a user on the setting result, cutting the security node in the setting result to obtain a setting result of deleting the security node.
When the system receives an untrusted instruction of the user, and the user is characterized to have doubt or untrusted on the setting result, corresponding measures can be taken to meet the safety requirement of the user. In particular, the system will associate a client associated with the user to the security node so that the user will obtain the functionality associated with the security node to enhance protection of his data and transactions.
When the user expresses the trust instruction on the setting result, the system can cut the security nodes in the setting result according to the requirement of the user, namely delete the security nodes in the setting result according to the trust instruction of the user so as to realize more simplified configuration.
Because users have a high degree of trust in other parts of the network, which are considered to have provided adequate security, the complexity and resource consumption of the blockchain network can be reduced while meeting the trust requirements of the users by tailoring the redundant nodes.
In order to further illustrate the present application, the present application further provides a specific application example of implementing a message pushing method by using the message pushing device, and a module customization flowchart of a blockchain modularized node is shown in fig. 9, and is specifically:
step S901: the user deployment environment has passed the storage idleness evaluation, asking the user if he would like to contribute storage resources. If yes, adding a storage node, updating other node related module routes, and executing S902; if not, synchronizing the storage node route of other nodes, and performing S903 when the function related to the storage node is completed by the link point of the other block.
Step S902: inquiring whether the user trusts the local storage environment, if so, cutting the security node by the storage node; if not, the storage node is associated with the security node, the storage node can provide the storage certificate based on the ZKP or OP security technology of the security node, and the verification node realizes verification of the storage certificate.
Step S903: the user deployment environment has passed the computing idleness evaluation, asking the user if he would like to contribute computing resources. If yes, adding an executing node, updating other node executing node routes, and executing S904; if not, the synchronization other nodes perform node routing, and S905 is performed.
Step S904: inquiring whether the user trusts the local execution environment, if so, cutting the security node by the execution node; if not, the executing node associates the security node, the executing node can provide the relation evidence of the state and the related service parameters before and after calculation based on various ZKP security technologies of the security node, and the consensus node realizes the rapid verification of the numerical relation of the state and the related service parameters.
Step S905: the user deployment environment has passed the bandwidth free assessment, asking the user if he would like to act as a trading portal. If yes, adding an endorsement node, updating the endorsement node route of other nodes, and executing S906; if not, synchronizing the other node endorsement node route, and executing S907.
Step S906: inquiring whether the user trusts the local network environment, if so, cutting the security node by the endorsement node; if not, the endorsement node is associated with the security node to realize the identity authentication of the transaction initiator and the encryption of the communication protocol.
Step S907: determining a module of the block chain modularized node, cutting out the message type, customizing to generate a message pushing node DAG graph, and completing the creation of the block chain node.
Step S908: if the foregoing steps involve updating the routing of other nodes in the network, the update information is packaged into a transaction and published onto the blockchain network.
The application can receive the transaction information and process the transaction information correspondingly through at least one client side comprising a storage node, a consensus node, an execution node, an endorsement node and a message pushing node. Different devices in the blockchain network work cooperatively to jointly complete the transaction processing and the network function requirements, meanwhile, the blockchain node can configure the self-customized blockchain node according to actual requirements and actual hardware, each module is flexibly deployed on different hardware devices, and the idle devices are fully utilized to construct the blockchain network.
When the system receives an untrusted instruction of the user, and the user is characterized to have doubt or untrusted on the setting result, corresponding measures can be taken to meet the safety requirement of the user. In particular, the system will associate a client associated with the user to the security node so that the user will obtain the functionality associated with the security node to enhance protection of his data and transactions.
When the user expresses the trust instruction on the setting result, the system can cut the security nodes in the setting result according to the requirement of the user, namely delete the security nodes in the setting result according to the trust instruction of the user so as to realize more simplified configuration.
In order to enable parallel acceleration of message pushing between module nodes in a blockchain transaction or in a multi-blockchain transaction, the present application provides an embodiment of a message pushing device for implementing all or part of the content of the message pushing method, see fig. 10, for a message pushing node applied to a blockchain network, where the message pushing node is connected to a consensus node, an endorsement node, an execution node, a security node, and a storage node, and the device includes:
a transaction task delivery module 1101 for: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message;
a filtering result parallel pushing module 1102, configured to: the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result;
an execution result parallel pushing module 1103, configured to: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the present application, the method further comprises a consensus node synchronization module for:
in the process of pushing the transaction message of the consensus node to the endorsement node, pushing the transaction message to other consensus nodes of a blockchain network in parallel;
in the process of pushing the execution result to a storage node and the security node in parallel, pushing the execution result to other consensus nodes of the blockchain network in parallel;
and after the storage node performs uplink storage on the execution result, pushing the storage result to other consensus nodes of the blockchain network in parallel.
According to any embodiment of the present application, the message pushing node is connected to the verification node, and the execution result parallel pushing module is specifically configured to, when pushing the execution result to the storage node and the security node in parallel:
pushing the execution result to the verification node so that the verification node performs validity verification on the execution result;
and under the condition that the verification is passed, pushing the execution result of the verification node to a storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
According to any embodiment of the present application, in the process of pushing the execution result to the verification node, the method further includes a block parameter parallel pushing module, configured to:
and pushing the consensus parameters of the consensus nodes to a storage node and the security node in parallel, so that the security node performs security verification on the consensus parameters, and the storage node determines corresponding block information according to the consensus parameters.
According to any embodiment of the present application, before pushing the transaction message received by the consensus node to the endorsement node, the node configuration module is further configured to:
responding to receiving a storage resource contribution instruction sent by a user, and setting the storage node for a client corresponding to the user;
responding to a computing resource contribution instruction sent by a user, and setting the consensus node and the execution node to a client corresponding to the user;
responding to a bandwidth resource contribution instruction sent by a user, and setting the endorsement node and the message pushing node to a client corresponding to the user;
the transaction message is received by at least one client comprising the storage node, the consensus node, the execution node, the endorsement node, and the message pushing node.
According to any embodiment of the present application, the method further comprises a security node configuration module for:
responding to an untrusted instruction of a user on a setting result, and associating a client corresponding to the user to the security node;
and responding to receiving a trust instruction of a user on the setting result, cutting the security node in the setting result to obtain a setting result of deleting the security node.
As can be seen from the above description, the message pushing device provided by the embodiment of the present application can implement a synchronous-to-asynchronous process of a transaction flow in a blockchain network through a message pushing node, and promote parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving data processing efficiency of the blockchain network.
In order to achieve parallel acceleration of message pushing between module nodes in a blockchain transaction or a multi-blockchain transaction from a hardware aspect, the application provides an embodiment of an electronic device for achieving all or part of contents in the message pushing method, wherein the electronic device specifically comprises the following contents:
a processor (processor), a memory (memory), a communication interface (Communications Interface), and a bus; the processor, the memory and the communication interface complete communication with each other through the bus; the communication interface is used for realizing message transmission between the message pushing device and related equipment such as a core service system, a user terminal, a related database and the like; the logic controller may be a desktop computer, a tablet computer, a mobile terminal, etc., and the embodiment is not limited thereto. In this embodiment, the logic controller may refer to an embodiment of the message pushing method and an embodiment of the message pushing device in the embodiment, and the contents thereof are incorporated herein, and the repetition is omitted.
It is understood that the user terminal may include a smart phone, a tablet electronic device, a network set top box, a portable computer, a desktop computer, a Personal Digital Assistant (PDA), a vehicle-mounted device, a smart wearable device, etc. Wherein, intelligent wearing equipment can include intelligent glasses, intelligent wrist-watch, intelligent bracelet etc..
In practical applications, part of the message pushing method may be performed on the electronic device side as described above, or all operations may be performed in the client device. Specifically, the selection may be made according to the processing capability of the client device, and restrictions of the use scenario of the user. The application is not limited in this regard. If all operations are performed in the client device, the client device may further include a processor.
The client device may have a communication module (i.e. a communication unit) and may be connected to a remote server in a communication manner, so as to implement data transmission with the server. The server may include a server on the side of the task scheduling center, and in other implementations may include a server of an intermediate platform, such as a server of a third party server platform having a communication link with the task scheduling center server. The server may include a single computer device, a server cluster formed by a plurality of servers, or a server structure of a distributed device.
Fig. 11 is a schematic block diagram of a system configuration of an electronic device 9600 according to an embodiment of the present application. As shown in fig. 11, the electronic device 9600 may include a central processor 9100 and a memory 9140; the memory 9140 is coupled to the central processor 9100. Notably, this fig. 11 is exemplary; other types of structures may also be used in addition to or in place of the structures to implement telecommunications functions or other functions.
In one embodiment, the message pushing method functionality may be integrated into the central processor 9100. The central processor 9100 may be configured to perform the following control:
step S101: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message.
Step S102: and pushing the endorsement filtering result of the endorsement node to the security node and the consensus node in parallel so that the security node performs security verification on the endorsement filtering result and the consensus node receives the endorsement filtering result.
Step S103: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
As can be seen from the above description, the electronic device provided by the embodiment of the present application implements a process of converting transaction flow from synchronous to asynchronous in a blockchain network by using a message pushing node, and promotes parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving data processing efficiency of the blockchain network.
In another embodiment, the message pushing device may be configured separately from the central processor 9100, for example, the message pushing device may be configured as a chip connected to the central processor 9100, and the message pushing method function is implemented by the control of the central processor.
As shown in fig. 11, the electronic device 9600 may further include: a communication module 9110, an input unit 9120, an audio processor 9130, a display 9160, and a power supply 9170. It is noted that the electronic device 9600 need not include all of the components shown in fig. 11; in addition, the electronic device 9600 may further include components not shown in fig. 11, and reference may be made to the related art.
As shown in fig. 11, the central processor 9100, sometimes referred to as a controller or operational control, may include a microprocessor or other processor device and/or logic device, which central processor 9100 receives inputs and controls the operation of the various components of the electronic device 9600.
The memory 9140 may be, for example, one or more of a buffer, a flash memory, a hard drive, a removable media, a volatile memory, a non-volatile memory, or other suitable device. The above-described message related to failure may be stored, and a program for executing the related message may be stored. And the central processor 9100 can execute the program stored in the memory 9140 to realize message storage or processing, and the like.
The input unit 9120 provides input to the central processor 9100. The input unit 9120 is, for example, a key or a touch input device. The power supply 9170 is used to provide power to the electronic device 9600. The display 9160 is used for displaying display objects such as images and characters. The display may be, for example, but not limited to, an LCD display.
The memory 9140 may be a solid state memory such as Read Only Memory (ROM), random Access Memory (RAM), SIM card, etc. But also a memory which holds messages even when powered down, can be selectively erased and provided with further data, an example of which is sometimes referred to as EPROM or the like. The memory 9140 may also be some other type of device. The memory 9140 includes a buffer memory 9141 (sometimes referred to as a buffer). The memory 9140 may include an application/function storage portion 9142, the application/function storage portion 9142 storing application programs and function programs or a flow for executing operations of the electronic device 9600 by the central processor 9100.
The memory 9140 may also include a data store 9143, the data store 9143 for storing data, such as contacts, digital data, pictures, sounds, and/or any other data used by an electronic device. The driver storage portion 9144 of the memory 9140 may include various drivers of the electronic device for communication functions and/or for performing other functions of the electronic device (e.g., messaging applications, address book applications, etc.).
The communication module 9110 is a transmitter/receiver 9110 that transmits and receives signals via an antenna 9111. A communication module (transmitter/receiver) 9110 is coupled to the central processor 9100 to provide input signals and receive output signals, as in the case of conventional mobile communication terminals.
Based on different communication technologies, a plurality of communication modules 9110, such as a cellular network module, a bluetooth module, and/or a wireless local area network module, etc., may be provided in the same electronic device. The communication module (transmitter/receiver) 9110 is also coupled to a speaker 9131 and a microphone 9132 via an audio processor 9130 to provide audio output via the speaker 9131 and to receive audio input from the microphone 9132 to implement usual telecommunications functions. The audio processor 9130 can include any suitable buffers, decoders, amplifiers and so forth. In addition, the audio processor 9130 is also coupled to the central processor 9100 so that sound can be recorded locally through the microphone 9132 and sound stored locally can be played through the speaker 9131.
The embodiment of the present application further provides a computer readable storage medium capable of implementing all the steps in the message pushing method in which the execution body is a server or a client, where the computer readable storage medium stores a computer program, and when the computer program is executed by a processor, the computer program implements all the steps in the message pushing method in which the execution body is a server or a client, for example, the processor implements the following steps when executing the computer program:
step S101: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message.
Step S102: and pushing the endorsement filtering result of the endorsement node to the security node and the consensus node in parallel so that the security node performs security verification on the endorsement filtering result and the consensus node receives the endorsement filtering result.
Step S103: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
As can be seen from the above description, the computer readable storage medium provided by the embodiments of the present application implements a process of converting a transaction flow from synchronous to asynchronous in a blockchain network by using a message pushing node, and promotes parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving the data processing efficiency of the blockchain network.
The embodiment of the present application further provides a computer program product capable of implementing all the steps in the message pushing method in which the execution body is a server or a client, where the steps of the message pushing method are implemented when the computer program/instructions are executed by a processor, for example, the computer program/instructions implement the steps of:
step S101: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message.
Step S102: and pushing the endorsement filtering result of the endorsement node to the security node and the consensus node in parallel so that the security node performs security verification on the endorsement filtering result and the consensus node receives the endorsement filtering result.
Step S103: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
As can be seen from the above description, the computer program product provided by the embodiments of the present application implements a synchronous-to-asynchronous process of a transaction flow in a blockchain network through a message pushing node, and promotes parallel and rapid pushing of the transaction flow among a plurality of modularized nodes, thereby improving data processing efficiency of the blockchain network.
It will be apparent to those skilled in the art that embodiments of the present application may be provided as a method, apparatus, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The principles and embodiments of the present invention have been described in detail with reference to specific examples, which are provided to facilitate understanding of the method and core ideas of the present invention; meanwhile, as those skilled in the art will have variations in the specific embodiments and application scope in accordance with the ideas of the present invention, the present description should not be construed as limiting the present invention in view of the above.

Claims (10)

1. A message pushing method, characterized by being applied to a message pushing node of a blockchain network, the message pushing node being connected with a consensus node, an endorsement node, an execution node, a security node and a storage node, the method comprising:
pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message;
the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result;
pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
2. The method as recited in claim 1, further comprising:
in the process of pushing the transaction message of the consensus node to the endorsement node, pushing the transaction message to other consensus nodes of a blockchain network in parallel;
In the process of pushing the execution result to a storage node and the security node in parallel, pushing the execution result to other consensus nodes of the blockchain network in parallel;
and after the storage node performs uplink storage on the execution result, pushing the storage result to other consensus nodes of the blockchain network in parallel.
3. The method according to claim 1, wherein the message pushing node is connected to an authentication node, and the pushing the execution result to the storage node and the security node in parallel comprises:
pushing the execution result to the verification node so that the verification node performs validity verification on the execution result;
and under the condition that the verification is passed, pushing the execution result of the verification node to a storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
4. A method according to claim 3, wherein in pushing the execution result to the authentication node, further comprising:
and pushing the consensus parameters of the consensus nodes to a storage node and the security node in parallel, so that the security node performs security verification on the consensus parameters, and the storage node determines corresponding block information according to the consensus parameters.
5. The method of claim 1, further comprising, prior to pushing the transaction message received by the consensus node to the endorsement node:
responding to receiving a storage resource contribution instruction sent by a user, and setting the storage node for a client corresponding to the user;
responding to a computing resource contribution instruction sent by a user, and setting the consensus node and the execution node to a client corresponding to the user;
responding to a bandwidth resource contribution instruction sent by a user, and setting the endorsement node and the message pushing node to a client corresponding to the user;
the transaction message is received by at least one client comprising the storage node, the consensus node, the execution node, the endorsement node, and the message pushing node.
6. The method as recited in claim 5, further comprising:
responding to an untrusted instruction of a user on a setting result, and associating a client corresponding to the user to the security node;
and responding to receiving a trust instruction of a user on the setting result, cutting the security node in the setting result to obtain a setting result of deleting the security node.
7. A message pushing device, characterized by a message pushing node applied to a blockchain network, the message pushing node being connected to a consensus node, an endorsement node, an execution node, a security node, and a storage node, the device comprising:
the transaction task delivery module is used for: pushing the transaction message received by the consensus node to the endorsement node so that the endorsement node carries out endorsement filtering on the transaction message;
the filtering result parallel pushing module is used for: the endorsement filtering result of the endorsement node is parallelly pushed to the security node and the consensus node, so that the security node performs security verification on the endorsement filtering result, and the consensus node receives the endorsement filtering result;
the execution result parallel pushing module is used for: pushing the endorsement filtering result of the consensus node to the execution node to obtain an execution result, and pushing the execution result to the storage node and the security node in parallel, so that the security node performs security verification on the execution result, and the storage node performs uplink storage on the execution result.
8. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the message pushing method of any of claims 1 to 6 when the program is executed by the processor.
9. A computer readable storage medium having stored thereon a computer program, characterized in that the computer program, when being executed by a processor, implements the steps of the message pushing method of any of claims 1 to 6.
10. A computer program product comprising computer programs/instructions which, when executed by a processor, implement the steps of the message pushing method of any of claims 1 to 6.
CN202310710986.0A 2023-06-15 2023-06-15 Message pushing method and device Pending CN116781772A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310710986.0A CN116781772A (en) 2023-06-15 2023-06-15 Message pushing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310710986.0A CN116781772A (en) 2023-06-15 2023-06-15 Message pushing method and device

Publications (1)

Publication Number Publication Date
CN116781772A true CN116781772A (en) 2023-09-19

Family

ID=87987330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310710986.0A Pending CN116781772A (en) 2023-06-15 2023-06-15 Message pushing method and device

Country Status (1)

Country Link
CN (1) CN116781772A (en)

Similar Documents

Publication Publication Date Title
AU2019204712B2 (en) Managing sensitive data elements in a blockchain network
CN111144881B (en) Selective access to asset transfer data
CN111681003B (en) Resource cross-chain transfer method and device, computer equipment and storage medium
KR102145701B1 (en) Prevent false display of input data by participants in secure multi-party calculations
AU2021236535A1 (en) Transferring digital tickets based on blockchain networks
CN110177124B (en) Identity authentication method based on block chain and related equipment
CN112541758A (en) Multi-round voting type fault-tolerant sequencing consensus mechanism and method based on block chain
CN110601816B (en) Lightweight node control method and device in block chain system
KR20200126322A (en) Replay attack prevention authentication protocol
CN108769230B (en) Transaction data storage method, device, server and storage medium
CN109741068B (en) Online banking cross-row signing method, device and system
CN111275555B (en) Block chain transaction processing method, transaction node and block chain system
EP4216077A1 (en) Blockchain network-based method and apparatus for data processing, and computer device
CN111066047A (en) Implementing a blockchain based workflow
CN113541970B (en) Method and system for using distributed identifier
US20220094555A1 (en) Validator control for transaction between blockchains
CN110601858B (en) Certificate management method and device
CN111294339B (en) Homogeneous alliance chain cross-chain method and device based on Fabric architecture
CN112069550B (en) Electronic contract evidence-storing system based on intelligent contract mode
KR20200083937A (en) Speeding up blockchain transactions using global acceleration nodes
CN113422733B (en) Service processing method and device of block chain, computer equipment and storage medium
CN111931209B (en) Contract information verification method and device based on zero knowledge proof
CN113255014B (en) Data processing method based on block chain and related equipment
JP2022051652A (en) Credibility verification system for digital asset data packet
CN116781772A (en) Message pushing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination