Blockchain-based communication processing method and apparatus

By storing the network identifier of computing services in the blockchain system, the problem of communication reliability between different participants in the blockchain system is solved, and message transmission without the need for third-party instant messaging tools is realized, ensuring timely and effective message transmission and collaboration.

CN115576709BActive Publication Date: 2026-06-05ANT BLOCKCHAIN TECHNOLOGY (SHANGHAI) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ANT BLOCKCHAIN TECHNOLOGY (SHANGHAI) CO LTD
Filing Date
2022-09-15
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Online communication between different participants in a blockchain system relies on third-party instant messaging tools, which raises reliability issues, leading to untimely or unreliable message delivery and affecting transaction execution.

Method used

By storing network identifiers for computing services in a blockchain system, computing devices can directly transmit messages between participants without the need for third-party instant messaging tools, leveraging the decentralized nature of the blockchain system to achieve timely and effective message delivery.

Benefits of technology

Ensuring timely and effective transmission of messages among participants, and guaranteeing collaboration and transaction execution based on the blockchain system, improves the system's reliability and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115576709B_ABST
    Figure CN115576709B_ABST
Patent Text Reader

Abstract

A communication processing method and device based on a blockchain, involving a first computing device and a second computing device, the first computing device and the second computing device respectively interfacing a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and being respectively associated with a first computing service and a second computing service, the blockchain system storing a network identifier of the second computing service. The method comprises: the first computing device obtaining a first message from the first computing service, the first message at least including message content to be sent to the second computing service; the first computing device sending a second message to the second computing device according to the network identifier of the second computing service obtained from the blockchain system, the second message including the network identifier of the second computing service and the message content in the first message; and the second computing device providing the message content to the second computing service according to the network identifier of the second computing service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments in this specification belong to the field of blockchain technology, and in particular relate to a blockchain-based communication processing method and apparatus. Background Technology

[0002] Blockchain is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and cryptographic algorithms. In a blockchain system, data blocks are sequentially linked together in a chain-like data structure, and a distributed ledger is cryptographically guaranteed to be immutable and unforgeable. Due to its decentralized, immutable, and autonomous characteristics, blockchain has received increasing attention and application. Based on different application scenarios and user needs, blockchains can generally be divided into three main categories: public blockchains, private blockchains, and consortium blockchains. Summary of the Invention

[0003] The purpose of this invention is to provide a communication processing method and apparatus based on blockchain.

[0004] A first aspect provides a blockchain-based communication processing method, involving a first computing device and a second computing device. The first computing device and the second computing device are respectively connected to a first node and a second node in a blockchain system. The first computing device and the second computing device belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service. The method includes: the first computing device obtaining a first message from the first computing service, the first message including at least message content to be sent to the second computing service; the first computing device sending a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system, the second message including the network identifier of the second computing service and the message content; and the second computing device providing the message content to the second computing service based on the network identifier of the second computing service included in the second message.

[0005] In one possible implementation, the first message further includes an application identifier of the distributed application to which the second computing service belongs, and the method further includes: the first computing device sending a first transaction to the first node based on the application identifier, so that the first node returns the network identifier of the second computing service stored in the blockchain system.

[0006] In one possible implementation, the method further includes: the first computing device obtaining an information query request from the first computing service, the information query request including an application identifier of the distributed application to which the second computing service belongs; the first computing device sending a first transaction to the first node according to the application identifier, causing the first node to return the network identifier of the second computing service stored in the blockchain system; the first computing device providing the network identifier of the second computing service to the first computing service; wherein the first message further includes the network identifier of the second computing service.

[0007] In one possible implementation, the blockchain system is a consortium blockchain corresponding to multiple participants.

[0008] In one possible implementation, the blockchain system deploys a smart contract, and the first and second messages further include the network identifier of the first computing service. The method further includes: the second device sending a second transaction to the second node for invoking the smart contract, the second transaction including the network identifier of the first computing service, causing the second node to return a query result, the query result indicating whether the first computing service is allowed to access the second computing service.

[0009] In one possible implementation, the second computing device is associated with a third-party application; the method further includes providing the message content to the third-party application.

[0010] In one possible implementation, the network identifier of the second computing service includes a first access path corresponding to the second computing device and a second access path corresponding to the second computing service.

[0011] Secondly, a blockchain-based communication processing method is provided. The method involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first and second computing devices belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service. The method is executed by the first computing device. The method includes: obtaining a first message from the first computing service, the first message including at least message content to be sent to the second computing service; and sending a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system, the second message including the network identifier of the second computing service and the message content, so that the second computing device provides the message content to the second computing service based on the network identifier of the second computing service.

[0012] In one possible implementation, the first message further includes an application identifier of the distributed application to which the second computing service belongs. The method further includes: the first computing device sending a first transaction to the first node based on the application identifier, causing the first node to return the network identifier of the second computing service stored in the blockchain system.

[0013] In one possible implementation, the method further includes: obtaining an information query request from the first computing service, the information query request including an application identifier of the distributed application to which the second computing service belongs; sending a first transaction to the first node according to the application identifier, causing the first node to return the network identifier of the second computing service stored in the blockchain system; providing the network identifier of the second computing service to the first computing service; wherein the first message further includes the network identifier of the second computing service.

