Blockchain-based data expansion processing method and device, and electronic device

CN120821777BActive Publication Date: 2026-10-23TRAVELSKY TECHNOLOGY LIMITED
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510946543.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-09
Publication Date
2026-10-23
Estimated Expiration
2045-07-09

AI Technical Summary

Technical Problem

[0005]本发明实施例提供了一种基于区块链的数据拓展处理方法及其装置、电子设备,以至少解决相关技术中,对于区块链功能单一的问题,通过联动多个业务系统实现区块链功能拓展的方式,存在执行效率较低的技术问题

Benefits of technology

[0021]根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项基于区块链的数据拓展处理方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120821777B_ABST
    Figure CN120821777B_ABST
Patent Text Reader

Abstract

The application discloses a data expansion processing method and device based on a block chain and electronic equipment, and relates to the technical field of block chains or other related fields, and the method comprises the following steps: obtaining a label expression of data processing; constructing a directed acyclic graph, and sending to-be-processed data to a corresponding capability node based on a topological order of the directed acyclic graph; updating the directed acyclic graph based on data processing results of the capability nodes, and obtaining an updated directed acyclic graph; comparing the updated directed acyclic graphs of a plurality of ledger attribution organizations, obtaining a comparison result, and generating a data expansion processing result based on the updated directed acyclic graphs of the ledger attribution organizations in the case that the updated directed acyclic graphs of the plurality of ledger attribution organizations are consistent as indicated by the comparison result. The application solves the problem of single block chain function in the related art, and the technical problem of low execution efficiency in the mode of realizing block chain function expansion by linking multiple business systems.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of blockchain technology or other related technical fields. Specifically, it relates to a data expansion processing method, apparatus, and electronic device based on blockchain. Background Technology

[0002] In recent years, blockchain technology has become a crucial cornerstone for the digital transformation of numerous industries due to its outstanding advantages in data security, transparency, and decentralization. However, with the increasing diversity of application scenarios, the simple data storage and transaction processing functions of traditional blockchain can no longer meet the needs of modern enterprises for complex data management and analysis. Especially in areas such as object storage, privacy protection, and artificial intelligence (AI) computing, blockchain faces significant technical challenges.

[0003] In related technologies, to compensate for the shortcomings of a single blockchain system, multiple independent systems are deployed and integrated, such as dedicated object storage systems, privacy computing platforms, and AI service frameworks, to achieve multi-functional integration. However, this cross-system integration is not only technically complex but also leads to inefficient data interaction processes. Furthermore, the integration of multiple systems inevitably introduces off-chain links in the data flow process, resulting in blind spots in data credibility. In addition, the integration and maintenance of multiple systems are extremely complex, thereby increasing the time, manpower, and economic costs required for business development. More importantly, this complexity often leads to a rigid product form, making it difficult to flexibly adapt to rapidly changing needs.

[0004] There is currently no effective solution to the above problems. Summary of the Invention

[0005] This invention provides a data expansion processing method, apparatus, and electronic device based on blockchain, to at least solve the problem of low execution efficiency in related technologies where blockchain functions are limited and the method of expanding blockchain functions by linking multiple business systems is inefficient.

[0006] According to one aspect of the present invention, a data extension processing method based on blockchain is provided, comprising: receiving a data processing request and parsing the data processing request to obtain a label expression for data processing; constructing a directed acyclic graph (DAG) based on the label expression, and sending the data to be processed to corresponding capability nodes based on the topological order of the DAG, and obtaining the data processing results of the capability nodes, wherein the capability nodes are used to call capability programs to extend the functionality of the blockchain, and the capability programs represent applications for extending the functionality of the blockchain; adding the data processing results of each capability node to the corresponding topological nodes in the DAG, updating the DAG, and obtaining an updated DAG; comparing the updated DAGs of multiple ledger-owning organizations to obtain a comparison result, and specifying the updated DAGs of the multiple ledger-owning organizations indicated by the comparison result. Figure 1 In cases where the data is consistent, the data expansion processing result is generated based on the updated directed acyclic graph of each ledger-owning organization.

[0007] Furthermore, before receiving the data processing request, the method further includes: uploading capability program data to the ledger nodes of each ledger-owning organization and putting the capability program data on the blockchain to obtain on-chain data; endorsing the on-chain data based on each ledger-owning organization to obtain the endorsement result of the on-chain data; and, if the endorsement result indicates that all ledger-owning organizations have endorsed the data, recording the capability program on the ledger and configuring capability tags for the capability program, wherein the capability tag of the capability program corresponds to the role field in the tag expression.

[0008] Furthermore, after recording the capability program on the ledger, the method further includes: each ledger-owning organization constructing capability nodes based on the capability program and generating keys and certificates for the capability nodes; creating a configuration transaction for adding the capability node based on the capability node, the key, and the certificate; sending the configuration transaction to the accounting nodes of each ledger-owning organization for endorsement to obtain a transaction endorsement result; if the transaction endorsement result indicates that the endorsement is successful, sending the endorsed configuration transaction to the consensus node, and using the consensus node to upload the configuration transaction to the blockchain, thereby deploying the capability node to the blockchain configuration block.

[0009] Furthermore, after deploying the capability node to the blockchain configuration block, the method further includes: receiving a capability program activation request initiated by the capability node, wherein the capability node extracts the capability tag from the certificate and initiates a program activation request to the ledger node under the same ledger organization as the capability node based on the capability tag; verifying the identity of the capability node, and if the capability node passes the identity verification, issuing a capability program to the capability node, wherein the capability node establishes a communication connection with the issued capability program and invokes the capability program in real time.

[0010] Further, the step of constructing a directed acyclic graph based on the label expression includes: extracting the execution steps involved in the label expression and the dependencies between each execution step; constructing an initial directed acyclic graph using the execution steps as topology nodes and the dependencies between each execution step as connecting lines between topology nodes; extracting the role fields involved in each execution step in the label expression; determining the capability tags based on the role fields, and adding the capability tags to the initial directed acyclic graph to obtain the directed acyclic graph.

[0011] Further, the step of sending the data to be processed to the corresponding capability nodes based on the topological order of the directed acyclic graph and obtaining the data processing results from the capability nodes includes: constructing a task request for the data to be processed based on the topological order of the directed acyclic graph, and sending the task request to the corresponding capability nodes under each of the ledger-owning organizations. Upon receiving the task request, each capability node under each ledger-owning organization calls its corresponding capability program to process the data to be processed, generates a result label for the processed data, returns the processing result to the capability node based on the result label, and the capability node endorses the processing result and generates a data processing result; and receiving the data processing results returned by the corresponding capability nodes under each of the ledger-owning organizations.

[0012] Further, the step of parsing the data processing request to obtain the tag expression for data processing includes: parsing the data processing request to obtain the data processing requirements, and obtaining the tag expression based on the data processing requirements; or, matching the data processing request with preset data processing requests, and if the data processing request successfully matches any preset data processing request, obtaining a predefined tag expression based on the successfully matched preset data processing request.

[0013] According to another aspect of the present invention, a blockchain-based data expansion processing apparatus is also provided, comprising: a receiving unit, configured to receive a data processing request, parse the data processing request, and obtain a tag expression for data processing; a construction unit, configured to construct a directed acyclic graph (DAG) based on the tag expression, and send the data to be processed to the corresponding capability nodes based on the topological order of the DAG, and obtain the data processing results of the capability nodes, wherein the capability nodes are used to call capability programs to expand the functionality of the blockchain, and the capability programs represent applications for expanding the functionality of the blockchain; an updating unit, configured to add the data processing results of each capability node to the corresponding topological node in the DAG, update the DAG, and obtain an updated DAG; and a generation unit, configured to compare the updated DAGs of multiple ledger-owning organizations, obtain a comparison result, and generate the updated DAGs of multiple ledger-owning organizations indicated by the comparison result. Figure 1 In cases where the data is consistent, the data expansion processing result is generated based on the updated directed acyclic graph of each ledger-owning organization.

