CN107911421B - Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain - Google Patents

Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain Download PDF

Info

Publication number
CN107911421B
CN107911421B CN201711035629.XA CN201711035629A CN107911421B CN 107911421 B CN107911421 B CN 107911421B CN 201711035629 A CN201711035629 A CN 201711035629A CN 107911421 B CN107911421 B CN 107911421B
Authority
CN
China
Prior art keywords
network configuration
configuration information
node
blockchain
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201711035629.XA
Other languages
Chinese (zh)
Other versions
CN107911421A (en
Inventor
刘浩洋
史锋锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dianrong Information Technology Co ltd
Original Assignee
Shanghai Dianrong Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Dianrong Information Technology Co ltd filed Critical Shanghai Dianrong Information Technology Co ltd
Priority to CN201711035629.XA priority Critical patent/CN107911421B/en
Publication of CN107911421A publication Critical patent/CN107911421A/en
Application granted granted Critical
Publication of CN107911421B publication Critical patent/CN107911421B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Abstract

Embodiments of the present disclosure relate to methods, apparatus, and computer storage media for configuring block chain cross-network communications. The configuration method comprises the following steps: receiving a connection request to a BaaS server from a block chain node device at the BaaS server, wherein the connection request comprises information indicating a first node identifier and a block chain identifier of a block chain node; determining first network configuration information associated with the block-node device based on the connection request, the first network configuration information including a public network address and a public network port number; and sending a network configuration message to the block link node based on the public network address and the public network port number, wherein the network configuration message comprises: a node identification for each of the one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.

Description

Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain
Technical Field
Embodiments of the present disclosure relate generally to the field of information technology and, in particular, to methods and apparatus for block chain cross-network communication.
Background
Blockchain is a decentralized, distributed accounting technique derived from bitcoin that generates persistent, non-modifiable records by time-wise stacking of encrypted blockchain data and stores the records in individual nodes of the blockchain network, such that the individual nodes participating in the blockchain collectively maintain a reliable database. Therefore, the blockchain has the technical advantages of decentralization, non-tampering, transparent and traceable process and the like, and is considered to have wide application prospects in numerous fields such as finance, credit investigation, internet of things, economic trade settlement, asset management and the like.
Currently, cloud-based Blockchain as a Service (BaaS) becomes an application hotspot of the Blockchain technology. A user (e.g., each enterprise) sets a BaaS platform provided by a BaaS service provider, so that the user creates a corresponding virtual machine instance on a cloud and installs and deploys a multi-node blockchain network, thereby obtaining a blockchain meeting the application requirements of the user, and efficiently developing a blockchain service. The BaaS platform not only reduces the difficulty and cost of installing, configuring, managing and using the block chain, but also can provide personalized service for users. However, BaaS service providers lack support for deploying blockchain nodes within a private network and cannot implement efficient inter-blockchain node-to-node communication across private networks.
In view of the above, it is desirable to provide a solution for block-linked point communication across private networks that is transparent, secure and reliable in the open.
Disclosure of Invention
In general, embodiments of the present disclosure propose methods and apparatus for block chain cross-network communication.
In a first aspect of the disclosure, a method is provided for configuring block chain cross-network communications. The method comprises the following steps: receiving a connection request to a BaaS server from a block chain node device at the BaaS server, wherein the connection request comprises information indicating a first node identifier and a block chain identifier of a block chain node; determining first network configuration information associated with the block-node device based on the connection request, the first network configuration information including a public network address and a public network port number; and sending a network configuration message to the block link node based on the public network address and the public network port number, wherein the network configuration message comprises: a node identification for each of the one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.
In a second aspect of the disclosure, a method for cross-node communication in a blockchain is provided. The method comprises the following steps: sending a request for connecting with a BaaS server to the BaaS server at a block chain node point device, wherein the request comprises an identifier of a block chain where the block chain node point device is located; recording the port of the block chain link point device used for sending the request; and monitoring the port to receive a network configuration message of other blockchain nodes with the blockchain identifier from the BaaS server, wherein the network configuration message comprises the node identifiers of the other blockchain nodes, a public network address and a public network port number, and is used for sending data directed to the blockchain nodes with the node identifiers to the public network address and the public network port number.
In a third aspect of the present disclosure, a BaaS server is provided. The BaaS server comprises: at least one processor; at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions when executed by the at least one processing unit, cause the apparatus to perform acts comprising: receiving a connection request to a BaaS server from a block chain node device at the BaaS server, wherein the connection request comprises information indicating a first node identifier and a block chain identifier of a block chain node; determining first network configuration information associated with the block-node device based on the connection request, the first network configuration information including a public network address and a public network port number; and sending a network configuration message to the block link node based on the public network address and the public network port number, wherein the network configuration message comprises: a node identification for each of the one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.
In a fourth aspect of the present disclosure, a block link point apparatus is provided. The node device includes: at least one processor; at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions when executed by the at least one processing unit, cause the apparatus to perform acts comprising: sending a request for connecting with a BaaS server to the BaaS server at a block chain node point device, wherein the request comprises an identifier of a block chain where the block chain node point device is located; recording the port of the block chain link point device used for sending the request; and monitoring the port to receive a network configuration message of other blockchain nodes with the blockchain identifier from the BaaS server, wherein the network configuration message comprises the node identifiers of the other blockchain nodes, a public network address and a public network port number, and is used for sending data directed to the blockchain nodes with the node identifiers to the public network address and the public network port number.
According to a fifth aspect of the present invention, there is provided a computer readable storage medium having computer readable program instructions stored thereon for performing the methods described in accordance with the first and second aspects of the present disclosure.
Drawings
The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. In the drawings, like or similar reference characters designate like or similar elements, and wherein:
fig. 1 shows a schematic diagram of a BaaS platform system architecture;
FIG. 2 shows a schematic diagram of an environment for configuring blockchain nodes in a private network;
fig. 3 shows a flow diagram of a method of configuring a blockchain for a blockchain nexus device in a private network in accordance with an embodiment of the present disclosure;
fig. 4 illustrates a flow diagram of a method for configuring cross-private network communication in a blockchain in accordance with an embodiment of the present disclosure;
FIG. 5 shows a schematic diagram of an architecture for communicating across a private network, according to an embodiment of the present disclosure;
fig. 6 shows a flow diagram of a method for configuring cross-private network communication in a blockchain according to yet another embodiment of the present disclosure;
fig. 7 illustrates a flow diagram of a method for cross-private network communication in a blockchain in accordance with an embodiment of the present disclosure; and
fig. 8 shows a block diagram of an apparatus according to an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that the same reference numerals may be used in the drawings for similar components or functional elements. The accompanying drawings are only intended to illustrate embodiments of the present disclosure. Alternative embodiments will become apparent to those skilled in the art from the following description without departing from the spirit and scope of the disclosure.
As used herein, the term "include" and its various variants are to be understood as open-ended terms, which mean "including, but not limited to. The term "based on" may be understood as "based at least in part on". The term "one embodiment" may be understood as "at least one embodiment". The term "another embodiment" may be understood as "at least one other embodiment".
As mentioned above, because the technology threshold of the blockchain is high, and the installation, configuration, management and maintenance of the blockchain are complex, many companies have developed a cloud-based blockchain as a service (BaaS) platform to help enterprises reduce the difficulty and cost of using the blockchain. Enterprises using the block chains only need to set relevant parameters on the BaaS platform according to own requirements, the BaaS platform can create corresponding virtual machine instances on the cloud within several minutes, and a multi-borrow-point block chain is installed and deployed. Therefore, enterprises do not need to pay attention to various technical details of the block chain, and only need to pay attention to the business developed in the block chain.
Fig. 1 shows a schematic architecture diagram of a BaaS platform system 100. As shown, the BaaS platform system 100 is based on a cloud 110, which includes a BaaS platform 120, a plurality of blockchain networks 130, 140, 150, and schematically illustrated storage 170 and blockchain users 160. The BaaS platform 120 may provide public, federation, or private chain services to the user 160, and also act as a portal to the user 160. The BaaS platform 120 also provides various functions such as data management and data analysis, for example, to meet user-specific role and industry requirements. The storage 170 is used to store various configuration data, user information, log data, and the like of the BaaS platform system 100.
Blockchain networks 130, 140, and 150 may be user-specific, each including several blockchain nodes. In a cloud application environment, each tile chain node may correspond to a virtual machine instance in which a corresponding node application is running. Each blockchain network has corresponding blockchain applications, such as various applications in the fields of finance, credit investigation, internet of things, economic trade settlement, asset management, and the like.
It should be noted that although the blockchain networks 130, 140, 150 are illustrated as being independent of each other, each blockchain network may also include a common blockchain link point. For example, a certain blockchain node may belong to both blockchain network 130 and blockchain network 140. In addition, the number of blockchain networks, users, and storage devices in the figure is merely illustrative and may be any number.
In the prior art, cloud hosts created based on the BaaS platform shown in fig. 1 all have a public network IP, but there is the following enterprise application scenario: host nodes in the enterprise private networks are connected by private lines to form a federation chain. Nodes need to be located in private networks because nodes exposed on the public network are more vulnerable to hackers, affecting the security of data on the blockchain. However, there is no method for effectively deploying blockchain nodes in a private network in the prior art, and there is no method for transparent and secure communication of blockchains across private networks.
In view of the above, the present disclosure proposes a scheme for cross-network communication in block chains. The method utilizes a client to realize BaaS-based block link point configuration, utilizes a system intelligent contract in a block chain to establish communication with a BaaS server, and acquires information of public network addresses and ports corresponding to other nodes from the BaaS server to realize transparent and safe inter-block chain private network communication.
First, a process of deploying a blockchain in a blockchain linked point device in a private network is described with reference to fig. 2 and 3, in particular, fig. 2 shows a schematic diagram of an environment 200 for configuring blockchain nodes in a private network, and fig. 3 shows a flowchart of a method 300 of deploying a blockchain in a blockchain linked point device in a private network according to an embodiment of the present disclosure.
Referring to fig. 2, an environment 200 may include a BaaS server 210 and a plurality of private networks 220 and 240. The private network 220 includes a plurality of blockchain node devices 222 and 224. A plurality of blockchain node devices 242 and 244 are included in the private network 240. Clients 226, 228, 246, and 248 are installed on each of the plurality of blockchain node devices 222, 224, 242, and 244. Based on such an environment 200, a method 300 of block chain deployment for block chain link point devices in a private network is shown in fig. 3.
At block 302, client software is installed at the block-link point device. In some embodiments, an installer may download client software from the BaaS server and perform the installation. For security, a dedicated account may be created on the blockchain endpoint device to perform blockchain services, the account having only read and write access to a specific way, which does not allow software to be installed or system configuration to be modified.
At block 304, a validation identity is obtained from the BaaS server. In some embodiments, the authentication identity may be a token (token). The BaaS server dynamically generates tokens corresponding to the client software, and each token can have a certain time efficiency.
At block 306, a connection is established with the BaaS server based on the validation identity. In some embodiments, the authentication identifier obtained from the BaaS server is input in the client software, and a connection with the BaaS server is established. When an installer inputs the token obtained from the BaaS server into the client software, the client software sends an authentication request to the BaaS server, the BaaS server can verify the token, and after the verification is passed, the client software establishes connection with the BaaS server. In some embodiments, the verification further includes an aging verification of the token, and when the token exceeds the aging, the installer needs to obtain a new token from the BaaS server again to perform the installation task.
At block 308, a deployment instruction is received from the BaaS server to complete deployment of the joining blockchain according to the instruction. In this step, the BaaS server sends a deployment instruction to the blockchain node device, where the instruction may cause the deployment of the blockchain service on the blockchain node device to be completed. After deployment is complete, the BaaS server may also assign a specific blockchain identity to the blockchain system, which will be referred to as an important parameter for communication across private networks as described later.
In some embodiments, an installer may shut down client software after completion of blockchain deployment to prevent potential system risks. Furthermore, the code of the client software may be open to the public to avoid user concerns about backdoor programs.
Based on the configuration process described in fig. 3, environment 200 may form a blockchain across a private network, which may include a plurality of blockchain node devices 222, 224, 242, and 244. Block- link point devices 222 and 224 are located in private network 220 and block- link point devices 242 and 244 are located in private network 240.
Based on the blockchain configured across the private network, a method of communicating nodes across the private network in the blockchain according to an embodiment of the present disclosure will be described below in conjunction with fig. 4 to 7. In particular, fig. 4 shows a flow diagram of a method 400 for configuring cross-private network communication in a blockchain in accordance with an embodiment of the present disclosure; fig. 5 shows a schematic diagram of an architecture 500 for communicating across a private network, according to an embodiment of the disclosure; fig. 6 illustrates a flow diagram of a method 600 for configuring cross-private network communication in a blockchain in accordance with yet another embodiment of the present disclosure; fig. 7 shows a flow diagram of a method 700 for cross-private network communication in a blockchain in accordance with an embodiment of the present disclosure.
Referring first to fig. 4, the method shown in fig. 4 may be performed by a BaaS server, where a connection request to the BaaS server is received at the BaaS server from a blockchain node device, the connection request including information indicating a first node identification and a blockchain identification of a blockchain node, at block 402.
Taking as an example the architecture 500 shown in fig. 5, the architecture includes a BaaS server 510, and two private networks 520 and 540. One or more blockchain node devices may be included in each private network, for example, only one blockchain node device is shown in private networks 520 and 540, respectively. Upon initiation of the block link point 1524, the system contract 530 may send a connection request to the BaaS server. In some embodiments, the request may include an identification of the blockchain in which the blockchain link point 1524 is located ("first blockchain"), and an identification of the node of the blockchain link point 1524 ("first node"). In some embodiments, the request may also include a token obtained from the BaaS server.
At block 404, the BaaS server determines first network configuration information associated with the block-node device, the first network configuration information including a public network address and a public network port number. In some embodiments, based on the connection request received from smart contract 530, BaaS server 510 may determine the public network address, IP, of the connection request1And the public network port 528 that it uses.
In some embodiments, when the BaaS server determines that the block-linked point 1524 is a first connection, the node identification ("first node"), the block chain identification ("first block chain"), and the public network address IP of the block-linked point 1524 may be identified1And the public network port 528 that it uses are stored in the network configuration information set 512.
At block 406, based on the public network address and the public network port number, the BaaS server sends a network configuration message to the block link node, where the network configuration message includes: a node identification for each of the one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.
Specifically, in this example, BaaS server 510 may send network configuration information associated with block-link point 2544 to block-link point 1524, since block-link node 2544 has the same block-link identification ("first block-link") as block-link point 1524. In some embodiments, the network configuration information is also stored in the network configuration information set, and the BaaS server may obtain the network configuration information associated with the blockchain node 2544 using the blockchain identifier ("first blockchain") as a query entry. In this example, BaaS server 510 may send a node identification of blockchain node 2524 ("second blockchain") to blockchain point 1524, a public network address IP of blockchain point 25242And its public network port 548.
In another embodiment, the process of sending configuration information to the block nodes in block 406 may be as shown in fig. 6. At block 602, the BaaS server may obtain a first node identification and first network configuration information. The BaaS server then determines whether the first node identification is present in the network configuration information set at block 604. Specifically, as described previously, BaaS server 510 may query in the network configuration information set using the received node identification of block chain node 1524 ("first node") as an entry.
If it is determined in block 604 that the network configuration information set does not existThe node identification, the method 600 proceeds to block 606 where the first node identification and the first network configuration information are stored in a network configuration information set. In particular, BaaS server 510, in response to the absence of a node identification of blockchain node 1524 ("first node") in the network configuration information set, may identify a node identification of blockchain node 1524 ("first node"), a blockchain identification ("first blockchain"), a public network address IP ("public network address"), and/or the like1And the public network port 528 that it uses are stored in the network configuration information set 512. The BaaS server may then send a network configuration message to all of the blockchain nodes having the blockchain identification, thereby updating the network configuration information in each blockchain node, at block 612.
In some embodiments, the BaaS server may also periodically broadcast the network configuration information stored in the network configuration information set to all the blockchain nodes, so that each blockchain node can obtain the latest network configuration information.
If it is determined in block 604 that the node identification exists in the network configuration information set, the method 600 proceeds to block 608 where the BaaS server determines whether the received first network configuration information is consistent with second network configuration information stored in the network configuration set, the second network configuration information being associated with the first node identification. Specifically, the BaaS server 510 may determine whether the received network configuration information related to the tile link point 1524 is consistent with the network configuration information stored in the network configuration information set 512, so as to determine whether the network configuration information set needs to be updated.
If it is determined in block 608 that the first network configuration information is inconsistent with the second network configuration information, the method 600 proceeds to block 610, where the BaaS server updates the second network configuration information, which is centrally stored in the network configuration information, to the first network configuration information. The BaaS server may then send a network configuration message to all of the blockchain nodes having the blockchain identification, thereby updating the network configuration information in each blockchain node, at block 612.
If it is determined in block 608 that the first network configuration information is consistent with the second network configuration information, the method 600 proceeds to block 612, i.e., without adjusting the set of network configuration information. At this time, the BaaS server may send the network configuration message to all the blockchain nodes having the blockchain identifier as needed, so as to update the network configuration information in each blockchain node.
The method for configuring inter-network communication in a block chain described above from the BaaS server side is described below with reference to fig. 7 from the block chain link point side based on the communication configuration performed by the BaaS server 700. The method 700 may be performed by a block-link point device or an intelligent contract on a block-link point device.
At block 702, a request to connect with a BaaS server is sent at a block-linked point device to the BaaS server, the request including an identification of a block chain in which the block-linked point device is located. When a block link point 1524 in the block link point device 1522 is activated, it will automatically install the system intelligence contract 530. The system intelligent contract is different from the user intelligent contract, wherein the user intelligent contract needs to be operated in a docker container and needs to be installed and triggered by a user after the blockchain system normally operates. However, before the cross-node communication is built, the blockchain system cannot operate normally, and thus the user intelligent contracts cannot be used to implement communication between cross-private networks. A system intelligence contract is another form of intelligence contract that completes initialization as blockchain nodes are started. The system intelligent contracts do not need to run in a docker container, and can run in node processes.
Specifically, in this example, the system contract 530 sends a link request to the BaaS server 510 during block link point 1530 initialization. The connection request may include an identification of the blockchain in which blockchain node device 1524 is located, e.g., as "first blockchain". In some embodiments, the connection request may also include an identification of the blockchain node, e.g., as the "first node".
At block 704, the system intelligence contract may record the port of the block-link node device used to send the request. Specifically, as shown in fig. 5, the local port 526 of the block-link node device 1522 is the local port used for connecting the BaaS server. The system intelligence contract may further modify the port number that the blockchain service listens to so that the blockchain service multiplexes local ports 526.
At block 706, the system intelligence contract may listen to the port to receive network configuration messages from the BaaS server for other blockchain nodes with blockchain identifications. Specifically, the network configuration message includes the node identifier, the public network address and the public network port number of the other blockchain node. Taking the architecture 500 shown in FIG. 5 as an example, the system intelligence contract 1530 may receive the block link point identifier (e.g., "second node") of the block link point 2544 and the public network address IP used by the block link point2And the used public network port 548.
In some embodiments, the system intelligence contract may also periodically receive broadcast messages from the BaaS server through the port, which may include network configuration information for other blockchain nodes having the same blockchain identification, thereby updating locally stored network configuration information associated with the other nodes.
In some embodiments, based on the obtained network configuration information, the system intelligence contract may, for example, modify a domain name resolution file to resolve a block link point identification ("second node") of block link point 2544 to the received public network address IP2And modifies the port serviced by block link point 2544 to be public network port 548. Based on such a configuration, data to be directed to block link point 2544 can be sent to the public network address IP2And a public network port number 548. When the private network 540 receives the data, the received data will be forwarded to the corresponding private port 546 based on the mapping between public network port-private network port stored by the Network Address Translation (NAT) mechanism, thereby enabling node communication across private networks.
Based on a similar process, the system intelligence contract 550 for block-linked point 2544 can also obtain the public network address IP for block-linked point 15241And a public network port 528, the system intelligence contract 550 may resolve the block link point identification ("first node") of block link point 2544 as connectedReceiving public network address IP1And modifies the port serviced by block-link node 1524 to public network port 528, thereby enabling communication across the private network between block-link node 1524 and block-link node 544.
FIG. 8 illustrates a schematic block diagram of an electronic device 800 that may be used to implement embodiments of the present disclosure. It should be understood that the electronic device 800 may be used to implement the BaaS server or the block-link point device described in fig. 5, or the electronic device 800 may also be used to implement any one of the modules of the BaaS server or the block-link point device described in fig. 5. As shown in fig. 8, device 800 includes a Central Processing Unit (CPU)801 (e.g., a processor) that may perform various appropriate actions and processes in accordance with computer program instructions stored in a Read Only Memory (ROM)802 or loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the device 800 can also be stored. The CPU 801, ROM 802, and RAM 803 are connected to each other via a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
A number of components in the device 800 are connected to the I/O interface 805, including: an input unit 806, such as a keyboard, a mouse, or the like; an output unit 807 such as various types of displays, speakers, and the like; a storage unit 808, such as a magnetic disk, optical disk, or the like; and a communication unit 809 such as a network card, modem, wireless communication transceiver, etc. The communication unit 809 allows the device 800 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
Various methods or processes described above, such as methods 300, 400, 600, or method 700, may be performed by the processing unit 801. For example, in some embodiments, the method 300, 400, 600 or the method 700 may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program can be loaded and/or installed onto device 800 via ROM 802 and/or communications unit 809. When loaded into RAM 803 and executed by CPU 801, a computer program may perform one or more of the acts or steps of methods 300, 400, 600 or 700 described above.
The block link point system state monitoring scheme based on the intelligent contract provided by the embodiment of the disclosure has many advantages. One is that the monitoring scheme is easy to implement. The intelligent contracts are mechanisms supported by the blockchain itself, and thus do not require additional development of a separate system monitoring agent service. Secondly, the monitoring scheme is safe and reliable. The method has the advantages of being transparent and non-falsifiable by using the state monitoring intelligent contract, ensures the privacy and safety of user data, and is easy to obtain the support and approval of the user. In addition, the scheme also ensures the original safety of the block link points, and does not cause additional safety risks. In addition, the monitoring scheme is convenient to upgrade and maintain. The functions of service software upgrading and intelligent contract upgrading of the blockchain platform can be multiplexed, so that an upgrading scheme does not need to be specially developed for the state monitoring system.
In general, the various example embodiments of this disclosure may be implemented in hardware or special purpose circuits, software, firmware, logic or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device. While aspects of embodiments of the disclosure have been illustrated or described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that the blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
By way of example, the various illustrative logical blocks, modules, and circuits described in connection with the disclosure may be implemented or performed with a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
By way of example, embodiments of the disclosure may be described in the context of machine-executable instructions, such as those included in program modules, being executed in a device on a target real or virtual processor. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data types. In various embodiments, the functionality of the program modules may be combined or divided between program modules as described. Machine-executable instructions for program modules may be executed within local or distributed devices. In a distributed facility, program modules may be located in both local and remote memory storage media.
Computer program code for implementing the methods of the present disclosure may be written in one or more programming languages. These computer program codes may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the computer or other programmable data processing apparatus, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be performed. The program code may execute entirely on the computer, partly on the computer, as a stand-alone software package, partly on the computer and partly on a remote computer or entirely on the remote computer or server.
In the context of this disclosure, a machine-readable medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of a machine-readable storage medium include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical storage device, a magnetic storage device, or any suitable combination thereof.
Additionally, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking or parallel processing may be beneficial. Likewise, while the above discussion contains certain specific implementation details, this should not be construed as limiting the scope of any invention or claims, but rather as describing particular embodiments that may be directed to particular inventions. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (22)

1. A method for configuring communications across different private networks in a blockchain, comprising:
receiving, at a BaaS server, a connection request from a blockchain node device to the BaaS server, the connection request including information indicating a first node identity and a blockchain identity of the blockchain node;
determining first network configuration information associated with the block link node device based on the connection request, the first network configuration information comprising a public network address and a public network port number; and
based on the public network address and the public network port number, sending a network configuration message to the block link node, the network configuration message comprising: a respective node identification of one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.
2. The method of claim 1, sending a network configuration message to the block chaining point comprising:
determining whether the first node identifier is already stored in a network configuration information set, wherein the network configuration information set stores respective node identifiers and network configuration information of one or more block chain nodes associated with the BaaS server;
in response to the first node identification being present in the set of network configuration information, determining whether the received first network configuration information is consistent with second network configuration information stored in the set of network configuration information, the second network configuration information being associated with the first node identification; and
and in response to determining that the first network configuration information is consistent with the second network configuration information, sending the network configuration message to the block link node.
3. The method of claim 2, further comprising:
in response to the first node identification not being present in the set of network configuration information, storing the node identification and the first network configuration in the set of network configurations.
4. The method of claim 3, further comprising:
in response to the first network configuration information not being consistent with the second network configuration information, updating the stored second network information configuration to the first network configuration information.
5. The method of claim 3 or 4, further comprising:
sending a network configuration message to one or more block link points having the block chain identification, the network configuration message comprising: a node identification of the one or more blockchain nodes and network configuration information associated with the node identification.
6. A method for communicating across different private networks in a blockchain, comprising:
sending a request for connecting with a BaaS server to the BaaS server at a block chain node device, wherein the request comprises an identifier of a block chain where the block chain node device is located;
recording a port of the block link point device used for sending the request; and
monitoring the port to receive a network configuration message of other blockchain nodes with the blockchain identifiers from the BaaS server, wherein the network configuration message comprises the node identifiers of the other blockchain nodes, a public network address and a public network port number, and is used for sending data directed to the blockchain nodes with the node identifiers to the public network address and the public network port number.
7. The method of claim 6, further comprising:
installing client software at the block link point device;
obtaining a verification identifier from the BaaS server;
establishing connection with the BaaS server based on the verification identifier; and
and receiving a deployment instruction from the BaaS server so as to complete the deployment of adding the block chain according to the deployment instruction.
8. The method of claim 7, further comprising:
determining whether the authentication identity is expired; and
and acquiring a new verification identifier from the BaaS server in response to the verification identifier being expired.
9. The method of claim 6, further comprising: periodically receiving a broadcast message from the BaaS server through the port, the broadcast message including the network configuration information of the other blockchain nodes having the blockchain identification.
10. The method of claim 6, further comprising:
periodically sending the request for connection with the BaaS server to the BaaS server through the port.
11. A BaaS server for configuring communication across different private networks in a blockchain, comprising:
at least one processor;
at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions when executed by the at least one processing unit, cause the BaaS server to perform acts comprising:
receiving, at a BaaS server, a connection request from a blockchain node device to the BaaS server, the connection request including information indicating a first node identity and a blockchain identity of the blockchain node;
determining first network configuration information associated with the block link node device based on the connection request, the first network configuration information comprising a public network address and a public network port number; and
based on the public network address and the public network port number, sending a network configuration message to the block link node, the network configuration message comprising: a respective node identification of one or more blockchain nodes having the same blockchain identification, and network configuration information associated with the one or more blockchain nodes.
12. The server of claim 11, sending a network configuration message to the block chain node comprises:
determining whether the first node identifier is already stored in a network configuration information set, wherein the network configuration information set stores respective node identifiers and network configuration information of one or more block chain nodes associated with the BaaS server;
in response to the first node identification being present in the set of network configuration information, determining whether the received first network configuration information is consistent with second network configuration information stored in the set of network configuration information, the second network configuration information being associated with the first node identification; and
and in response to determining that the first network configuration information is consistent with the second network configuration information, sending the network configuration message to the block link node.
13. The server of claim 12, further comprising:
in response to the first node identification not being present in the set of network configuration information, storing the first node identification and the first network configuration information in the set of network configuration information.
14. The server of claim 12, further comprising:
updating the stored second network configuration to the first network configuration in response to the first network configuration information not being consistent with the second network configuration information.
15. The server according to claim 13 or 14, further comprising:
sending a network configuration message to one or more block link points having the block chain identification, the network configuration message comprising: a node identification of the one or more blockchain nodes and network configuration information associated with the node identification.
16. A block link point device for communicating across different private networks in a block chain, comprising:
at least one processor;
at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, which when executed by the at least one processing unit, cause the apparatus to perform acts comprising:
sending a request for connecting with a BaaS server to the BaaS server at a block chain node device, wherein the request comprises an identifier of a block chain where the block chain node device is located;
recording a port of the block link point device used for sending the request; and
monitoring the port to receive a network configuration message of other blockchain nodes with the blockchain identifiers from the BaaS server, wherein the network configuration message comprises the node identifiers of the other blockchain nodes, a public network address and a public network port number, and is used for sending data directed to the blockchain nodes with the node identifiers to the public network address and the public network port number.
17. The apparatus of claim 16, wherein the block link point apparatus is deployed according to the following steps:
installing client software at the block link point device;
obtaining a verification identifier from the BaaS server;
establishing connection with the BaaS server based on the verification identifier; and
and receiving a deployment instruction from the BaaS server so as to complete the deployment of adding the block chain according to the deployment instruction.
18. The apparatus of claim 17, the acts further comprising:
determining whether the authentication identity is expired; and
and acquiring a new verification identifier from the BaaS server in response to the verification identifier being expired.
19. The apparatus of claim 16, the acts further comprising: periodically receiving a broadcast message from the BaaS server through the port, the broadcast message including the network configuration information of the other blockchain nodes having the blockchain identification.
20. The apparatus of claim 16, the acts further comprising:
periodically sending the request for connection with the BaaS server to the BaaS server through the port.
21. A computer-readable storage medium having computer-readable storage instructions stored thereon, wherein the instructions, when executed by a processor, implement the method of claims 1-5.
22. A computer-readable storage medium having computer-readable storage instructions stored thereon, which when executed by a processor implement the method of any one of claims 6-10.
CN201711035629.XA 2017-10-30 2017-10-30 Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain Expired - Fee Related CN107911421B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711035629.XA CN107911421B (en) 2017-10-30 2017-10-30 Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711035629.XA CN107911421B (en) 2017-10-30 2017-10-30 Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain

Publications (2)

Publication Number Publication Date
CN107911421A CN107911421A (en) 2018-04-13
CN107911421B true CN107911421B (en) 2020-05-15

Family

ID=61842118

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711035629.XA Expired - Fee Related CN107911421B (en) 2017-10-30 2017-10-30 Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain

Country Status (1)

Country Link
CN (1) CN107911421B (en)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108512935B (en) * 2018-04-16 2020-08-18 腾讯科技(深圳)有限公司 Data service system, method, server and computer readable storage medium
CN110351191B (en) * 2018-04-20 2020-12-11 腾讯科技(深圳)有限公司 Network configuration method, system, device and storage medium
CN110417636B (en) * 2018-04-28 2022-06-21 黄楚媛 Decentralized self-organizing instant messaging system and method thereof
CN108924175A (en) * 2018-05-02 2018-11-30 北京链链信息技术有限公司 A kind of communication means and device of block interchain
CN110535631A (en) * 2018-05-25 2019-12-03 上海诚频信息科技合伙企业(有限合伙) Method, system, equipment and the storage medium of edge calculations node data transmission
CN108810186B (en) * 2018-05-31 2021-05-18 中国联合网络通信集团有限公司 Block chain node communication method and device and block chain node
CN108777710B (en) * 2018-05-31 2021-06-08 中国联合网络通信集团有限公司 Inter-node communication method and device of block chain and block chain node
CN108881414B (en) * 2018-05-31 2021-06-01 中国联合网络通信集团有限公司 Block chain node communication method and device and block chain node
CN108848144B (en) * 2018-05-31 2021-03-30 中国联合网络通信集团有限公司 Method and device for accessing nodes in block chain and block chain link point
CN108777711B (en) * 2018-05-31 2021-06-08 中国联合网络通信集团有限公司 Block chain node communication method and device and block chain node
CN108964982B (en) * 2018-06-13 2021-07-09 众安信息技术服务有限公司 Method, apparatus and storage medium for enabling deployment of multiple nodes of a blockchain
CN109002349B (en) * 2018-06-25 2021-01-05 百度在线网络技术(北京)有限公司 Application program interaction method, implementation method, device, equipment and medium
CN109167811B (en) 2018-07-27 2020-05-05 阿里巴巴集团控股有限公司 Cross-chain data access method and device based on block chain
CN109145205B (en) 2018-07-27 2020-09-01 阿里巴巴集团控股有限公司 Cross-chain data operation method and device based on block chain
CN110933015B (en) * 2018-09-19 2022-03-11 阿里巴巴集团控股有限公司 Data transmission method, device and system
CN109395394B (en) * 2018-09-29 2021-08-31 杭州复杂美科技有限公司 Forecast guess game deployment method and game method, equipment and storage medium
CN109144969A (en) * 2018-10-09 2019-01-04 上海点融信息科技有限责任公司 For the data processing method of block chain network system, device and storage medium
CN109447644A (en) * 2018-11-09 2019-03-08 上海点融信息科技有限责任公司 Method and apparatus for trustship block chain private key for user
CN109462505B (en) * 2018-11-12 2021-07-30 上海点融信息科技有限责任公司 Method and apparatus for implementing cross-link communication between multiple blockchain networks
KR102112459B1 (en) * 2018-11-16 2020-05-19 알리바바 그룹 홀딩 리미티드 Domain name system for cross-chain interactions in blockchain systems
BR112019007991A2 (en) * 2018-11-16 2019-09-10 Alibaba Group Holding Ltd computer-implemented method of a relay for cross-chain interactions in a unified trusted protocol network, computer readable, non-transient storage media, and system
SG11202106442VA (en) 2018-11-16 2021-07-29 Christopher Lyndon Higgins Distributed ledger systems, methods and devices
US11762815B2 (en) 2018-11-23 2023-09-19 Amazon Technologies, Inc. Multi-framework managed blockchain service
WO2020106845A1 (en) * 2018-11-23 2020-05-28 Amazon Technologies, Inc. Enabling access across private networks for a managed blockchain service
US11411921B2 (en) 2018-11-23 2022-08-09 Amazon Technologies, Inc. Enabling access across private networks for a managed blockchain service
CN109784882A (en) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 Alliance's chain information distribution control method and terminal device
CN109788032B (en) * 2018-12-17 2021-12-14 深圳壹账通智能科技有限公司 Method and device for acquiring mirror image file, computer equipment and storage medium
CN109525678B (en) * 2018-12-25 2022-09-27 众安信息技术服务有限公司 Block chain network system and corresponding node device discovery method
CN109889386A (en) * 2019-03-05 2019-06-14 众安信息技术服务有限公司 Block chain dispositions method and system
CN110138586A (en) * 2019-04-04 2019-08-16 平安科技(深圳)有限公司 Block chain node administration method, electronic device, system and readable storage medium storing program for executing
CN110109684B (en) * 2019-04-04 2023-06-09 平安科技(深圳)有限公司 Block chain link point management proxy service installation method, electronic device and storage medium
CN110062041B (en) * 2019-04-12 2023-04-07 深圳前海微众银行股份有限公司 Method and device for changing IOT (input/output) equipment based on block chain
CN110892696B (en) * 2019-04-19 2021-08-27 创新先进技术有限公司 Method and apparatus for establishing communication between blockchain networks
CN110266763B (en) * 2019-05-20 2022-04-12 深圳壹账通智能科技有限公司 Method, system and storage medium for implementing block chain network interconnected across network segments
CN110417896B (en) * 2019-07-31 2022-01-28 中国工商银行股份有限公司 System and method for dynamically networking block chain based on cloud
CN110704392B (en) * 2019-08-21 2023-03-31 平安科技(深圳)有限公司 Block chain network upgrading method and device, storage medium and electronic equipment
CN110730089A (en) * 2019-09-02 2020-01-24 深圳壹账通智能科技有限公司 Monitoring configuration method and device of block chain network, storage medium and electronic equipment
CN110601896B (en) * 2019-09-20 2021-08-24 腾讯科技(深圳)有限公司 Data processing method and equipment based on block chain nodes
CN111373402B (en) * 2019-11-08 2022-03-25 支付宝(杭州)信息技术有限公司 Lightweight decentralized application platform
CN110784324B (en) * 2019-11-08 2021-10-01 腾讯科技(深圳)有限公司 Node admission method and device
CN110839034B (en) * 2019-11-15 2022-05-13 腾讯科技(深圳)有限公司 Communication connection control method and related equipment
CN110944058B (en) * 2019-12-04 2022-03-04 杭州复杂美科技有限公司 Block chain intranet node relay connection method
CN111046055A (en) * 2019-12-11 2020-04-21 杭州趣链科技有限公司 Block chain global configuration changing method, equipment and storage medium
CN110933189A (en) * 2020-02-10 2020-03-27 北京启迪区块链科技发展有限公司 Fabric-based block chain network deployment method, device, equipment and medium
CN111447080B (en) * 2020-02-29 2023-07-14 平安银行股份有限公司 Private network decentralization control method, device and computer readable storage medium
CN111465001B (en) * 2020-04-01 2023-05-02 中国联合网络通信集团有限公司 Registration method and device
CN111628886B (en) * 2020-04-14 2023-06-09 苏宁金融科技(南京)有限公司 Method, device and computer equipment for building blockchain network in private cloud environment
CN111641715A (en) * 2020-05-29 2020-09-08 深圳壹账通智能科技有限公司 Data processing method, device, equipment and medium based on block chain
CN113852655A (en) * 2020-06-28 2021-12-28 北京金山云网络技术有限公司 Information management method and device and block chain service system
CN112636981B (en) * 2020-12-28 2023-02-17 杭州趣链科技有限公司 Block chain host, and proxy method, device and storage medium thereof
CN113112325B (en) * 2021-03-23 2024-05-21 中国联合网络通信集团有限公司 Leasing method and communication device of Internet of things equipment
CN113259462B (en) * 2021-06-02 2021-10-15 支付宝(杭州)信息技术有限公司 Block chain message distribution method and device
CN114791859B (en) * 2022-06-15 2022-10-14 北京百度网讯科技有限公司 Component processing method, device, equipment and storage medium based on block chain BaaS
CN115550307A (en) * 2022-09-20 2022-12-30 中国银行股份有限公司 Service processing method, service end, user end and system based on block chain

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106228446A (en) * 2016-05-12 2016-12-14 北京众享比特科技有限公司 Transaction in assets plateform system based on privately owned block chain and method
CN106790513A (en) * 2016-12-19 2017-05-31 杜伯仁 The method that network share service is realized based on block chain
WO2017167549A1 (en) * 2016-03-30 2017-10-05 British Telecommunications Public Limited Company Untrusted code distribution

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10142347B2 (en) * 2016-02-10 2018-11-27 Bank Of America Corporation System for centralized control of secure access to process data network
US10440101B2 (en) * 2016-02-22 2019-10-08 Bank Of America Corporation System for external validation of private-to-public transition protocols

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017167549A1 (en) * 2016-03-30 2017-10-05 British Telecommunications Public Limited Company Untrusted code distribution
CN106228446A (en) * 2016-05-12 2016-12-14 北京众享比特科技有限公司 Transaction in assets plateform system based on privately owned block chain and method
CN106790513A (en) * 2016-12-19 2017-05-31 杜伯仁 The method that network share service is realized based on block chain

Also Published As

Publication number Publication date
CN107911421A (en) 2018-04-13

Similar Documents

Publication Publication Date Title
CN107911421B (en) Method, apparatus, and computer storage medium for configuring cross-network communications in a blockchain
CN108305072B (en) Method, apparatus, and computer storage medium for deploying a blockchain network
CN107317730B (en) Method, equipment and system for monitoring state of block chain node
CN108886477B (en) Equipment configuration method and device, client terminal equipment and cloud server
US10397352B2 (en) Network infrastructure management
US10057113B2 (en) Techniques for workload coordination
EP3846522A1 (en) Mec platform deployment method and device
CN108769258B (en) Method and apparatus for hosting blockchain network to blockchain application platform
JP6314236B2 (en) Entity handle registry to support traffic policy enforcement
US9021005B2 (en) System and method to provide remote device management for mobile virtualized platforms
US11245577B2 (en) Template-based onboarding of internet-connectible devices
CN111221619A (en) Method, device and equipment for opening and arranging service
CN110058894B (en) Method, apparatus and computer program product for executing applications in a hybrid cloud
US11243793B2 (en) Virtual machine management
US11341233B2 (en) Enforcing policies for unmanaged applications
BRPI0919394B1 (en) COMPUTER-LEGIBLE STORAGE MEDIA HAVING A METHOD TO LINK AN IMPLEMENTED CONTRACT TO A TARGET SERVICE WITHIN A DISTRIBUTED COMPUTER ENVIRONMENT, COMPUTERIZED METHOD TO LINK TO A COMPUTER CLIENT SERVICE IN AN AMBIENT CUSTOMER SERVICE METHOD THAT AUTOMATICALLY CONNECTS A CUSTOMER SERVICE TO A TARGET SERVICE THROUGH THE IMPLEMENTATION AND LINK OF A CONTRACT AVAILABLE BY A DISTRIBUTED COMPUTER ENVIRONMENT
US9736027B2 (en) Centralized enterprise image upgrades for distributed campus networks
CN104967515A (en) Identity authentication method and server
US11757976B2 (en) Unified application management for heterogeneous application delivery
US20220327044A1 (en) Generating a software application
US20220132303A1 (en) Internet of things device provisioning
CN115604103A (en) Configuration method and device of cloud computing system, storage medium and electronic equipment
US10637924B2 (en) Cloud metadata discovery API
CN110266501A (en) Block chain node device and block chain network system
US20220291965A1 (en) Policy management in target environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1252566

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200515

Termination date: 20211030