[0014] In one possible implementation, the blockchain system is a consortium blockchain corresponding to multiple participants.

[0015] In one possible implementation, the first message and the second message may further include the network identifier of the first computing service.

[0016] In one possible implementation, the network identifier of the second computing service includes a first access path corresponding to the second computing device and a second access path corresponding to the second computing service.

[0017] Thirdly, a blockchain-based communication processing method is provided. The method involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first and second computing devices belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service. The method is executed by the second computing device. The method includes: receiving a second message from the first computing device, the second message including the network identifier of the second computing service obtained from the blockchain system and message content provided by the first computing service; and providing the message content to the second computing service according to the network identifier of the second computing service.

[0018] In one possible implementation, the blockchain system is a consortium blockchain corresponding to multiple participants.

[0019] In one possible implementation, the blockchain system deploys a smart contract, and the second message further includes the network identifier of the first computing service. The method further includes: sending a second transaction to the second node for invoking the smart contract, the second transaction including the network identifier of the first computing service, causing the second node to return a query result indicating whether the first computing service is allowed to access the second computing service.

[0020] In one possible implementation, the second computing device is associated with a third-party application; the method further includes providing the message content to the third-party application.

[0021] In one possible implementation, the network identifier of the second computing service includes a first access path corresponding to the second computing device and a second access path corresponding to the second computing service.

[0022] Fourthly, a blockchain-based communication processing device is provided. The device involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first computing device and the second computing device belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service. The device is deployed on the first computing device. The device includes: a message acquisition unit configured to acquire a first message from the first computing service, the first message including at least message content to be sent to the second computing service; and a message sending unit configured to send a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system, the second message including the network identifier of the second computing service and the message content, so that the second computing device provides the message content to the second computing service based on the network identifier of the second computing service.

[0023] Fifthly, a blockchain-based communication processing device is provided. The device involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first computing device and the second computing device belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service, and the device is deployed on the second computing device. The device includes: a message receiving unit configured to receive a second message from the first computing device, the second message including the network identifier of the second computing service obtained from the blockchain system and message content provided by the first computing service; and a message processing unit configured to provide the message content to the second computing service based on the network identifier of the second computing service.

[0024] In a sixth aspect, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method described in any one of the second or third aspects.

[0025] In a seventh aspect, a computing device is provided, including a memory and a processor, wherein executable code is stored in the memory, and the processor, when executing the executable code, implements the method of any one of the second or third aspects.

[0026] Using the methods and apparatus provided in the embodiments of this specification, for any two first nodes and second nodes belonging to different participants in a blockchain system, their respective connected first and second computing devices belonging to different participants are associated with a first computing service and a second computing service, respectively. Furthermore, the blockchain system stores the network identifier of the second computing service. Based on this, the first computing device can obtain a first message initiated by its participating party through the first computing service, the first message including at least the message content to be transmitted. Then, the first computing device can send a second message to the second computing device according to the network identifier of the second computing service stored in the blockchain system. The second message includes the network identifier of the second computing service and the aforementioned message content. Subsequently, the second computing device can provide the aforementioned message content to the second computing service according to the network identifier of the second computing service, so that the second computing service can provide the aforementioned message content to the participating party to which the second computing device belongs. In this way, without using third-party instant messaging tools, it can ensure that the message content to be transmitted can be transmitted in a timely and effective manner between the participants, thereby ensuring that the participants can cooperate to execute corresponding transactions based on the transmitted message content on the blockchain system. Attached Figure Description

[0027] To more clearly illustrate the technical solutions of the embodiments in this specification, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0028] Figure 1 This is an example of the system architecture diagram of the blockchain system provided in the embodiments of this specification;

[0029] Figure 2 This is a schematic diagram illustrating the relationship between the computing device and its associated computing service, as exemplarily provided in the embodiments of this specification.

[0030] Figure 3 This is one of the schematic diagrams of a blockchain-based communication processing method provided in the embodiments of this specification;

[0031] Figure 4 This is a second schematic diagram of a blockchain-based communication processing method provided in the embodiments of this specification;

[0032] Figure 5 This is one of the schematic diagrams of a blockchain-based communication processing device provided in the embodiments of this specification;

[0033] Figure 6 This is the second schematic diagram of a blockchain-based communication processing device provided in the embodiments of this specification. Detailed Implementation

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

[0035] A blockchain system is a distributed network built from multiple nodes. Any two nodes within it communicate at the application layer through a peer-to-peer (P2P) network. See also... Figure 1As shown, a blockchain system can, for example, contain nodes 1 to 4. Any two nodes from 1 to 4 can communicate at the application layer via a P2P network. The blockchain system utilizes a decentralized (or multi-centralized) distributed ledger constructed using a chain-like block structure, stored on each (or most) node in the distributed blockchain network. Therefore, the blockchain system needs to address the consistency and correctness of the ledger data across multiple decentralized (or multi-centralized) nodes. Each node in the blockchain system runs a blockchain program. Under certain fault-tolerance requirements, a consensus mechanism ensures that all loyal nodes have the same transactions, thereby guaranteeing consistent execution results for the same transactions. Multiple transactions arranged in sequence are packaged into a block, and the world state is updated based on the execution results of these transactions. The current mainstream consensus mechanisms may include, but are not limited to: Proof of Work (POW), Proof of Stake (POS), Practical Byzantine Fault Tolerance (PBFT) algorithm, and Honey Badger Byzantine Fault Tolerance (HoneyBadgerBFT) algorithm, etc.