[0014] Furthermore, the blockchain-based data expansion processing device further includes: a first upload module, used to upload capability program data to the ledger nodes of each ledger-owning organization, and to put the capability program data on the blockchain to obtain on-chain data; a first endorsement module, used to endorse the on-chain data based on each ledger-owning organization, to obtain the endorsement result of the on-chain data; and a first configuration module, used to record the capability program on the ledger and configure capability tags for the capability program when the endorsement result indicates that all ledger-owning organizations have endorsed it, wherein the capability tag of the capability program corresponds to the role field in the tag expression.

[0015] Furthermore, the blockchain-based data expansion processing device further includes: a first construction module, used by each of the ledger-owning organizations to construct capability nodes based on the capability program, and generate keys and certificates for the capability nodes; a first addition module, used to create a configuration transaction for adding the capability node based on the capability node, the key, and the certificate; a second endorsement module, used to send the configuration transaction to the ledger-owning nodes of each of the ledger-owning organizations for endorsement, and obtain a transaction endorsement result; and a first deployment module, used to send the endorsed configuration transaction to a consensus node when the transaction endorsement result indicates that the endorsement is successful, and deploy the capability node to the blockchain configuration block by uploading the configuration transaction to the blockchain through the consensus node.

[0016] Furthermore, the blockchain-based data expansion processing device further includes: a first receiving module, configured to receive a capability program activation request initiated by the capability node, wherein the capability node extracts a capability tag from the certificate and initiates a program activation request to a ledger node under the same ledger organization as the capability node based on the capability tag; and a first issuing module, configured to verify the identity of the capability node and, if the capability node passes the identity verification, issue a capability program to the capability node, wherein the capability node establishes a communication connection with the issued capability program and invokes the capability program in real time.

[0017] Further, the construction unit includes: a first extraction module, used to extract the execution steps involved in the label expression and the dependencies between the execution steps; a second construction module, used to construct an initial directed acyclic graph using the execution steps as topology nodes and the dependencies between the execution steps as connecting lines between the topology nodes; a second extraction module, used to extract the role fields involved in each execution step in the label expression; and a first addition module, used to determine the capability tags based on the role fields and add the capability tags to the initial directed acyclic graph to obtain the directed acyclic graph.

[0018] Furthermore, the construction unit further includes: a third construction module, configured to construct a task request for the data to be processed based on the topological order of the directed acyclic graph, and send the task request to the corresponding capability nodes under each of the ledger-owning organizations, wherein, after receiving the task request, each capability node under the ledger-owning organization calls the capability program corresponding to the capability node, processes the data to be processed through the capability program, generates a result label for the processed data, returns the processing result to the capability node based on the result label, and the capability node endorses the processing result and generates a data processing result; and a second receiving module, configured to receive the data processing result returned by the corresponding capability nodes under each of the ledger-owning organizations.

[0019] Furthermore, the receiving unit includes: a first parsing module, used to parse the data processing request, obtain data processing requirements, and obtain the tag expression based on the data processing requirements; and a first matching module, used to match the data processing request with preset data processing requests, and, if the data processing request is successfully matched with any preset data processing request, obtain a predefined tag expression based on the successfully matched preset data processing request.

[0020] According to another aspect of the present invention, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored computer program, wherein, when the computer program is executed, it controls the device where the computer-readable storage medium is located to execute any of the above-described blockchain-based data expansion processing methods.

[0021] According to another aspect of the present invention, an electronic device is also provided, including one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement any of the above-described blockchain-based data expansion processing methods.

[0022] In this application, blockchain data is extended through the following steps: receiving and parsing data processing requests to obtain data processing label expressions; constructing a directed acyclic graph (DAG) based on the label expressions; sending the data to be processed to the corresponding capability nodes according to the topological order of the DAG; obtaining the data processing results from the capability nodes, where capability nodes are used to call capability programs to extend the functionality of the blockchain (capability programs are applications for extending the functionality of the blockchain); and adding the data processing results from each capability node to the corresponding topological nodes in the DAG to update the DAG, resulting in an updated DAG. Finally, the updated DAGs of multiple ledger-owning organizations are compared to obtain comparison results. The updated DAGs of multiple ledger-owning organizations indicated by the comparison results are then used to further refine the data processing. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0023] In this application, capability programs are uploaded to the blockchain, and capability nodes are created to execute extended tasks in real time. This enhances the blockchain's functionality, enabling seamless integration of multiple extended functions, broadening the application scenarios of blockchain, and avoiding multi-system interactions. It also improves data processing and task execution efficiency. When parsing data processing requests, capability nodes are associated with a directed acyclic graph (DAG). The DAG intelligently schedules the priority and order of data processing, improving efficiency and accuracy. This addresses the issue of limited blockchain functionality in related technologies, where extending blockchain functionality through the linkage of multiple business systems results in low execution efficiency. Attached Figure Description

[0024] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:

[0025] Figure 1 This is a flowchart of an optional blockchain-based data expansion processing method according to an embodiment of the present invention;

[0026] Figure 2 This is a schematic diagram of an optional initial configuration of a blockchain ledger according to an embodiment of the present invention;

[0027] Figure 3 This is a schematic diagram of an optional blockchain ledger capability node configuration according to an embodiment of the present invention;

[0028] Figure 4 This is a schematic diagram of an optional blockchain-based data expansion processing device according to an embodiment of the present invention;

[0029] Figure 5 This is a hardware structure block diagram of an electronic device (or mobile device) that performs a blockchain-based data expansion processing method according to an embodiment of the present invention. Detailed Implementation

[0030] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0031] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0032] To facilitate understanding of the present invention by those skilled in the art, some terms or nouns involved in the various embodiments of the present invention are explained below:

[0033] A ledger node is a blockchain node responsible for recording blocks.

[0034] Consensus nodes are blockchain nodes responsible for consensus-building and block production.

[0035] A capability node is a blockchain node responsible for providing a specific extended capability and for being accountable for the outcome of that capability. This capability is provided by the capability node loading the capability program.

[0036] A capability program is a program recorded on the blockchain ledger after reaching a consensus within the organization to which the ledger belongs, thus possessing trustworthiness. A capability program provides a specific function, such as object storage, privacy computing, confidential computing, or AI computing; this capability is either provided by the program itself or acquired from external sources. Capability programs rely on capability nodes for loading and startup.

[0037] The configuration block is the block responsible for recording information about the structure of ledger nodes.

[0038] Object storage nodes, a type of capability node, are blockchain nodes responsible for storing large-granularity files.

[0039] Privacy computing nodes, a type of capability node, are blockchain nodes responsible for performing privacy-preserving computations.

[0040] It should be noted that the blockchain-based data expansion processing method and apparatus in this application can be used in the field of blockchain technology to expand the functionality of blockchain based on capability nodes, and can also be used in any field other than blockchain technology to expand the functionality of blockchain based on capability nodes. This application does not limit the application field of the blockchain-based data expansion processing method and apparatus.

[0041] It should be noted that the relevant information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, and displayed data) involved in this application are information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, storage, use, processing, transmission, provision, disclosure, and application of this data all comply with the relevant laws, regulations, and standards of the relevant regions, have taken necessary confidentiality measures, do not violate public order and good morals, and provide corresponding access points for users to choose to authorize or refuse. For example, this system has an interface with relevant users or organizations. Before obtaining relevant information, a request to obtain the information needs to be sent to the aforementioned user or organization through the interface, and the relevant information is obtained only after receiving consent from the aforementioned user or organization.

[0042] It should be noted that in this application, when collecting and analyzing customer information, users are provided with corresponding operation entry points to choose whether to agree to or reject the automated decision-making results; if the user chooses to reject, the process will proceed to the expert decision-making process.

[0043] The following embodiments of the present invention can be applied to various blockchain-based data expansion and processing systems / applications / devices. The present invention, through the definition, deployment, and scheduling schemes of capability nodes, treats technologies such as blockchain, computing, storage, and AI as scalable on-chain capability node resources. It also flexibly applies tag expressions to the processing of on-chain data. This scalability of capability nodes and the flexibility of tag expression application break through the limitation of blockchain only being able to store simple data, bringing unlimited possibilities to the data processing capabilities of blockchain and helping to quickly respond to changes in user needs.

[0044] The present invention will now be described in detail with reference to various embodiments.