[0036] A transaction in a blockchain system refers to a task unit executed and recorded within the blockchain system. A transaction typically includes a From field, a To field, and a Data field. Specifically, in the case of a transfer transaction, the From field represents the account address initiating the transaction (i.e., initiating a transfer task to another account), the To field represents the account address receiving the transaction (i.e., receiving the transfer), and the Data field includes the transfer amount. In the case of a transaction calling a smart contract in the blockchain system, the From field represents the account address initiating the transaction, the To field represents the account address of the contract called by the transaction, and the Data field includes the function name in the called contract and the parameters passed to that function, which is used to retrieve and execute the function's code from the blockchain system during transaction execution.

[0037] Smart contracts in a blockchain system are contracts that can be triggered and executed by transactions. Smart contracts can be defined in the form of code. For example, calling a smart contract in a consortium blockchain involves initiating a transaction pointing to the smart contract's address, causing each node in the consortium blockchain network to run the smart contract code in a distributed manner. It's important to note that besides users creating smart contracts, the system can also set smart contracts in the genesis block. These contracts are generally called genesis contracts. Typically, genesis contracts can set some data structures, parameters, attributes, and methods of the blockchain system. Furthermore, accounts with system administrator privileges can create or modify system-level contracts (referred to as system contracts).

[0038] In smart contract deployment scenarios, a transaction containing smart contract creation information (i.e., a transaction used to create a smart contract) can be sent to the blockchain system. The `from` field of this transaction is the account address of the transaction initiator, the `data` field includes the code of the smart contract to be created (such as bytecode or machine code), and the `to` field is empty to indicate that the transaction is used to deploy the contract. After nodes reach a consensus through the consensus mechanism, the contract address is determined, a contract account corresponding to the smart contract's contract address is added to the state database, state storage corresponding to the contract account is allocated, and the contract code is stored in the smart contract's state storage.

[0039] In scenarios involving contract invocation, a transaction for invoking a smart contract can be sent to the blockchain system. The `from` field of this transaction is the account address of the transaction initiator, the `to` field is the contract address of the smart contract being invoked, and the `data` field includes the method and parameters for invoking the smart contract. After consensus is reached on this transaction within the blockchain system, each node can execute the transaction, thereby executing the smart contract and updating the corresponding state database based on the execution of the smart contract.

[0040] It's important to note that contract accounts typically also possess some state. These states are defined by state variables within the smart contract and acquire new values ​​during the smart contract's creation and execution. Contract accounts can be used to store the contract states related to the smart contract. Once an event triggers a clause in the smart contract (meeting the execution conditions), the code can be executed automatically. In a blockchain system, the contract state of a smart contract is stored in a storage trie. The hash value of the root node of this storage trie is stored in `storage_root`, thus locking all contract states of that contract under that contract account through hashing. The storage trie is an MPT tree structure that stores a key-value mapping from state addresses to state values. From the root node to the leaf node, each node stores the address of a state variable, and each leaf node stores the value of a state variable.

[0041] A blockchain system can involve multiple participants. Different nodes in the blockchain system may interface with different computing devices. Nodes and computing devices that interface with each other belong to the same participant, while different nodes / computing devices may belong to different participants. These participants can be institutions, organizations, or individuals. For example, a blockchain system can be a consortium blockchain with multiple participants: node 1 and computing device 10 belong to participant A, node 2 and computing device 20 belong to participant B, node 3 and computing device 30 belong to participant C, and node 4 and computing device 40 belong to participant D. The computing devices can process the relevant data and transmit the processing results to the nodes they interface with through transactions. Different computing devices can establish communication connections through BTN (Blockchain Transmission Network) and similar networks.

[0042] Participants often need to communicate online to exchange messages and collaborate on transactions based on these messages within a blockchain system. For example, participant A owns brand P, and participant B might want participant A to authorize brand P through the blockchain system, allowing participant B to use brand P to produce and / or sell goods belonging to brand P. In this scenario, participant B and participant A can communicate online to reach certain collaborative agreements. Ultimately, participant A can authorize brand P to participant B through the blockchain system according to these agreements. Specifically, participants A and B can sequentially invoke a smart contract deployed in the blockchain system according to the agreed-upon collaboration conditions, modifying the contract state to authorize brand P held by participant A to participant B.

[0043] In related technologies, multiple participants in a blockchain system can use third-party instant messaging tools for online communication. However, the reliability of third-party instant messaging tools is difficult to guarantee. For example, if the server of the third-party instant messaging tool goes offline / crashes or the third-party instant messaging tool itself experiences other problems, it may cause the participants to be unable to transmit relevant messages in a timely and effective manner through online communication, thereby affecting the normal execution of the relevant transactions.

[0044] In view of the above problems, this specification provides a blockchain-based communication processing method and apparatus in its embodiments. For any two first nodes and second nodes belonging to different participants in the blockchain system, their respective connected first and second computing devices, also belonging to different participants, are associated with a first computing service and a second computing service, respectively. Furthermore, the blockchain system stores the network identifier of the second computing service. Based on this, the first computing device can obtain a first message initiated by its participating party through the first computing service, the first message including at least the message content to be transmitted. Then, the first computing device can send a second message to the second computing device according to the network identifier of the second computing service stored in the blockchain system. The second message includes the network identifier of the second computing service and the aforementioned message content. Subsequently, the second computing device can provide the aforementioned message content to the second computing service according to the network identifier of the second computing service, so that the second computing service can provide the aforementioned message content to the participating party to which the second computing device belongs. In this way, without using third-party instant messaging tools, it can ensure that the message content to be transmitted can be transmitted in a timely and effective manner between the participants, thereby ensuring that the participants can cooperate to execute corresponding transactions based on the transmitted message content within the blockchain system.

[0045] The aforementioned computing service can be a standalone application or a component of a distributed application (DAPP) based on a blockchain system. A blockchain-based DAPP can typically be divided into two components: a user interface (UI) and smart contracts. The entire UI of a DAPP is managed by the computing service belonging to that DAPP. Therefore, a blockchain-based DAPP essentially includes two components: smart contracts and the computing service used to manage the UI. However, it should be noted that the computing service described in the embodiments of this specification should not only be used to manage the DAPP's UI but should also have other functions disclosed in the embodiments of this specification.

[0046] The aforementioned UI refers to an interactive page that can be directly presented to users through terminals such as personal computers and mobile phones. For example, the UI of a DApp can be implemented using technologies such as JAVA, REACT, and VUE. The terminal can act as a computing device that interfaces with nodes in the blockchain system, or it can operate independently of a computing device that interfaces with nodes in the blockchain system while communicating and connecting to the corresponding computing device. Furthermore, users can access the computing services belonging to the DApp through the terminal, obtain the UI returned by the computing services, and perform corresponding interactive operations based on the UI returned by the computing services. Ultimately, this enables the terminal / the computing device connected to the terminal to send requests to the blockchain system to invoke transactions belonging to the smart contracts of the DApp, or enables the terminal to trigger online communication between the computing services of one DApp and the computing services of other DApps.

[0047] The computing services associated with a computing device can run directly on that computing device. Alternatively, the computing services associated with a computing device can run on a computing node that depends on that computing device, such as a virtual machine (VM) or other type of virtual computing node that depends on that computing device, so as to provide secure isolation between different computing services within the computing device. Alternatively, the computing services associated with a computing device can run on other computing devices connected to that computing device; for example, please see [link to relevant documentation]. Figure 2 As shown, the computing device 10 that interfaces with node 1 is used as the entry point of cluster P belonging to participant A. Cluster P also includes computing devices 11 and 12. The computing service associated with computing device 10 may be, for example, computing service 2 running on computing device 11 and belonging to distributed application DAPP2, or computing service 3 running on computing device 12 and belonging to distributed application DAPP3.

[0048] The following will first combine the above... Figure 1 The following describes, for example, the process of deploying and running computing service 1 associated with computing device 10. Computing devices 10 to 40 may, for example, sequentially deploy industry application middleware 1 to industry middleware 4. Computing service 1 may belong to a distributed application DAPP1 based on a blockchain system, and DAPP1 may be published by participant D through computing device 40.

[0049] For the aforementioned DApp1, its developer can, for example, log in to the DApp's publishing website and publish DApp1 on computing device 40 through industry application middleware 4. Furthermore, it can send transaction Tx1 to the blockchain system to deploy a smart contract C1 belonging to DApp1 within the blockchain system. Its user can, for example, log in to the DApp's subscription website on computing device 10 through industry application middleware 1 to subscribe to DApp1, thereby completing the deployment and operation of computing service 1 belonging to DApp1 on computing device 10.

[0050] For example, when a developer releases DApp1, they can upload the application information of DApp1 to the blockchain system through industry application middleware 4. For instance, they can send a request to the blockchain system via industry application middleware 4 to invoke transaction Tx2 of smart contract C2, thereby storing the application information of DApp1 in the contract state of smart contract C2. Furthermore, the developer can also store the installation package corresponding to computing service 1 belonging to DApp1 on computing device 40. The application information of DApp1 may include, but is not limited to, the connection information of computing device 40 and the application identifier of DApp1. For example, it may also include authorization information of DApp1 to computing device 10, the data structure of business data associated with DApp1, and the strategy for the flow of business data associated with DApp1, etc.

[0051] For example, when a user subscribes to DAPP1, they can obtain application information for all DAPPs that the computing device 10 can subscribe to from the blockchain system through industry application middleware 1. For instance, by sending a request to the blockchain system through industry application middleware 1 to invoke transaction Tx3 of smart contract C2, the blockchain system can filter application information authorized to the computing device 10 from the contract state of smart contract C2. If the authorization information for the computing device 10 contained in the application information of DAPP1 indicates that DAPP1 has been authorized to the computing device 10, the blockchain system will filter out the application information of DAPP1 from the contract state of smart contract C2 and return the filtered application information of DAPP1 to the computing device 10. Furthermore, the computing device 10 can communicate with the computing device 40 that published DAPP1 based on the connection information of the computing device 40 contained in the application information of DAPP1 to obtain the installation package of computing service 1 belonging to DAPP1, and deploy and run computing service 1 belonging to DAPP1 on the computing device 10 according to the installation package. It should be noted that computing service 1 can run directly on computing device 10, or it can run on computing nodes that depend on computing device 10, such as virtual machines (VMs) or other types of virtual computing nodes on computing device 10, so as to securely isolate different computing services on computing device 10.