[0045] Example 1

[0046] According to an embodiment of the present invention, an embodiment of a data expansion processing method based on blockchain is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0047] Figure 1 This is a flowchart of an optional blockchain-based data expansion processing method according to an embodiment of the present invention. The execution subject of this embodiment is a blockchain-based data expansion processing system, such as... Figure 1 As shown, the method includes the following steps:

[0048] Traditional blockchain design focuses on storing relatively simple and structured data, such as transaction records, digital asset transfer details, and contract terms. This is because the initial application of blockchain was primarily to provide a secure, decentralized means of payment, so its data model and storage mechanism were optimized for storing such transaction data. However, as blockchain technology continues to develop and its application scenarios expand, such as supply chain management, digital identity verification, privacy protection, and complex computing needs, traditional blockchains can no longer meet the growing and diverse needs of users. Therefore, expanding the functionality of blockchain has become an inevitable trend.

[0049] In this embodiment of the invention, by abstracting extended functions into capability nodes and providing a capability node management mechanism on the blockchain, the infinite scalability of blockchain capabilities is achieved. Simultaneously, by putting capability programs on the blockchain and providing endorsement guarantees for their use, the trustworthiness issue of capability nodes is fundamentally resolved. The developability and trustworthy on-chain recording of capability programs further ensure the scalability, reusability, and trustworthiness of capabilities, providing a solid technical foundation for the blockchain capability ecosystem. Furthermore, by tagging capability programs and using them as core identifiers for capability provision and use, combined with capability expressions, flexible arrangement and selection of extended functions are achieved, providing users with a highly customized on-chain capability experience. This design not only enables rapid data on-chain recording but also allows for agile responses to changing needs, fully meeting users' demands for efficient, flexible, and trustworthy blockchain capability services.

[0050] Furthermore, before receiving the data processing request, the process includes: uploading capability program data to the ledger nodes of each ledger-owning organization and putting the capability program data on the blockchain to obtain on-chain data; endorsing the on-chain data based on the endorsement of each ledger-owning organization to obtain the endorsement result of the on-chain data; and recording the capability program on the ledger and configuring capability tags for the capability program when the endorsement result indicates that all ledger-owning organizations have endorsed it. The capability tag of the capability program corresponds to the role field in the tag expression.

[0051] In this embodiment of the invention, the on-chaining of capability programs provides the blockchain system with the possibility of on-demand expansion of functionality. By adding new capability programs, the blockchain architecture can easily integrate new services and functions, such as privacy computing, AI services, and object storage, without requiring large-scale changes to existing infrastructure, enabling the blockchain to adapt to a wider range of business needs. By integrating the capabilities of multiple independent technologies into the blockchain, the complexity and cost of interactions between multiple systems are reduced, making data processing flows simpler and improving overall operational efficiency and user experience.

[0052] Specifically, at each ledger node belonging to an organization, the administrator or designated operator first uploads the capability program data to the local storage directory. This step aims to ensure that all participating ledger nodes possess the same version of the capability program, laying the foundation for subsequent consistency assurance. Once the data upload is complete, an on-chain request is initiated, writing the capability program data into the blockchain ledger, forming on-chain data. This step, through a consensus mechanism, not only ensures the reliability and consistency of the data but also formally incorporates the capability program into the blockchain's management system, providing a legitimate basis for its subsequent invocation and execution.

[0053] After receiving the data uploaded to the blockchain, the ledger nodes of each ledger-owning organization endorse it. In consortium blockchains and enterprise-level blockchain applications, the endorsement mechanism is primarily used to ensure the validity and legitimacy of transactions, and is a crucial step in the process from proposal to final confirmation. Endorsement involves each ledger node under its own organization verifying the integrity and consistency of the uploaded data, and signing the verified data. This signature is then attached to the data processing result as an endorsement. Thus, the endorsements from each ledger node form a set, reflecting the degree of consensus among different ledger nodes on the transaction, indicating the recognition of the data by the ledger nodes of each ledger-owning organization. The endorsement results reflect the consensus among organizations on the capability program data and are a key basis for whether to formally record the capability program on the ledger.

[0054] The data processing results from each ledger-owning organization on the blockchain are integrated to form an endorsement result, which is then sent to the consensus node. The consensus node decides whether to add the capability program to the blockchain based on the endorsement result and the consensus algorithm. Once all ledger-owning nodes of all organizations have successfully endorsed the on-chain data, it means the data has passed multi-organization consistency verification and reached the expected consensus standard. At this point, the consensus node records the capability program on the ledger, assigning it the identity of an on-chain asset. Simultaneously, a capability tag is configured for the capability program; this tag is a unique identifier for the capability program and corresponds to the role field in the tag expression. The existence of the capability tag allows the system to accurately identify and locate specific capability programs, providing a clear direction for capability invocation in subsequent data processing requests.

[0055] Furthermore, after recording the capability program on the ledger, the process also includes: each ledger-owning organization building capability nodes based on the capability program and generating keys and certificates for the capability nodes; creating configuration transactions for new capability nodes based on the capability nodes, keys, and certificates; sending the configuration transactions to the ledger nodes of each ledger-owning organization for endorsement, obtaining transaction endorsement results; and, if the transaction endorsement results indicate that the endorsement is successful, sending the endorsed configuration transactions to the consensus nodes, and having the consensus nodes put the configuration transactions on the blockchain to deploy the capability nodes into the blockchain configuration blocks.

[0056] After successfully recording the capability program on the ledger, the ledger-owning organization (such as org1.com, org2.com) needs to proceed to the next step: building capability nodes based on the on-chain capability programs. Activating these capability nodes enables the invocation of the capability programs. Specifically, first, capability nodes are built, and keys and certificates are generated for them. The keys are used to encrypt and decrypt data, ensuring data security during transmission; the certificates identify the node's identity and prove that the node has the authority to execute specific capability programs. The certificates contain role information to ensure the correspondence between capability nodes and capability programs.

[0057] Subsequently, a configuration transaction for the newly constructed capability node is created based on the newly constructed capability node. This transaction is used to add the new capability node to the configuration block of the ledger. After the configuration transaction is created, it is sent to the ledger nodes of all organizations to which the ledger belongs for endorsement processing. The endorsement process verifies the legality, consistency, and integrity of the configuration transaction, ensuring that all organizations can agree to the addition of the new capability node. The ledger nodes independently review and sign the transaction according to a predetermined endorsement strategy (e.g., ALL, meaning all nodes must endorse), generating a transaction endorsement result. If the transaction endorsement result shows that all ledger nodes have passed the endorsement, that is, the transaction has been recognized by all relevant parties, the endorsed configuration transaction is submitted to the consensus node. The consensus node uses the consensus algorithm to reach a consensus on the configuration transaction and produce a block, ultimately forming a new block, and putting the configuration transaction on the chain, thereby deploying the capability node into the blockchain configuration block. This step marks that the capability node has officially become part of the ledger system and can be scheduled by the system to perform specific tasks.

[0058] Furthermore, after deploying the capability node to the blockchain configuration block, the process also includes: receiving capability program activation requests initiated by the capability node, wherein the capability node extracts the capability tag from the certificate and initiates a program activation request to the ledger node under the same ledger organization as the capability node based on the capability tag; verifying the identity of the capability node, and if the capability node passes the identity verification, issuing the capability program to the capability node, wherein the capability node establishes a communication connection with the capability program through the issued capability program and calls the capability program in real time.

[0059] Specifically, after a capability node is deployed to the blockchain configuration block, a communication connection needs to be established between the capability node and the capability program to ensure successful invocation of the capability program by the capability node. The capability node initiates a capability program activation request. The core of this request is that the capability node, based on the capability tag defined in its certificate, sends a program activation request to the ledger node within the same organization as its ledger. The capability tag serves as the identity identifier for the capability program and is the basis for scheduling and identifying capability programs. Upon receiving the activation request, the ledger node immediately verifies the identity of the capability node. The verification process includes verifying the validity of the capability node's certificate, confirming whether it is indeed registered in the ledger configuration block as a node with the corresponding capability tag, and checking the correctness of the transaction signature. This step ensures that only legitimately deployed capability nodes can access and activate capability programs on the ledger, thereby enhancing the system's security and reliability. If the capability node passes the identity verification, the ledger node will issue a capability program matching the capability tag to that capability node. After receiving the capability program, the capability node establishes a communication connection with the capability program. As a result, capability nodes can invoke capability programs in real time to execute corresponding functions, such as data storage, privacy computing, deep analysis and computation, while ensuring close collaboration and consistency with the data processing flow on the ledger, thus realizing effective docking and secure activation of capability nodes and capability programs on the ledger.