[0052] For computing service 2 or computing service 3, the process of deploying and running computing service 2 or computing service 3 differs from that of computing service 1 in that, after obtaining the installation package of computing service 2 or computing service 3, computing device 10 can cooperate with computing device 11 to deploy and run computing service 2 on computing device 11, or cooperate with computing device 12 to deploy and run computing service 3 on computing device 12. Furthermore, similar to the process of deploying and running computing services 1, 2, and 3, computing service 4 associated with computing device 20 can also be deployed and run. Computing service 4, for example, belongs to a distributed application DAPP4 based on a blockchain system and is published by computing device 30.

[0053] Computing devices typically reside within the intranet environment of their respective participants. Therefore, the computing services associated with these devices need to publicly disclose their network identifiers so that other computing devices outside the intranet can accurately access the service based on its network identifier. In one possible implementation, the computing service can, for example, send its network identifier to the blockchain system via a corresponding industry application middleware to store it within the blockchain system. For instance, after computing device 10 completes deployment and starts running computing service 1, computing service 1 can send transaction Tx4 to the blockchain system via industry application middleware 1 to invoke smart contract C2. This records the registration information of computing service 1 in the contract state of smart contract C2. The registration information of computing service 1 includes at least its network identifier, and may also include the identity identifier of participant A and the application identifier of DAPP 1 to which computing service 1 belongs. This allows the registration information of computing service 1 to indicate that computing service 1, belonging to DAPP 1, is used by participant A for online communication with other participants in the blockchain system.

[0054] The network identifier of a computing service may include a first access path corresponding to its associated computing device, which is used to enable other computing devices to access the computing device. For example, the first access path corresponding to computing device 10 may be a domain name address publicly disclosed by computing device 10, or a combination of an IP address and a port number corresponding to that domain name address.

[0055] The network identifier of a computing service may also include a second access path corresponding to the computing service, which is used to support access to the computing service by computing devices associated with the computing service. As mentioned above, the computing service associated with a computing device may include, but is not limited to, the following scenarios 1 through 3: Scenario 1: The computing service associated with the computing device runs directly on the computing device. In this case, the second access path corresponding to the computing service may be the port number assigned to the computing service by the computing device associated with it. Scenario 2: The computing service associated with the computing device runs on a computing node that depends on the computing device. In this case, the second access path corresponding to the computing service may be the IP address of the computing node and the port number assigned to the computing service by it. Scenario 3: The computing service associated with the computing device runs on other computing devices in the cluster to which the computing device belongs. In this case, the second access path corresponding to the computing service may be the IP address of the computing device running the computing service and the port number assigned to the computing service by it.

[0056] The preceding text described the process by which computing service 1, associated with computing device 10, stores its network identifier in the blockchain system. It is understood that other computing services, such as computing service 4, can complete the same process. For any single participant, it can, for example, query the registration information of each computing service stored in the contract state of smart contract C2 through its corresponding computing device to obtain the network identifier of the computing service used for online communication among other participants and / or the application identifier of the DAPP to which that computing service belongs. This allows it to use the network identifier of the computing service and / or the application identifier of the DAPP to which that computing service belongs in subsequent processes to transmit message content to the corresponding participants.

[0057] Figure 3 This is one of the schematic diagrams illustrating the blockchain-based communication processing method provided in the embodiments of this specification. It exemplarily describes the process by which computing service 1 obtains the network identifier of computing service 4. See [link to documentation]. Figure 3 As shown, the process may include, but is not limited to, the following steps S31 to S34.

[0058] In step S31, computing device 10 obtains an information query request from computing service 1, wherein the information query request includes the application identifier of distributed application DAPP4 to which computing service 4 belongs.

[0059] For example, participant A may know that computing service 4, belonging to distributed application DAPP4, is used by participant B for online communication with other participants in the blockchain system. That is, participant A may know the application identifier of distributed application DAPP4 to which computing service 4 belongs. Based on this, participant A may trigger computing service 1 to initiate an information query request containing the application identifier of distributed application DAPP4 to which computing service 4 belongs to the industry application middleware 1 deployed in computing device 10.

[0060] In step S32, computing device 10 sends transaction Tx5 to node 1 in the blockchain system according to the application identifier of DAPP4.

[0061] Computing device 10 sends transaction Tx5 to node 1, for example, through industry application intermediary 1. Transaction Tx5 is used to request a query for the network identifier of computing service 4 from the blockchain system. More specifically, transaction Tx5 is used, for example, to invoke smart contract C2, whose Data field includes, for example, the application identifier of DAPP4. This enables node 1 to execute smart contract C2 according to transaction Tx5, thereby querying the network identifier of computing service 4 from the registration information of computing service 4 recorded in the contract state of smart contract C2 and returning it to computing device 10.

[0062] In step S33, computing device 10 receives the network identifier of computing service 4 returned by node 1.

[0063] Computing device 10 receives, for example, the network identifier of computing service 4 returned by node 1 through industry application middleware 1.

[0064] In step S34, computing device 10 provides computing service 1 with the network identifier of computing service 4.

[0065] Computing device 10 provides the network identifier of computing service 4 to computing service 1, for example, through industry application middleware 1.

[0066] Although the preceding text has described the process by which computing service 1 obtains the network identifier of computing service 4, it does not mean that computing service 1 must obtain the network identifier of computing service 4 in order to communicate with computing service 4. For example, it may directly use the application identifier of the distributed application DAPP4 to which computing service 4 belongs to communicate with computing service 4.

[0067] Figure 4 This is a second schematic diagram illustrating a blockchain-based communication processing method provided in the embodiments of this specification. It exemplarily describes the process of communication between computing service 1 associated with computing device 10 and computing service 4 associated with computing device 20 to transmit corresponding message content to computing service 4. See [link to documentation]. Figure 4 As shown, the method may include, but is not limited to, the following steps S41 to S47.

[0068] In step S41, computing device 10 obtains message M1 initiated by computing service 1.

[0069] When participant A wishes to send a message to participant B, participant A can trigger computing service 1 to initiate message M1 through computing device 10. Message M1 initiated by computing service 1 can be received, for example, by application middleware 1 in computing device 1. Message M1 includes at least the aforementioned message content. In addition, message M1 may also include at least one of the following: the network identifier of computing service 1, the network identifier of computing service 4 associated with computing device 20 held by participant B, and the application identifier of distributed application DAPP4 to which computing service 4 belongs. As mentioned above, the network identifier of computing service 4 and / or the application identifier of DAPP4 contained in message M1 can be obtained by computing device 10 from the blockchain system.

[0070] If message M1 contains the application identifier of DAPP4 and computing device 10 does not store the application identifier of DAPP4 and the network identifier of computing service 4 locally, computing device 10 can sequentially execute the following steps S42 to S44; if message M1 contains the network identifier of computing service 4, or if message M1 contains the application identifier of DAPP4 and computing device 10 stores the application identifier of DAPP4 and the network identifier of computing service 4 locally, it can directly proceed to step S44.

[0071] In step S42, computing device 10 sends transaction Tx5 to node 1 in the blockchain system.

[0072] Computing device 10 sends transaction Tx5 to node 1, for example, through industry application intermediary 1. Transaction Tx5 is used to request a query for the network identifier of computing service 4 from the blockchain system. More specifically, transaction Tx5 is used, for example, to invoke smart contract C2, whose Data field includes, for example, the application identifier of DAPP4. This enables node 1 to execute smart contract C2 according to transaction Tx5, thereby querying the network identifier of computing service 4 from the registration information of computing service 4 recorded in the contract state of smart contract C2 and returning it to computing device 10.

[0073] In step S43, computing device 10 receives the network identifier of computing service 4 returned by node 1.

[0074] Computing device 10 receives, for example, the network identifier of computing service 4 returned by node 1 through industry application middleware 1.

[0075] In step S44, computing device 10 sends message M2 to computing device 20 based on the network identifier of computing service 4.

[0076] The industry application middleware 1 in computing device 10 can, for example, send message M2 to computing device 20 according to the first access path corresponding to computing service 4. Message M2 includes at least the network identifier of computing service 4 and the message content located in message M1, and may also include the network identifier of computing service 1 located in message M1.

[0077] The computing device 20 can receive the message M2 from the computing device 10 through the industry application middleware 2. After receiving the message M2, it can execute the following steps S45 to S47 in sequence, or directly execute the following step 47.

[0078] In step S45, computing device 20 sends transaction Tx6 to node 2 in the blockchain system.

[0079] Computing device 20 can, for example, send transaction Tx6 to node 2 via industry application middleware 2. Transaction Tx6 is used to query the validity of the network identifier of computing service 1 included in message M2. Transaction Tx6 is used, for example, to invoke smart contract C2, whose Data field includes, for example, the network identifier of computing service 1. This causes node 2 to execute smart contract C2 according to transaction Tx6 and return a query result to computing device 20 indicating whether computing service 1 is allowed to access computing service 2. More specifically, if node 2 fails to find registration information containing the network identifier of computing service 1 in the contract state of smart contract C2, it indicates that the network identifier of computing service 1 is invalid, and node 2 can return a query result to computing device 20 indicating that computing service 1 is prohibited from accessing computing service 2; conversely, if node 2 finds registration information containing the network identifier of computing service 1 in the contract state of smart contract C2, it indicates that the network identifier of computing service 1 is valid, and node 2 can return a query result to computing device 20 indicating that computing service 1 is allowed to access computing service 2.

[0080] In step S46, computing device 20 receives the query results returned by node 2.

[0081] The computing device 20 may receive query results from node 2, for example, through industry application middleware 2, and if the query results indicate that computing service 1 is allowed to access computing service 2, it shall continue to execute the following step S47.

[0082] In step S47, computing device 20 provides message content to computing service 4 based on the network identifier of computing service 4.