[0060] Step S101: Receive a data processing request, parse the data processing request, and obtain the tag expression for data processing.

[0061] In step S101 above, the blockchain's smart contract or blockchain engine receives a real-time data processing request. It needs to parse the data processing request and determine the tag expression corresponding to the data processing request. The tag expression clarifies the capability nodes and services that need to be called before and after the data is uploaded to the blockchain, and specifies the order of the calls.

[0062] Optionally, the data processing request includes the data to be processed and a description of the data processing requirements.

[0063] Based on tag expressions, the system can formulate detailed processing plans and assign the correct capability nodes to undertake specific tasks, ensuring a smooth and efficient data processing flow.

[0064] Furthermore, the steps of parsing the data processing request and obtaining the tag expression for data processing include: parsing the data processing request to obtain the data processing requirements, and obtaining the tag expression based on the data processing requirements; or, matching the data processing request with preset data processing requests, and if the data processing request successfully matches any preset data processing request, obtaining the predefined tag expression based on the successfully matched preset data processing request.

[0065] Specifically, the tag expression can originate from data processing requirements or from pre-defined tag expressions. Upon receiving a data processing request, it is first matched against pre-defined data processing requests. For some pre-defined requests, the smart contract's internal processing functions contain pre-defined tag expressions, which can be directly retrieved. For unmatched requests, the user's data processing requirements are parsed, and the tag expression is retrieved accordingly. For example, if the data processing requirement is to store a large file and perform hash calculations, the tag expression might be set to "oss-hash," explicitly indicating two key steps in the data processing flow: object storage (OSS) and hash operation (hash). This expression serves as an instruction for subsequent scheduling nodes, ensuring a precise match between the data processing flow and the user's requirements.

[0066] Step S102: Construct a directed acyclic graph based on the label expression, and send the data to be processed to the corresponding capability node based on the topological order of the directed acyclic graph to obtain the data processing results of the capability node.

[0067] Optionally, the aforementioned capability nodes are used to invoke capability programs to extend the functionality of the blockchain, where a capability program is an application that extends the functionality of the blockchain.

[0068] In step S102 above, a directed acyclic graph (DAG) can be constructed based on the parsed label expression. The DAG contains the capability nodes required for data processing, the capability programs to be invoked, and the invocation order of each capability program. A DAG can contain parallel and serial structures. Each capability label represents a topology node in the DAG, and the connections between topology nodes indicate the processing order. For example, the expression "oss-hash" will be converted into a DAG containing an object storage node (oss) and a hash calculation node (hash), where the object storage node is invoked before the hash calculation node.

[0069] After constructing the directed acyclic graph (DAG), the ledger nodes receiving data processing requests will sequentially send the data to be processed to the corresponding capability nodes according to the topological order indicated by the DAG. Each capability node will invoke its local capability program to perform specific processing on the data. Capability programs are pre-built applications used to extend the functionality of the blockchain and can perform diverse tasks such as object storage, privacy computing, and AI analysis. If the data processing involves multiple ledger-owning organizations endorsing the results, it is necessary to collect the data processing results from the capability nodes under each ledger-owning organization for subsequent endorsement verification, ensuring the accuracy, immutability, and consistency of the data processing results.

[0070] In this embodiment of the invention, the topological structure of the directed acyclic graph ensures the sequential execution of the processing flow, avoiding chaotic or invalid operations in data processing and improving the accuracy and reliability of data processing. Simultaneously, based on the dynamic invocation mechanism of the directed acyclic graph, the system can flexibly invoke and combine different capability nodes according to data processing needs, providing customized and modular services for data processing.

[0071] Furthermore, the steps for constructing a directed acyclic graph based on the label expression include: extracting the execution steps involved in the label expression and the dependencies between each execution step; constructing an initial directed acyclic graph using the execution steps as topology nodes and the dependencies between each execution step as connecting lines between topology nodes; extracting the role fields involved in each execution step in the label expression; determining the capability labels based on the role fields and adding the capability labels to the initial directed acyclic graph to obtain the directed acyclic graph.

[0072] Specifically, when constructing a directed acyclic graph, the execution order of each execution step and the dependencies between steps are first extracted from the label expression. Each execution step is then used as a topology node, and connections between the topology nodes are established based on the dependencies between the execution steps. Finally, the corresponding capability labels are determined based on the role field in the label expression. The capability labels indicate the capability nodes and processes involved in the execution step. The capability labels are added to the directed acyclic graph to obtain the final directed acyclic graph.

[0073] Furthermore, the steps of sending the data to be processed to the corresponding capability nodes based on the topological order of the directed acyclic graph and obtaining the data processing results from the capability nodes include: constructing a task request for the data to be processed based on the topological order of the directed acyclic graph, and sending the task request to the corresponding capability nodes under each ledger-owning organization; wherein, after receiving the task request, each capability node under each ledger-owning organization calls the capability program corresponding to the capability node, processes the data to be processed through the capability program, generates result labels for the processed data, returns the processing results to the capability nodes based on the result labels, and the capability nodes endorse the processing results and generate data processing results; and receiving the data processing results returned by the corresponding capability nodes under each ledger-owning organization.

[0074] Specifically, after identifying the capability nodes corresponding to each execution step, the data to be processed is packaged, a task request is constructed, and the task request is sent to the corresponding capability nodes under each ledger-owning organization. Upon receiving the task request, the capability node invokes the capability program matching its own capability tag to process the data. The capability program contains the code logic for performing a specific task and can provide specific capabilities such as object storage, privacy computing, or AI analysis. After processing, the capability node generates a result tag for the processed data to identify the association between the processing result and the capability node. The processing result, along with the result tag, is returned to the capability node, which endorses the result. The endorsement process involves signing the result using the capability node's private key to ensure the authenticity and integrity of the result. This signature, as part of the data processing result, is returned to the original task request initiation point.

[0075] Step S103: Add the data processing results of each capability node to the corresponding topology node in the directed acyclic graph, update the directed acyclic graph, and obtain the updated directed acyclic graph.

[0076] In step S103 above, the data processing results returned by each capability node are added to the corresponding topology nodes in the directed acyclic graph (DAG), recording the actual output of each processing step. This facilitates a visual display of the processing results and lays the foundation for subsequent verification, querying, and analysis. As processing results are gradually added, the DAG is updated in real time to reflect the latest processing status. The updated DAG not only includes the original data flow and processing steps but also adds the actual processing results, forming a richer and more detailed data processing flowchart.

[0077] Step S104: Compare the updated directed acyclic graphs of multiple ledger ownership organizations to obtain the comparison results. The comparison results indicate the updated directed acyclic graphs of multiple ledger ownership organizations. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0078] In a consortium blockchain scenario, a ledger is jointly maintained by multiple organizations. During data processing, multiple organizations need to endorse the results to ensure consistency and accuracy. After all capable nodes have completed data processing and returned the endorsed results, the directed acyclic graphs (DAGs) updated by the multiple ledger-owning organizations need to be compared. This process aims to verify whether the results generated by different ledger-owning organizations are consistent when processing the same data. The comparison involves comparing the data processing results of the corresponding topological nodes in each DAG to ensure that the processing flow and output results of all participating institutions are identical. The comparison results indicate the updated DAGs by the multiple ledger-owning organizations. Figure 1 In cases where consistency is achieved, the final data extension processing result is generated based on these consistent directed acyclic graphs to indicate whether the final data processing task has been completed.