[0083] The industry application middleware 4 in computing device 20 can, for example, provide the message content located in message M2 to computing service 4 according to the second access path corresponding to computing service 4. Furthermore, computing service 4 can, for example, provide this message content to participant B through computing device 20, specifically, by displaying the message content to participant B through computing device 20.

[0084] The computing device 20 can also be associated with a third-party application, and can provide the message content in message M2 to the third-party application, thereby enabling the message content to be presented to participant B through the third-party application. For example, the network identifier of the third-party application can be configured in the industry application middleware 2, and the industry application middleware 2 can provide the message content located in message M2 to the third-party application based on the network identifier of the third-party application.

[0085] Based on the same concept as the method embodiments, this specification also provides a blockchain-based communication processing device. The device involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first computing device and the second computing device belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service, and the device is deployed on the first computing device. Figure 5 As shown, the device includes: a message acquisition unit 51 configured to acquire a first message from the first computing service, the first message including at least message content to be sent to the second computing service; and a message sending unit 53 configured to send a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system, the second message including the network identifier of the second computing service and the message content, so that the second computing device provides the message content to the second computing service based on the network identifier of the second computing service.

[0086] Based on the same concept as the method embodiments, this specification also provides a blockchain-based communication processing device. The device involves a first computing device and a second computing device, which are respectively connected to a first node and a second node in a blockchain system. The first computing device and the second computing device belong to different participants and are respectively associated with a first computing service and a second computing service. The blockchain system stores the network identifier of the second computing service, and the device is deployed on the second computing device. Figure 6As shown, the device includes: a message receiving unit 61 configured to receive a second message from the first computing device, the second message including a network identifier of the second computing service obtained from the blockchain system and message content provided by the first computing service; and a message processing unit 63 configured to provide the message content to the second computing service according to the network identifier of the second computing service.

[0087] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0088] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0089] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or physical entities, or by products with certain functions. A typical implementation device is a server system. Of course, this application does not exclude the possibility that, with the future development of computer technology, the computer implementing the functions of the above embodiments can be, for example, a personal computer, a laptop computer, an in-vehicle human-machine interaction device, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.

[0090] While one or more embodiments of this specification provide the operational steps of the methods described in the embodiments or flowcharts, more or fewer operational steps may be included based on conventional or non-inventive means. The order of steps listed in the embodiments is merely one possible order of execution among many steps and does not represent the only possible order. In actual device or end product execution, the methods shown in the embodiments or drawings may be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment, or even a distributed data processing environment). The terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, product, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, product, or apparatus. Without further limitations, the presence of other identical or equivalent elements in the process, method, product, or apparatus that includes the elements is not excluded. For example, the use of terms such as "first," "second," etc., is to denote names and does not indicate any particular order.

[0091] For ease of description, the above devices are described in terms of function, divided into various modules. Of course, when implementing one or more of these specifications, the functions of each module can be implemented in one or more software and / or hardware components, or a module that performs the same function can be implemented by a combination of multiple sub-modules or sub-units. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between devices or units, and may be electrical, mechanical, or other forms.

[0092] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0093] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0094] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0095] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0096] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0097] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage, graphene storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0098] Those skilled in the art will understand that one or more embodiments of this specification can be provided as a method, system, or computer program product. Therefore, one or more embodiments of this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0099] One or more embodiments of this specification can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a particular task or implement a particular abstract data type. One or more embodiments of this specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0100] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, system embodiments are basically similar to method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments. In the description of this specification, the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this specification. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described can be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0101] The above description is merely an embodiment of one or more embodiments of this specification and is not intended to limit the scope of these embodiments. Various modifications and variations can be made to these embodiments by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims.

Claims

1. A blockchain-based communication processing method, the method involving a first computing device and a second computing device, the first computing device and the second computing device respectively connecting to a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and respectively associated with a first computing service and a second computing service, the blockchain system storing the network identifier of the second computing service, and the blockchain system deploying smart contracts, the method comprising: The first computing device receives a first message from the first computing service, the first message including the network identifier of the first computing service and the message content to be sent to the second computing service; The first computing device sends a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system. The second message includes the network identifier of the first computing service, the network identifier of the second computing service, and the message content. The second computing device sends a second transaction to the second node for invoking the smart contract. The second transaction includes the network identifier of the first computing service, causing the second node to return a query result. The query result is used to indicate whether the first computing service is allowed to access the second computing service. If the query result indicates that the first computing service is allowed to access the second computing service, the second computing device provides the message content to the second computing service based on the network identifier of the second computing service included in the second message.

2. The method according to claim 1, wherein the first message further includes an application identifier of the distributed application to which the second computing service belongs, and the method further includes: The first computing device sends a first transaction to the first node based on the application identifier, causing the first node to return the network identifier of the second computing service stored in the blockchain system.

3. The method according to claim 1, further comprising: The first computing device obtains an information query request from the first computing service, wherein the information query request includes the application identifier of the distributed application to which the second computing service belongs; The first computing device sends a first transaction to the first node based on the application identifier, causing the first node to return the network identifier of the second computing service stored in the blockchain system; The first computing device provides the network identifier of the second computing service to the first computing service; The first message also includes the network identifier of the second computing service.