[0079] Through the above steps, data processing requests are received and parsed to obtain data processing label expressions. Then, a directed acyclic graph (DAG) is constructed based on these label expressions. The data to be processed is sent to the corresponding capability nodes according to the topological order of the DAG, and the data processing results from these capability nodes are obtained. Capability nodes are used to call capability programs to extend the functionality of the blockchain. A capability program represents an application that extends the functionality of the blockchain. The data processing results from each capability node are added to the corresponding topological nodes in the DAG, updating the DAG and obtaining the updated DAG. Finally, the updated DAGs of multiple ledger-owning organizations are compared to obtain the comparison results. The updated DAGs of multiple ledger-owning organizations indicated by the comparison results are then used to determine the updated DAGs. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0080] In this embodiment, the capability program is uploaded to the blockchain, and capability nodes are created to call the capability program in real time to execute extended tasks. This enhances the blockchain functionality, enabling seamless integration of multiple extended functions, broadening the application scenarios of blockchain, and avoiding multi-system interaction. It also improves data processing and task execution efficiency. When parsing data processing requests, capability nodes are associated with a directed acyclic graph (DAG). The DAG intelligently schedules the priority and order of data processing, improving efficiency and accuracy. This addresses the problem of limited blockchain functionality in related technologies, where extending blockchain functionality by linking multiple business systems results in low execution efficiency.

[0081] The following describes in detail another optional implementation method.