4. The method according to claim 1, wherein the blockchain system is a consortium blockchain corresponding to multiple participating parties.

5. The method according to claim 1, wherein the second computing device is associated with a third-party application; the method further includes: The message content is provided to the third-party application.

6. The method according to any one of claims 1-5, wherein the network identifier of the second computing service includes the first access path corresponding to the second computing device and the second access path corresponding to the second computing service.

7. A blockchain-based communication processing method, the method involving a first computing device and a second computing device, the first computing device and the second computing device respectively connecting to a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and respectively associated with a first computing service and a second computing service, the blockchain system storing the network identifier of the second computing service, the method being executed by the first computing device, the blockchain system deploying a smart contract, the method comprising: Obtain a first message from the first computing service, the first message including the network identifier of the first computing service and the message content to be sent to the second computing service; Based on the network identifier of the second computing service obtained from the blockchain system, a second message is sent to the second computing device. The second message includes the network identifier of the first computing service, the network identifier of the second computing service, and the message content. This causes the second computing device to send a second transaction to the second node for invoking the smart contract. The second transaction includes the network identifier of the first computing service. If the query result returned by the second node indicates that the first computing service is allowed to access the second computing service, the message content is provided to the second computing service based on the network identifier of the second computing service.

8. The method according to claim 7, wherein the first message further includes the application identifier of the distributed application to which the second computing service belongs; in, The method further includes: the first computing device sending a first transaction to the first node according to the application identifier, so that the first node returns the network identifier of the second computing service stored in the blockchain system.

9. The method according to claim 7, further comprising: Obtain an information query request from the first computing service, wherein the information query request includes the application identifier of the distributed application to which the second computing service belongs; The first transaction is sent to the first node according to the application identifier, so that the first node returns the network identifier of the second computing service stored in the blockchain system; Provide the network identifier of the second computing service to the first computing service; The first message also includes the network identifier of the second computing service.

10. The method according to claim 7, wherein the blockchain system is a consortium blockchain corresponding to multiple participating parties.

11. The method according to any one of claims 7-10, wherein the network identifier of the second computing service includes a first access path corresponding to the second computing device and a second access path corresponding to the second computing service.

12. A blockchain-based communication processing method, the method involving a first computing device and a second computing device, the first computing device and the second computing device respectively connecting to a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and respectively associated with a first computing service and a second computing service, the blockchain system storing the network identifier of the second computing service, the method being executed by the second computing device, and the blockchain system deploying a smart contract, the method comprising: Receive a second message from the first computing device, the second message including the network identifier of the first computing service, the network identifier of the second computing service obtained from the blockchain system, and message content provided by the first computing service; Send a second transaction to the second node for invoking the smart contract. The second transaction includes the network identifier of the first computing service. The second node returns a query result, which indicates whether the first computing service is allowed to access the second computing service. If the query result indicates that the first computing service is allowed to access the second computing service, the message content is provided to the second computing service based on the network identifier of the second computing service.

13. The method according to claim 12, wherein the blockchain system is a consortium blockchain corresponding to multiple participants.

14. The method of claim 12, wherein the second computing device is associated with a third-party application; the method further comprises: The message content is provided to the third-party application.

15. The method according to any one of claims 12-14, wherein the network identifier of the second computing service includes a first access path corresponding to the second computing device and a second access path corresponding to the second computing service.

16. A blockchain-based communication processing device, the device comprising a first computing device and a second computing device, the first computing device and the second computing device respectively connecting to a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and respectively associated with a first computing service and a second computing service, the blockchain system storing a network identifier of the second computing service, the device being deployed on the first computing device, and a smart contract being deployed in the blockchain system, the device comprising: The message acquisition unit is configured to acquire a first message from the first computing service, wherein the first message includes the network identifier of the first computing service and the message content to be sent to the second computing service. The message sending unit is configured to send a second message to the second computing device based on the network identifier of the second computing service obtained from the blockchain system. The second message includes the network identifier of the first computing service, the network identifier of the second computing service, and the message content. This causes the second computing device to send a second transaction to the second node for invoking the smart contract. The second transaction includes the network identifier of the first computing service. If the query result returned by the second node indicates that the first computing service is allowed to access the second computing service, the unit provides the message content to the second computing service based on the network identifier of the second computing service.

17. A blockchain-based communication processing device, the device comprising a first computing device and a second computing device, the first computing device and the second computing device respectively connecting to a first node and a second node in a blockchain system, the first computing device and the second computing device belonging to different participants and respectively associated with a first computing service and a second computing service, the blockchain system storing a network identifier of the second computing service, the device deployed on the second computing device, and a smart contract deployed in the blockchain system, the device comprising: The message receiving unit is configured to receive a second message from the first computing device, the second message including the network identifier of the first computing service, the network identifier of the second computing service obtained from the blockchain system, and message content provided by the first computing service; The message processing unit is configured to send a second transaction to the second node for invoking the smart contract, the second transaction including the network identifier of the first computing service, so that the second node returns a query result, the query result being used to indicate whether the first computing service is allowed to access the second computing service; And, if the query result indicates that the first computing service is allowed to access the second computing service, the message content is provided to the second computing service based on the network identifier of the second computing service.

18. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method of any one of claims 7-15.

19. A computing device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 7-15.