[0082] Figure 2 This is a schematic diagram illustrating an optional initial configuration of a blockchain ledger according to an embodiment of the present invention. In traditional blockchains, the ledger only includes two basic types: consensus nodes and accounting nodes. A ledger established on this initial basis can only handle routine data uploading operations. For example... Figure 2As shown, ledger channel1 is jointly maintained by three ledger-owning organizations: org1.com, org2.com, and org3.com. Each ledger-owning organization initially contains accounting nodes (e.g., org1.com's accounting nodes an1.org1.com, an2.org1.com, and an1.org1.com; org2.com's accounting nodes an1.org2.com, an2.org2.com, and an1.org2.com; and org3.com's accounting nodes an1.org3.com, an2.org3.com, and an1.org3.com). The present invention adds a new capability node type to ledger channel 1 based on the initial state, such as object storage nodes (1.org3.com) and consensus nodes (such as consensus nodes cn1.org1.com, cn2.org1.com, cn1.org1.com for org1.com; ledger nodes cn1.org2.com, cn2.org2.com, cn1.org2.com for org2.com; and ledger nodes cn1.org3.com, cn2.org3.com, cn1.org3.com for org3.com). Figure 2 The diagram illustrates the ledger nodes sn1.org1.com, sn2.org1.com, and sn1.org1.com for org1.com; sn1.org2.com, sn2.org2.com, and sn1.org2.com for org2.com; and sn1.org3.com, sn1.org3.com, sn2.org3.com, and sn1.org3.com for org3.com. It also shows the privacy computing nodes. Figure 2 The diagram illustrates the ledger nodes pn1.org1.com, pn2.org1.com, and pn1.org1.com for org1.com; pn1.org2.com, pn2.org2.com, and pn1.org2.com for org2.com; and pn1.org3.com, pn2.org3.com, and pn1.org3.com for org3.com. In addition, there are various other types of capability extension nodes, such as AI computing nodes.

[0083] At the same time, strict label definitions are defined for the established capability nodes. The label definitions indicate the function of the capability nodes, such as: role=accounting, role=consensus, role=oss, role=pc, role=ai.

[0084] A Capability Application is written to the ledger for later use after being endorsed by the organization to which the ledger belongs, based on consensus. The key of the Capability Application (corresponding to the capability tag mentioned above) corresponds to the role value of the capability node (corresponding to the role field mentioned above). Capability nodes hosted in the blockchain configuration block can retrieve Capability Applications from the ledger through the capability tag.

[0085] A capability node is a container that loads and starts the corresponding capability program from the ledger based on the role information in the node certificate. While providing this capability to the outside world, it also endorses the calculation results of this capability.

[0086] Figure 3 This is a schematic diagram illustrating an optional blockchain ledger capability node configuration according to an embodiment of the present invention, such as... Figure 3 As shown, after the ledger-owning organization orchestrates and configures the capability nodes in the ledger configuration block and achieves consensus on the blockchain, each organization starts its corresponding capability node container. After starting, the capability node determines its capability tag (Capability Node) based on the role information in its certificate information (Key & Cert). It then pulls the capability application from the ledger and starts it to a ready state. When a capability node is accessed, it calls its application to obtain the processing result, and the capability node endorses the result. This result, along with the endorsement information, is used as the final response receipt. This response receipt corresponds to a specific capability usage stage on the directed acyclic graph (DAG), and is ultimately recorded on the ledger through the DAG structure.

[0087] Processing ledger data may require different capabilities. For example, ordinary storage only requires ledger node capabilities, object data storage requires both object storage capability nodes and ledger node capabilities, and privacy data requires both privacy capability nodes and ledger node capabilities. The capability requirements for data processing are described using capability expressions. Capabilities can be those provided by capability nodes or built-in functions, such as hash labels, which correspond to hash operation functions that provide the hash results for the data. Capability expressions can be used to construct directed acyclic graphs (DAGs) to indicate the flow and sequence of data processing.

[0088] When processing data processing requests sent by the user, the smart contract, upon receiving the request, reads the tag expression from the data or a pre-defined tag expression within the function. It then hands the data along with the tag expression to the engine for processing. The engine parses the Directed Acyclic Graph (DAG) structure contained in the tags and processes the data layer by layer according to the topological order of the DAG. For a specific DAG step, the system locates the capability node through its tag expression, sends a data request to it to obtain the processing result, and appends the execution result of each step to the DAG structure. The system then sends this DAG structure as the final processing result back to the smart contract. The smart contract provides a key value for this processing result and records it in the blockchain ledger. This ensures the traceability and immutability of the entire data processing process.

[0089] When multiple ledger-owning organizations need to jointly endorse the result, the results of each stage of the DAG are compared. If the results of each stage are consistent, the signatures of all parties are added to that stage. This forms the final consistent DAG result. If the processing result of any stage in the DAG is inconsistent, the result is considered inconsistent.

[0090] The embodiments of the present invention are illustrated below by way of examples.

[0091] Assume there are currently two ledger-owning organizations, org1.com and org2.com, and the intention is to establish a common ledger, channel1. The ledger includes the accounting node an1.org1.com and the consensus node cn1.org1.com of org1, and the accounting node an1.org2.com and the consensus node cn1.org2.com of org2.

[0092] The administrator user for org1 is adminA;

[0093] The administrator user for org2 is adminB.

[0094] The regular user of org1 is userA;

[0095] The regular user of org2 is userB.

[0096] The system contract responsible for installing or acquiring capability programs is called capacity, and the key values ​​of the capability programs stored in it are under the independent namespace capacity.

[0097] There is a capability program called oss, which provides object storage capabilities, and its capability label is oss.

[0098] The system has a built-in label function called hash, which provides the result of hash256 and its label is hash.

[0099] There is currently a user contract called storage, which is responsible for storing user storage requests. The write function is write, the read function is read, and its endorsement strategy is ALL (all ledger-owning organizations participate in the endorsement).

[0100] The installation of the capability program includes the following steps:

[0101] Step 1: adminA uploads the OSS program to the installation directory capacities on all accounting nodes of org1.

[0102] Step 2: adminB uploads the OSS program to the installation directory capacities on all accounting nodes of org2.

[0103] Step 3: adminA calls the system contract capability through the an1.org1.com node to put the capability program on the blockchain. The data is the OSS program, the tag is OSS, and the endorsement rule is ALL.

[0104] Step four: When the ledger node an1.org1.com of org1 receives the request, it checks whether the OSS program exists locally, compares the data consistency, and endorses the data uploaded to the chain.

[0105] Step 5: The org2 ledger node an1.org2.com receives the request, checks whether the OSS program exists locally, compares the data consistency, and endorses the data uploaded to the chain.

[0106] Step 6: If either org1 or org2 fails to endorse the application, the installation of the capability program will fail.

[0107] Step seven: org1 and org2 have both completed their endorsements, and the results are consistent.

[0108] Step eight: The data is submitted to the consensus node to complete the block production.

[0109] Step 9: Record the OSS program in the ledger with the key "oss", which is located in the capacity namespace, and the value "oss program".

[0110] The configuration steps for capability nodes are as follows:

[0111] Step 1: org1 calls its Certificate Authority (CA) to generate a key and certificate for the oss1.org1.com node, with the identity role in the certificate being oss.

[0112] Step 2: org2 calls its CA to generate a key and certificate for the oss1.org2.com node, with the identity role in the certificate being oss.

[0113] Step 3: adminA of org1 initiates a configuration change transaction request for ledger channel1, adding oss1.org1.com information for org1 and oss1.org2.com information for org2.

[0114] Step four, the org1 node and the an1.org1.com node endorse this configuration change transaction.

[0115] Step 5: The org2 node an1.org2.com endorses this configuration change transaction.

[0116] Step six: Send the transaction, endorsed by both parties, to the consensus node.

[0117] Step 7: Consensus nodes cn1.org1.com and cn1.org2.com produce a consensus block, which is a configuration block.

[0118] Step 8: The accounting nodes an1.org1.com and cn1.org2.com are synchronized to the block to complete the configuration change.

[0119] Activating a capability node involves the following steps:

[0120] Step 1: After the oss1.org1.com capability node carries the key and certificate and starts the genesis block, it extracts the role information oss from the certificate and initiates a transaction request to the capability smart contract of any ledger node in the same organization, such as an1.org1.com, which is launched by the oss program.

[0121] Step two: When the accounting node an1.org1.com receives the request, the contract uses the node information in the configuration block to determine that the sender of the request exists in the list and verifies the validity of its certificate and the validity of the transaction signature.

[0122] Step 3: After successful verification, send the OSS program to it.

[0123] Step four: The capability node oss1.org1.com receives the OSS program and initiates communication with it (e.g., using a Unix domain socket).

[0124] Step 5: After the oss1.org2.com capability node starts with the key certificate and genesis block, it extracts the role information oss from the certificate and initiates a transaction request to the capability smart contract of any ledger node in the same organization, such as an1.org2.com, to be launched by the oss program.

[0125] Step six: When the accounting node an1.org2.com receives the request, the contract uses the node information in the configuration block to determine that the sender of the request exists in the list and verifies the validity of its certificate and the validity of its transaction signature.

[0126] Step 7: After successful verification, send the OSS program to it.

[0127] Step 8: The capability node oss1.org2.com receives the OSS program and initiates communication with it (e.g., using a Unix domain socket).

[0128] When processing a data write request, the following exemplary execution steps are included:

[0129] Step 1: User A initiates a write transaction request to the smart contract storage via an1.org1.com. The data is a piece of object data and the labels are oss-hash.

[0130] Step two, an1.org1.com receives this transaction request, checks that the contract endorsement rule is ALL, and sends an endorsement request to an1.org1.com and an1.org2.com.

[0131] Step 3: When an1.org1.com receives the request, it parses the request labels expression oss-hash, extracts the label oss, selects the capability node oss1.org1.com corresponding to the oss under the same organization from the configuration block, and sends the data to the oss1.org1.com node.

[0132] Step four: The oss1.org1.com node receives the request and invokes the OSS capability program.

[0133] Step 5: The OSS program stores the data and returns the unique extraction key corresponding to the file: k1.

[0134] Step six, the oss1.org1.com node endorses this result and sends a confirmation of the result.

[0135] Step 7: an1.org1.com receives the receipt and records the result in the OSS link of the DAG structure.

[0136] Step 8: Extract the tag hash from an1.org1.com, call the hash function to perform hash operation on the data and endorse it, and record the result in the hash link of the DAG structure.

[0137] Step 9: The smart contract sets the storage key for this DAG result to k1.

[0138] Step 10: an1.org2.com receives the request, parses the request labels expression oss-hash, extracts the label oss, selects the capability node oss1.org2.com corresponding to the oss under the same organization from the configuration block, and sends the data to the oss1.org2.com node.

[0139] Step 11: The oss1.org2.com node receives the request and invokes the OSS capability program.

[0140] Step 12: The OSS capability program stores the data and returns the unique extraction key corresponding to the file: k1.

[0141] Step thirteen: The oss1.org2.com node endorses this result and sends a confirmation of the result.

[0142] Step fourteen: an1.org2.com receives the receipt and records the result in the OSS link of the DAG structure.

[0143] Step 15: an1.org2.com extracts the tag hash, calls the hash function to perform hash operation on the data and endorse it, and records the result in the hash link of the DAG structure.

[0144] Step sixteen: The smart contract sets the key for storing this DAG result to k1.

[0145] Step 17: an1.org1.com collects the endorsement results from an1.org1.com and an1.org2.com.

[0146] Step 18: Compare the results of each step according to the DAG. If the results are consistent, then attach the endorsement results of both parties.

[0147] Step 19: Endorsement is successful when the entire DAG result is consistent and the DAG's stored key value is consistent.

[0148] Step 20: an1.org1.com sends the endorsed transaction proposal to any consensus node, such as cn1.org1.com.

[0149] Step 21: After cn1.org1.com reaches a consensus on the transactions with all other consensus nodes, it completes the transaction sorting and block generation process and broadcasts the results to all accounting nodes.

[0150] Step 22: Both an1.org1.com and an1.org2.com validate the results and then record them in the ledger.

[0151] Step 23: The smart contract writes the execution result k1 back to userA.

[0152] The following are exemplary execution steps when processing blockchain data extraction operations:

[0153] Step 1: UserA sends a read request to the storage smart contract of an1.org1.com with parameter k1.

[0154] Step two, an1.org1.com verifies the validity of the transaction signature.

[0155] Step 3: an1.org1.com submits the request to the smart contract's read function.

[0156] Step 4: The smart contract extracts the DAG result corresponding to k1 from the ledger.

[0157] Step 5: The smart contract searches for the OSS (Option Strategist) step in the DAG (Directed Acyclic Graph) results.

[0158] Step 6: The smart contract extracts the result value k1 from the OSS stage of the DAG.

[0159] Step 7: The smart contract finds any OSS node from the blockchain configuration block, such as oss1.org1.com.

[0160] Step 8: The smart contract sends a request to oss1.org1.com to extract k1.

[0161] Step nine: The oss1.org1.com node extracts the object data, signs it, and sends a receipt.

[0162] Step 10: The smart contract receives the object data and calculates its hash value.

[0163] Step 11: The smart contract extracts the hash value from the hash process of the DAG.

[0164] Step 12: The smart contract compares the hash values ​​from the previous two steps to see if they match. If they do not match, it sends an error message to the user.

[0165] Step 13: If they match, write the object data back to the user.

[0166] Step fourteen, userA obtains object data.

[0167] In this embodiment of the invention, by defining, deploying, and scheduling capability nodes, technologies such as blockchain, computing, storage, and AI are treated as scalable on-chain capability node resources. Furthermore, tag expressions are flexibly applied to the processing of on-chain data. This scalability of capability nodes and the flexibility of tag expressions break through the limitation of blockchain only being able to store simple data, bringing unlimited possibilities to the data processing capabilities of blockchain and facilitating rapid response to changes in user needs.

[0168] The following is a detailed description with reference to another embodiment.

[0169] Example 2

[0170] The data expansion processing device based on blockchain provided in this embodiment includes multiple implementation units, each of which corresponds to a specific implementation step in the above embodiment one. The specific implementation method and beneficial effects can be referred to the foregoing method embodiment, and will not be repeated here.

[0171] Figure 4 This is a schematic diagram of an optional blockchain-based data expansion processing device according to an embodiment of the present invention, such as... Figure 4 As shown, the blockchain-based data expansion processing device may include: a receiving unit 41, a building unit 42, an updating unit 43, and a generating unit 44, wherein,

[0172] The receiving unit 41 is used to receive data processing requests, parse the data processing requests, and obtain the tag expression for data processing.

[0173] Construction unit 42 is used to construct a directed acyclic graph based on label expressions, and send the data to be processed to the corresponding capability node based on the topological order of the directed acyclic graph, and obtain the data processing results of the capability node. The capability node is used to call the capability program to extend the function of the blockchain. The capability program is represented as the application program for extending the function of the blockchain.

[0174] Update unit 43 is used to add the data processing results of each capability node to the corresponding topology node in the directed acyclic graph, update the directed acyclic graph, and obtain the updated directed acyclic graph.

[0175] Generation unit 44 is used to compare the updated directed acyclic graphs of multiple ledger ownership organizations to obtain comparison results, and to identify the updated directed acyclic graphs of multiple ledger ownership organizations indicated by the comparison results. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0176] The aforementioned blockchain-based data extension processing device receives data processing requests through receiving unit 41, parses the requests, and obtains the tag expressions for data processing. Constructing unit 42 builds a directed acyclic graph (DAG) based on the tag expressions and sends the data to be processed to the corresponding capability nodes according to the topological order of the DAG, obtaining the data processing results from the capability nodes. The capability nodes are used to call capability programs to extend the functionality of the blockchain; the capability programs represent the applications used to extend the functionality of the blockchain. Updating unit 43 adds the data processing results from each capability node to the corresponding topological nodes in the DAG, updating the DAG to obtain an updated DAG. Generating unit 44 compares the updated DAGs of multiple ledger-owning organizations to obtain comparison results. The comparison results indicate the updated DAGs of multiple ledger-owning organizations. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0177] In this embodiment, the capability program is uploaded to the blockchain, and capability nodes are created to call the capability program in real time to execute extended tasks. This enhances the blockchain functionality, enabling seamless integration of multiple extended functions, broadening the application scenarios of blockchain, and avoiding multi-system interaction. It also improves data processing and task execution efficiency. When parsing data processing requests, capability nodes are associated with a directed acyclic graph (DAG). The DAG intelligently schedules the priority and order of data processing, improving efficiency and accuracy. This addresses the problem of limited blockchain functionality in related technologies, where extending blockchain functionality by linking multiple business systems results in low execution efficiency.

[0178] Furthermore, the blockchain-based data expansion processing device also includes: a first upload module, used to upload capability program data to the ledger nodes of each ledger-owning organization and to put the capability program data on the blockchain to obtain on-chain data; a first endorsement module, used to endorse the on-chain data based on each ledger-owning organization to obtain the endorsement result of the on-chain data; and a first configuration module, used to record the capability program on the ledger and configure capability tags for the capability program when the endorsement result indicates that all ledger-owning organizations have endorsed it, wherein the capability tag of the capability program corresponds to the role field in the tag expression.

[0179] Furthermore, the blockchain-based data expansion processing device also includes: a first construction module, used by each ledger-owning organization to build capability nodes based on capability programs and generate keys and certificates for the capability nodes; a first addition module, used to create configuration transactions for adding new capability nodes based on capability nodes, keys, and certificates; a second endorsement module, used to send the configuration transactions to the ledger nodes of each ledger-owning organization for endorsement, and obtain transaction endorsement results; and a first deployment module, used to send the endorsed configuration transactions to the consensus node when the transaction endorsement results indicate that the endorsement is successful, and to deploy the capability nodes to the blockchain configuration blocks by uploading the configuration transactions to the blockchain through the consensus node.

[0180] Furthermore, the blockchain-based data expansion processing device also includes: a first receiving module, used to receive capability program activation requests initiated by capability nodes, wherein the capability node extracts the capability tag from the certificate and initiates a program activation request to the ledger nodes under the same ledger organization as the capability node based on the capability tag; and a first issuing module, used to verify the identity of the capability node, and issue capability programs to the capability node if the capability node passes the identity verification, wherein the capability node establishes a communication connection with the capability program through the issued capability program and calls the capability program in real time.

[0181] Furthermore, the construction unit includes: a first extraction module, used to extract the execution steps involved in the label expression and the dependencies between each execution step; a second construction module, used to construct an initial directed acyclic graph using the execution steps as topology nodes and the dependencies between each execution step as connecting lines between topology nodes; a second extraction module, used to extract the role fields involved in each execution step in the label expression; and a first addition module, used to determine the capability tags based on the role fields and add the capability tags to the initial directed acyclic graph to obtain the directed acyclic graph.

[0182] Furthermore, the construction unit also includes: a third construction module, used to construct task requests for the data to be processed based on the topological order of the directed acyclic graph, and send the task requests to the corresponding capability nodes under each ledger-owning organization. Upon receiving the task request, each capability node under the ledger-owning organization calls the corresponding capability program, processes the data to be processed through the capability program, generates result labels for the processed data, returns the processing results to the capability nodes based on the result labels, and the capability nodes endorse the processing results and generate data processing results; and a second receiving module, used to receive the data processing results returned by the corresponding capability nodes under each ledger-owning organization.

[0183] Furthermore, the receiving unit includes: a first parsing module, used to parse the data processing request, obtain the data processing requirements, and obtain a tag expression based on the data processing requirements; and a first matching module, used to match the data processing request with a preset data processing request, and, if the data processing request is successfully matched with any preset data processing request, obtain a predefined tag expression based on the successfully matched preset data processing request.

[0184] The aforementioned blockchain-based data expansion processing device may also include a processor and a memory. The aforementioned receiving unit 41, building unit 42, updating unit 43, generating unit 44, etc., are all stored in the memory as program units, and the processor executes the aforementioned program units stored in the memory to realize the corresponding functions.

[0185] The aforementioned processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured, and the functionality of the blockchain can be extended by adjusting kernel parameters.

[0186] The aforementioned memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0187] According to another aspect of the present invention, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored computer program, wherein, when the computer program is running, it controls the device where the computer-readable storage medium is located to execute any of the above-described blockchain-based data expansion processing methods.

[0188] According to another aspect of the present invention, an electronic device is also provided, including one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement any of the above-described blockchain-based data expansion processing methods.

[0189] According to another aspect of the present invention, a computer program product is also provided, the computer program product including a computer program, wherein the computer program, when executed by a processor, implements any of the above-described blockchain-based data expansion processing methods.

[0190] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program with the following method steps: receiving a data processing request and parsing the data processing request to obtain a label expression for data processing; constructing a directed acyclic graph (DAG) based on the label expression, and sending the data to be processed to the corresponding capability nodes based on the topological order of the DAG, obtaining the data processing results from the capability nodes, wherein the capability nodes are used to call capability programs to extend the functionality of the blockchain, and the capability programs represent applications for extending the functionality of the blockchain; adding the data processing results of each capability node to the corresponding topological nodes in the DAG, updating the DAG, and obtaining an updated DAG; comparing the updated DAGs of multiple ledger-owning organizations, obtaining a comparison result, and specifying the updated DAGs of multiple ledger-owning organizations indicated by the comparison result. Figure 1 In cases where the data is consistent, the data extension processing results are generated based on the updated directed acyclic graph of each ledger's ownership organization.

[0191] This application also provides a computer program product, which, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: uploading capability program data to the ledger nodes of each ledger-owning organization and putting the capability program data on the blockchain to obtain on-chain data; endorsing the on-chain data based on the endorsement of each ledger-owning organization to obtain the endorsement result of the on-chain data; and recording the capability program on the ledger when the endorsement result indicates that all ledger-owning organizations have endorsed it, and configuring capability tags for the capability program, wherein the capability tag of the capability program corresponds to the role field in the tag expression.

[0192] This application also provides a computer program product, which, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: each ledger-owning organization constructs capability nodes based on a capability program and generates keys and certificates for the capability nodes; a configuration transaction for adding a new capability node is created based on the capability node, key, and certificate; the configuration transaction is sent to the ledger nodes of each ledger-owning organization for endorsement, and a transaction endorsement result is obtained; if the transaction endorsement result indicates that the endorsement is passed, the endorsed configuration transaction is sent to a consensus node, and the consensus node puts the configuration transaction on the blockchain, deploying the capability node to the blockchain configuration block.

[0193] This application also provides a computer program product, which, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: receiving a capability program activation request initiated by a capability node, wherein the capability node extracts the capability tag from the certificate and initiates a program activation request to the accounting node under the same ledger organization as the capability node based on the capability tag; verifying the identity of the capability node, and if the capability node passes the identity verification, issuing a capability program to the capability node, wherein the capability node establishes a communication connection with the capability program through the issued capability program and invokes the capability program in real time.

[0194] This application also provides a computer program product that, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: extracting the execution steps involved in the label expression and the dependencies between each execution step; constructing an initial directed acyclic graph using the execution steps as topology nodes and the dependencies between each execution step as connection lines between topology nodes; extracting the role fields involved in each execution step in the label expression; determining capability labels based on the role fields and adding the capability labels to the initial directed acyclic graph to obtain the directed acyclic graph.

[0195] This application also provides a computer program product, which, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: constructing a task request for the data to be processed based on the topological order of a directed acyclic graph, and sending the task request to the corresponding capability nodes under each ledger-owning organization; wherein, after receiving the task request, each capability node under the ledger-owning organization calls the capability program corresponding to the capability node, processes the data to be processed through the capability program, generates result labels for the processed data, returns the processing result to the capability node based on the result labels, the capability node endorses the processing result, and generates a data processing result; and receives the data processing result returned by the corresponding capability nodes under each ledger-owning organization.

[0196] This application also provides a computer program product, which, when executed on a data processing device, is also suitable for executing an initialization program with the following method steps: parsing a data processing request, obtaining data processing requirements, and obtaining a tag expression based on the data processing requirements; or, matching the data processing request with a preset data processing request, and if the data processing request successfully matches any preset data processing request, obtaining a predefined tag expression based on the successfully matched preset data processing request.

[0197] Figure 5 This is a hardware structure block diagram of an electronic device (or mobile device) that performs a blockchain-based data expansion processing method according to an embodiment of the present invention. Figure 5 As shown, an electronic device may include one or more processors ( Figure 5The processor, denoted by 502a, 502b, ..., 502n, can be, but is not limited to, a processing device such as a microprocessor (MCU) or a programmable logic device (FPGA), and a memory 505 for storing data. In addition, it may include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports in the I / O interface), a network interface, a keyboard, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 5 The structure shown is for illustrative purposes only and does not limit the structure of the electronic device described above. For example, the electronic device may also include components that are more... Figure 5 The more or fewer components shown, or having the same Figure 5 The different configurations shown.

[0198] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0199] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0200] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.

[0201] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0202] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0203] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0204] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A data expansion processing method based on blockchain, characterized in that, include: Receive a data processing request, parse the data processing request, and obtain the tag expression for data processing; A directed acyclic graph is constructed based on the label expression, and the data to be processed is sent to the corresponding capability node based on the topological order of the directed acyclic graph to obtain the data processing results of the capability node. The capability node is used to call the capability program to extend the function of the blockchain, and the capability program is represented as the application program for extending the function of the blockchain. The data processing results of each capability node are added to the corresponding topology node in the directed acyclic graph to update the directed acyclic graph, resulting in the updated directed acyclic graph. The directed acyclic graphs updated by multiple ledger-owning organizations are compared to obtain the comparison results. If the multiple directed acyclic graphs updated by multiple ledger-owning organizations indicated by the comparison results are consistent, data expansion processing results are generated based on the directed acyclic graphs updated by each ledger-owning organization. Before receiving the data processing request, the process further includes: uploading capability program data to the ledger nodes of each ledger-owning organization and putting the capability program data on the blockchain to obtain on-chain data; endorsing the on-chain data based on the endorsement of each ledger-owning organization to obtain the endorsement result of the on-chain data; and, if the endorsement result indicates that all ledger-owning organizations have endorsed the data, recording the capability program on the ledger and configuring capability tags for the capability program, wherein the capability tags of the capability program correspond to the role field in the tag expression.

2. The method according to claim 1, characterized in that, After the capability program is recorded in the ledger, the following is also included: Each of the ledger-owning organizations constructs capability nodes based on the capability program and generates keys and certificates for the capability nodes; Create a configuration transaction for adding the new capability node based on the capability node, the key, and the certificate; The configuration transaction is sent to the accounting nodes of each of the ledger-owning organizations for endorsement, and the transaction endorsement result is obtained. If the endorsement result indicates that the endorsement is successful, the endorsed configuration transaction is sent to the consensus node, the consensus node puts the configuration transaction on the blockchain, and the capability node is deployed to the blockchain configuration block.

3. The method according to claim 2, characterized in that, After deploying the capability node to the blockchain configuration block, the following is also included: The capability node receives a capability program activation request initiated by the capability node, wherein the capability node extracts the capability tag from the certificate and initiates a program activation request to the accounting node under the same ledger organization as the capability node based on the capability tag. The capability node undergoes identity verification. If the capability node passes the identity verification, a capability program is issued to the capability node. The capability node establishes a communication connection with the issued capability program and invokes the capability program in real time.

4. The method according to claim 1, characterized in that, The steps for constructing a directed acyclic graph based on the label expression include: Extract the execution steps involved in the label expression and the dependencies between the execution steps; An initial directed acyclic graph is constructed using the execution steps as topology nodes and the dependencies between the execution steps as connections between the topology nodes. Extract the role fields involved in each execution step from the label expression; The ability tags are determined based on the role field, and the ability tags are added to the initial directed acyclic graph to obtain the directed acyclic graph.

5. The method according to claim 1, characterized in that, The steps of sending the data to be processed to the corresponding capability nodes based on the topological order of the directed acyclic graph, and obtaining the data processing results from the capability nodes, include: Based on the topological order of the directed acyclic graph, a task request is constructed for the data to be processed, and the task request is sent to the corresponding capability nodes under each ledger-owning organization. After receiving the task request, each capability node under the ledger-owning organization calls the capability program corresponding to the capability node, processes the data to be processed through the capability program, generates result labels for the processed data, returns the processing result to the capability node based on the result labels, and the capability node endorses the processing result and generates a data processing result. Receive the data processing results returned by the corresponding capability nodes under the respective ledger-owning organizations.

6. The method according to claim 1, characterized in that, The steps of parsing the data processing request and obtaining the tag expression for data processing include: The data processing request is parsed to obtain the data processing requirements, and the tag expression is obtained based on the data processing requirements; or, The data processing request is matched with a preset data processing request. If the data processing request is successfully matched with any preset data processing request, a predefined tag expression is obtained based on the successfully matched preset data processing request.

7. A data expansion processing device based on blockchain, characterized in that, include: A receiving unit is used to receive a data processing request, parse the data processing request, and obtain the tag expression for data processing. The construction unit is used to construct a directed acyclic graph based on the label expression, and send the data to be processed to the corresponding capability node based on the topological order of the directed acyclic graph, and obtain the data processing results of the capability node. The capability node is used to call the capability program to extend the function of the blockchain, and the capability program is represented as an application program for extending the function of the blockchain. The update unit is used to add the data processing results of each capability node to the corresponding topology node in the directed acyclic graph, update the directed acyclic graph, and obtain the updated directed acyclic graph. The generation unit is used to compare multiple directed acyclic graphs updated by ledger ownership organizations to obtain comparison results. If the multiple directed acyclic graphs updated by ledger ownership organizations indicated by the comparison results are consistent, a data expansion processing result is generated based on the directed acyclic graphs updated by each ledger ownership organization. The device further includes: a first upload module, configured to upload capability program data to the ledger nodes of each ledger-owning organization and upload the capability program data to the blockchain to obtain on-chain data; a first endorsement module, configured to endorse the on-chain data based on each ledger-owning organization to obtain an endorsement result for the on-chain data; and a first configuration module, configured to record the capability program on the ledger and configure capability tags for the capability program when the endorsement result indicates that all ledger-owning organizations have endorsed it, wherein the capability tags of the capability program correspond to the role field in the tag expression.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored computer program, wherein, when the computer program is executed, it controls the device containing the computer-readable storage medium to perform the blockchain-based data expansion processing method according to any one of claims 1 to 6.

9. An electronic device, characterized in that, It includes one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement the blockchain-based data expansion processing method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Industrial graph construction method and device, electronic equipment and storage medium

    CN112632293A

  • Data processing method and system, electronic equipment and computer storage medium

    CN113746908A

  • Block chain construction method, block chain construction system and block chain system

    CN116346369A