WO2023168970A1 - 一种区块链网络的管理方法及相关设备 - Google Patents

一种区块链网络的管理方法及相关设备 Download PDF

Info

Publication number
WO2023168970A1
WO2023168970A1 PCT/CN2022/130584 CN2022130584W WO2023168970A1 WO 2023168970 A1 WO2023168970 A1 WO 2023168970A1 CN 2022130584 W CN2022130584 W CN 2022130584W WO 2023168970 A1 WO2023168970 A1 WO 2023168970A1
Authority
WO
WIPO (PCT)
Prior art keywords
platform
interface
blockchain
user
alliance
Prior art date
Application number
PCT/CN2022/130584
Other languages
English (en)
French (fr)
Inventor
张晓天
张子怡
曲强
Original Assignee
华为云计算技术有限公司
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
Priority claimed from CN202210550637.2A external-priority patent/CN116781475A/zh
Application filed by 华为云计算技术有限公司 filed Critical 华为云计算技术有限公司
Publication of WO2023168970A1 publication Critical patent/WO2023168970A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements

Definitions

  • This application relates to the field of blockchain technology, and in particular to a management method, platform, computer cluster, computer-readable storage medium, and computer program product of a blockchain network.
  • the blockchain network includes multiple nodes, and the multiple nodes in the blockchain network can be nodes managed by different departments.
  • the server can receive the request from the client (also called the user), classify, process and approve the request, and then the server can upload the interaction data with the client to the blockchain network for storage.
  • the server lacks unified management capabilities, making it difficult to achieve centralized operation or operation. Dimensionality makes it difficult to meet business needs.
  • This application provides a blockchain network management method by registering an organization with a consistent structure for users of different user categories (such as on-cloud users or off-cloud users), and combining the organization with the resource space corresponding to the user category (such as Tenant space on the cloud or physical resource set under the cloud) to associate.
  • the processing interface of the resource space is uniformly called and the business logic corresponding to the processing interface is executed.
  • the unified management of the blockchain network deployed on the cloud and the blockchain network deployed under the cloud is realized, and the centralized operation or maintenance of the blockchain network with different deployment methods can be carried out, reducing the difficulty of operation or maintenance and reducing the cost of operation and maintenance.
  • the cost of operation or maintenance also provides a blockchain network management platform, computer cluster, computer-readable storage medium and computer program product corresponding to the above method.
  • embodiments of the present application provide a management method for a blockchain network.
  • This method can be executed by the management platform of the blockchain network (referred to as the management platform).
  • the management platform may be a software system.
  • the software system is deployed in a computer cluster.
  • the computer cluster executes the blockchain network management method of the embodiment of the present application by running the program code of the software system.
  • the management platform can also be a hardware system with blockchain network management functions, and the hardware system can be one or more computers in a computer cluster.
  • the management platform receives a user registration request.
  • the user registration request includes the user category of the user.
  • the user category is determined according to the deployment method of the blockchain network managed by the user. For example, the user category includes on-cloud users or off-cloud users.
  • the management platform According to the user registration request, the corresponding organization is registered for the user. The organization is associated with a resource space corresponding to the user category.
  • the management platform can call the processing interface of the resource space and execute the business logic corresponding to the processing interface.
  • the management platform registers an organization with a consistent structure for users of different user categories (such as on-cloud users or off-cloud users), and associates the organization with the resource space corresponding to the user category (such as tenant space on the cloud or cloud user space).
  • the physical resource set under) is associated.
  • the management platform can uniformly call the processing interface of the resource space and execute the business logic corresponding to the processing interface. In this way, the unified management of the blockchain network deployed on the cloud and the blockchain network deployed under the cloud is realized, and the centralized operation or maintenance of the blockchain network with different deployment methods can be carried out, reducing the difficulty of operation or maintenance and reducing the cost of operation and maintenance. The cost of operation or maintenance.
  • the user category includes cloud users, and the resource space corresponding to the cloud user includes tenant space.
  • the blockchain network deployed on the cloud can be managed in a unified manner, and the need for centralized operation or maintenance of the blockchain network deployed on the cloud can be met.
  • the management platform can call the business chain creation interface of the tenant space to create a business chain. This enables one-click chain building, reduces user operations, improves the efficiency of blockchain network construction and deployment, and improves user experience.
  • the management platform can create a single or multiple business chains that meet business needs based on business needs. For example, the management platform can create multiple business chains, and at least two of the multiple business chains have a common node; for another example, the management platform can create multiple business chains, and the multiple business chains do not have a common node. ; The management platform can also create a single business chain, and each node of the business chain is located in the same tenant space.
  • the management platform can select the corresponding connection mode to create a business chain according to the business requirements for security, performance, and cost, thereby adapting to different business scenarios and having high availability.
  • the management platform can obtain link building mode parameters and create single or multiple business chains based on the link building mode parameters. This method fully encapsulates the underlying chain building process, shields core structural differences, enables rapid construction of business chains, and saves operation and maintenance costs.
  • the link building mode parameters are configured according to the trust relationship between the users.
  • the alliance participants can be mapped to different tenant spaces to form an alliance.
  • the chain building methods of the alliance can include: using the same blockchain instance/organization/node as the inviting party to build a multi-chain alliance to realize a multi-sub-chain alliance model with reusable resources; using different blockchain instances/ Organizations/nodes act as inviters to build multiple single-chain alliances to achieve a single-chain isolation alliance model in which resources cannot be reused.
  • users who have a certain trust relationship they can be deployed in the same tenant space, mapping the participants to organizations in the private chain, nodes with the same owner, etc., and building a private chain between the participants. This can achieve a balance between resource utilization and security.
  • the user category includes off-cloud users, and the resource space corresponding to the off-cloud users includes a physical resource set.
  • the blockchain network deployed under the cloud can be managed in a unified manner, and the need for centralized operation or maintenance of the blockchain network deployed under the cloud can be met.
  • the management platform can call the alliance creation interface of the resource space to create a blockchain node in the resource space to create an alliance.
  • the management platform can also call the alliance joining interface of the resource space to create a blockchain node in the resource space to join the alliance.
  • the management platform can also call the alliance exit interface of the resource space to recycle blockchain nodes in the resource space to withdraw from the alliance.
  • the management platform can also call the alliance deletion interface of the resource space to recycle blockchain nodes in the resource space to delete the alliance.
  • the management platform supports the creation, joining, withdrawal or deletion of alliances to realize flexible adjustment of alliances and dynamically meet business needs.
  • the resource space may come from heterogeneous blockchain platforms, such as blockchain platforms with different architectures or cores.
  • the management platform can also receive a platform registration request and register the standard interface of the heterogeneous blockchain platform through the platform registration interface.
  • the management platform registers the standard interface of the heterogeneous blockchain platform to call the underlying heterogeneous blockchain platform through the standard interface, thereby achieving unified management of the heterogeneous blockchain platform and solving the problem of heterogeneous blockchain platforms.
  • the problem is that the blockchain platform cannot be managed in one stop.
  • the resource space can come from a heterogeneous blockchain platform.
  • the heterogeneous blockchain platform has a management plane interface.
  • the management platform can receive a platform registration request and then obtain the management plane interface corresponding A standard interface to register the heterogeneous blockchain platform.
  • the standard interface corresponding to the management plane interface can be obtained through interface mapping. Without the need for secondary opening, unified management of heterogeneous blockchain platforms can be achieved and avoid It eliminates the repeated construction and long-term business transformation of the blockchain platform, and uniformly maintains, schedules and monitors the business and resources under the user's name.
  • the management platform of the blockchain network provides a business interface.
  • the management platform can execute corresponding business logic in response to the business server's call to the business interface.
  • This method reduces the cost of operation or maintenance by shielding the underlying business logic and realizing one-stop operation or maintenance of the blockchain network based on a unified business interface.
  • inventions of the present application provide a management platform for a blockchain network.
  • the platforms include:
  • a communication module configured to receive a user registration request, where the user registration request includes the user category of the user, and the user category is determined according to the deployment mode of the blockchain network managed by the user;
  • a registration module configured to register a corresponding organization for the user according to the user registration request, and the organization is associated with a resource space corresponding to the user category;
  • the execution module is used to call the processing interface of the resource space and execute the corresponding business logic.
  • the user category includes cloud users, and the resource space corresponding to the cloud user includes tenant space.
  • the execution module is specifically used to:
  • the execution module is specifically used to:
  • the execution module is specifically used to:
  • the link building mode parameters are configured according to the trust relationship between the users.
  • the user category includes off-cloud users, and the resource space corresponding to the off-cloud users includes a physical resource set.
  • the execution module is specifically used to:
  • the alliance deletion interface of the resource space is called, and the blockchain nodes are recycled in the resource space to delete the alliance.
  • the resource space comes from a heterogeneous blockchain platform
  • the communication module is also used to:
  • the registration module is also used to:
  • the resource space comes from a heterogeneous blockchain platform
  • the heterogeneous blockchain platform has a management plane interface
  • the communication module is also used to:
  • the registration module is also used to:
  • the management platform of the blockchain network provides a business interface
  • the execution module is specifically used to:
  • this application provides a computer cluster.
  • the computer cluster includes at least one computer including at least one processor and at least one memory.
  • the at least one processor and the at least one memory communicate with each other.
  • the at least one processor is configured to execute instructions stored in the at least one memory, so that the computer or computer cluster executes the management method of a blockchain network as described in the first aspect or any implementation of the first aspect.
  • the present application provides a computer-readable storage medium that stores instructions instructing a computer or a computer cluster to execute the above-mentioned first aspect or any implementation of the first aspect.
  • the management method of the blockchain network is not limited to, but not limited to, but not limited to,
  • the present application provides a computer program product containing instructions that, when run on a computer or computer cluster, causes the computer or computer cluster to execute the above-mentioned first aspect or any implementation of the first aspect.
  • Blockchain network management methods
  • Figure 1 is a schematic architectural diagram of a data management system provided by an embodiment of the present application.
  • Figure 2 is a schematic architectural diagram of a data management system provided by an embodiment of the present application.
  • Figure 3 is a flow chart of a blockchain network management method provided by an embodiment of the present application.
  • Figure 4 is a flow chart of a blockchain network management method provided by an embodiment of the present application.
  • Figure 5 is a schematic diagram of a link building mode of a cloud blockchain network provided by an embodiment of the present application.
  • Figure 6 is a flow chart of a blockchain network management method provided by an embodiment of the present application.
  • Figure 7 is a flow chart of a blockchain network management method in a government affairs scenario provided by an embodiment of the present application.
  • Figure 8 is a schematic structural diagram of a blockchain network management platform provided by an embodiment of the present application.
  • Figure 9 is a schematic structural diagram of a computer cluster provided by an embodiment of the present application.
  • first and second in the embodiments of this application are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as “first” and “second” may explicitly or implicitly include one or more of these features.
  • the blockchain network is a decentralized network formed by multiple nodes. Nodes in the blockchain network are connected through point-to-point connections, forming a Peer-to-Peer (P2P) network. In this point-to-point network, there is no centralized service and hierarchical structure for the nodes, and each node is peer-to-peer. Therefore, the nodes in this network are also called peer nodes, that is, peer nodes.
  • P2P Peer-to-Peer
  • the blockchain network is used to provide distributed ledger and smart contract services for applications (which can be referred to as applications).
  • transaction logic is defined in the smart contract.
  • Smart contracts are used to generate transactions, which are distributed to each peer node in the blockchain network.
  • Each peer node records these transactions on its own copy of the ledger, and the copy of the ledger cannot be tampered with.
  • Transactions can usually be recorded in the form of blocks. Different transactions can be recorded in different blocks, and different blocks can be connected to form a blockchain. Therefore, a copy of the ledger can be a blockchain.
  • the industry has proposed a data sharing model that uses blockchain networks for data sharing.
  • the business needs are analyzed to clarify the business content that needs to be carried, so as to establish the client (also called the user), server, and blockchain network.
  • the client 100 is connected to the server 200
  • the server 200 is connected to the blockchain network 300.
  • the blockchain network 300 includes multiple nodes 302, such as nodes 302 managed by different users.
  • the server 200 can perform classification processing and approval after receiving the request from the client 100.
  • the server 200 uploads the interaction data between the client 100 and the server 200 to the blockchain network 300 for storage in real time. This solves the problem of data inconsistency caused by the traditional data sharing model that requires a large amount of manual approval and the data is copied and transferred. Through the joint maintenance and utilization of data across departments and regions, it promotes business digital reform and realizes intelligent governance. .
  • the client 100 needs to use multiple blockchain networks 300.
  • the client 100 needs to use the blockchain network 300 deployed on the cloud (also called cloud chain) to share large-capacity information, and the blockchain network 300 deployed under the cloud (also called offline scattered chain) to share Share information with high security requirements.
  • the server 200 lacks unified management capabilities, making it difficult to achieve centralized operation or maintenance, and thus difficult to meet business needs.
  • embodiments of the present application provide a management method for a blockchain network.
  • This method can be executed by the management platform of the blockchain network (referred to as the management platform).
  • the management platform may be a software system.
  • the software system is deployed in a computer cluster.
  • the computer cluster executes the blockchain network management method of the embodiment of the present application by running the program code of the software system.
  • the management platform can also be a hardware system with blockchain network management functions, and the hardware system can be one or more computers in a computer cluster.
  • the following uses the management platform as a software system as an example.
  • the management platform can receive a user registration request.
  • the user registration request includes the user category of the user.
  • the user category is determined according to the deployment method of the blockchain network managed by the user.
  • the user category includes on-cloud users or off-cloud users.
  • On-cloud users Users refer to users who connect the blockchain network deployed on the cloud to the management platform.
  • they can be tenants of the cloud platform.
  • Off-cloud users refer to users who connect the blockchain network deployed under the cloud to the management platform.
  • the management platform registers the corresponding organization for the user based on the user registration request.
  • the organization is associated with a resource space corresponding to the user category.
  • the management platform can call the processing interface of the resource space and execute the business logic corresponding to the processing interface.
  • the management platform registers an organization with a consistent structure for users of different user categories (such as on-cloud users or off-cloud users), and associates the organization with the resource space corresponding to the user category (such as tenant space on the cloud or cloud user space).
  • the physical resource set under) is associated.
  • the management platform can uniformly call the processing interface of the resource space and execute the business logic corresponding to the processing interface. In this way, the unified management of the blockchain network deployed on the cloud and the blockchain network deployed under the cloud is realized, and the centralized operation or maintenance of the blockchain network with different deployment methods can be carried out, reducing the difficulty of operation or maintenance and reducing the cost of operation and maintenance. The cost of operation or maintenance.
  • the management method and management platform of the blockchain network in the embodiment of this application can be applied to different industries or fields.
  • the management platform can be a management platform for a blockchain network in the financial industry.
  • the blockchain network management method in the embodiment of this application By executing the blockchain network management method in the embodiment of this application, unified management of the blockchain networks of different metal institutions can be achieved.
  • the management platform can be a management platform for a blockchain network for government affairs.
  • different organizations or departments (such as the tax bureau, housing management bureau, human resources and social security department) for unified management of the blockchain network.
  • This method allows the user to uniformly manage all blockchain networks that the user has accessed to the management platform, and monitor the user's business. Moreover, this method can provide functions such as identity authentication management, business management, voucher conversion, data collection and display, contract management, application warehouse, internal application programming interface (API) gateway, etc. Based on the above functions, business processes can be simplified , allowing users (such as administrators) to more easily manage the underlying blockchain network and deploy alliances and smart contracts with one click.
  • functions such as identity authentication management, business management, voucher conversion, data collection and display, contract management, application warehouse, internal application programming interface (API) gateway, etc.
  • the system architecture of the embodiment of the present application is introduced below in conjunction with the accompanying drawings.
  • the data management system 10 shown in Figure 2 also includes a management platform 400 of the blockchain network.
  • the management platform 400 is connected to the server 200 and the blockchain network 300 respectively.
  • the blockchain network 300 can be established based on the blockchain platform.
  • the blockchain platform refers to a platform used to establish the blockchain network 300 and manage the blockchain network 300 and the blockchain copies (distributed ledgers) in the blockchain network 300.
  • blockchain platforms can be divided into different types.
  • blockchain platforms can be divided into different types such as Fabric, Quorum, and Ethereum based on the core.
  • the above different types of blockchain platforms are also called heterogeneous blockchain platforms.
  • Blockchain networks established based on different types of blockchain platforms are called heterogeneous blockchain networks, which can be referred to as heterogeneous chains. It should be noted that each blockchain network 300 carries at least one business logic, therefore, the blockchain network 300 can also be called a business chain.
  • the following describes the functions of the client 100, the server 200, the blockchain network 300 and the management platform 400 in the data management system 10.
  • the client 100 is used to send user registration instructions.
  • the user registration instructions include the user's user category.
  • the user category can be determined according to the deployment method of the user-managed blockchain network 300. For example, when the blockchain network 300 adopts an on-cloud deployment mode, the user category is an on-cloud user; when the blockchain network 300 adopts an off-cloud deployment mode, the user category is an off-cloud user.
  • the client 100 is used to provide a registration interface to the user.
  • the registration interface can be a graphical user interface (graphical user interface, GUI) or a command user interface (command user interface, CUI).
  • GUI graphical user interface
  • CUI command user interface
  • the user can trigger the registration interface through the registration interface.
  • User registration operation the client 100 generates a user registration instruction in response to the user registration operation, and then sends the user registration instruction.
  • the server 200 is configured to receive user registration instructions, and then call the user registration interface according to the user registration instructions, and send a user registration request to the management platform 400 to implement user registration.
  • the user registration request includes the user category of the user.
  • the server 200 is also used to perform process approval, business chain construction, business chain operation or maintenance. Among them, the server 200 realizes business chain construction, business chain operation or maintenance through the management platform 400.
  • the management platform 400 is used to receive a user registration request, and then register a corresponding organization for the user according to the user registration request.
  • the organization is associated with a resource space corresponding to the user category, and then calls the processing interface of the resource space to execute corresponding business logic.
  • the resource space processing interface may include one or more of an alliance creation interface, an alliance joining interface, an alliance exit interface, or an alliance deletion interface.
  • the management platform 400 may call the above interfaces to create an alliance, join an alliance, exit an alliance, or delete an alliance. .
  • the blockchain network 300 is used to access the management platform 400 to facilitate unified management by users.
  • the blockchain platform on which the blockchain network 300 relies can be connected to the management platform 400 through the unified access interface for different blockchain platforms provided by the management platform 400, thereby realizing the access of the blockchain network 300 to the management platform. 400.
  • Different blockchain networks 300 can form an alliance (for example, an alliance chain network) by creating an alliance, joining an alliance, and other operations. Blockchain networks 300 in the same alliance can share data to meet business needs.
  • the management platform 400 can provide a unified business interface for different blockchain platforms.
  • the business interface is specifically an external business interface.
  • Users (such as administrators) of the blockchain network 300 who access the management platform 400 can call the external business interface through the client to execute corresponding business logic.
  • the following uses a client as an example. Users can trigger business operations through the controls of the external business interface displayed by the client 100.
  • the client 100 calls the external business interface to generate a business request.
  • the server 200 receives the business request and sends the business request to the management platform 400.
  • the management platform 300 receives the business request and can schedule the underlying blockchain platform according to the business request. Among them, the management platform 300 can call the corresponding underlying platform interface according to the user category and blockchain platform category in the business request to schedule the blockchain platform (specifically, the business chain in the blockchain platform).
  • the management platform 400 can also set a process engine.
  • the process engine can parse business requests and obtain corresponding tasks.
  • the process engine can then automate one or more of the blockchain network creation, invitation, notification, or approval tasks in parallel or serial execution. After the task is issued, users can also obtain the processing progress of the current business operation through the task progress query interface.
  • the management platform 400 can be deployed on a cluster in a certain tenant space in the cloud platform.
  • the management platform 400 can also configure a database for storing user data.
  • the process engine in the management platform 400 can start certain scheduled tasks, poll the alliances managed in the database, and update user data, such as monitoring data, status data, etc., so as to realize the alliance managed by the management platform 400 when users query. Displayed to users uniformly.
  • management platform 400 internally maintains tenant management, business management, contract management and other modules to realize tenant management functions such as permission control, quota query, resource allocation, and business management such as creation, deletion, joining or exit of alliances/business chains. functions, as well as contract management functions such as contract query, contract deployment, contract termination, and contract scanning.
  • the management platform 400 also maintains modules such as resource governance, alarm logs, application warehouses, ledger information, platform information, configuration management, etc., thereby realizing resource governance functions such as cluster monitoring, resource (node resources, application resources) issuance or recycling, etc.
  • Alarm and log management functions such as alarm viewing, audit log viewing, and operation log viewing, application management functions such as application browsing, installation, and uninstallation, and ledger information management functions such as block information query, transaction query, ledger summary query, and transaction details query, etc.
  • Platform Platform information management functions such as health status query and platform registration information, and configuration management functions such as software development toolkit (SDK) download and certificate download.
  • SDK software development toolkit
  • the method includes:
  • S302 The management platform 400 receives the user registration request.
  • the user registration request includes the user's user category.
  • the user category can be determined according to the deployment method of the user-managed blockchain network 300.
  • the user category may include different categories such as on-cloud users or off-cloud users.
  • the blockchain network 300 managed by a user is deployed on the cloud (deployed on a cloud platform)
  • the user is a cloud user.
  • cloud users can be tenants of the cloud platform.
  • the user-managed blockchain network 300 adopts an off-cloud deployment method the user is an off-cloud user.
  • the management platform 400 can receive the user registration request sent by the server 200.
  • the client 100 can load the code of the registration interface from the server 200, thereby presenting the registration interface to the user.
  • the registration interface may include a user registration control.
  • the user can trigger a user registration operation through the registration control.
  • the client generates a user registration instruction and then sends the user registration instruction to the server 200.
  • the server 200 can call the user registration interface and send a user registration request to the management platform 400 to register the user.
  • the server 200 can also support process approval for user registration.
  • This process approval can be automatic approval.
  • the server 200 can perform automatic approval based on preset approval logic, which can reduce a large amount of manual approval, improve efficiency, and reduce costs.
  • the server 200 can send a user registration request to the management platform 400.
  • the blockchain network 300 managed by the user may be a deployed blockchain network 300 or a blockchain network 300 to be deployed.
  • the deployment method of the blockchain network 300 can be determined according to the blockchain platform, and then the user category can be determined.
  • the user category can be determined.
  • the embodiments of this application can manage the existing blockchain network 300, for example, add the existing blockchain network to the alliance, or you can first become an alliance participant, and then build or deploy the corresponding blockchain network 300 .
  • S304 The management platform 400 registers the corresponding organization for the user according to the user registration request.
  • An organization is a data structure that represents the groups to which a user belongs.
  • the group can be a company, unit (such as a public institution), association or department (such as a government affairs department) to which the user belongs.
  • the organization is associated with the resource space corresponding to the user category.
  • the organization can associate the tenant space on the cloud, and the tenant space can be the tenant space corresponding to the tenant identifier (identifier, ID) uploaded by the cloud user.
  • the organization can associate a physical resource set.
  • the physical resource set includes one or more physical resources.
  • the physical resource can be a node resource.
  • the physical resource set associated with the organization may be the physical resources identified by the physical resource information uploaded by the user.
  • the physical resource information includes the address of the node, such as the Internet Protocol (Internet Protocol, IP) address of the node. Further, the physical resource information also includes the port number of the node, etc.
  • the organization includes an organization identifier (which can be an organization code, denoted as OrgCode), a tenant identifier (TenantID), and physical resource information (specifically, a node list, denoted as NodeList).
  • the organization identifier is a unique identifier assigned by the management platform 400, and the data type of the organization identifier may be a string.
  • the data type of physical resource information can be an array, specifically an array of node information, recorded as []Node.
  • the organization can also include the tenant name (TenantName), project identification (ProjectID), project name (ProjectName), access key (access key, AK), security key ( One or more of secret key (SK), token and certificate.
  • the certificate includes the Transport Layer Security Protocol (Transport Layer Security, TLS) certificate.
  • the TLS certificate can be recorded as TlsCert, and the data type of the certificate is Cert.
  • the data type of other fields in the organization except TLSCert and NodeList can be string.
  • the management platform 400 can provide an organization with a unified user registration format according to the user registration request.
  • the management platform 400 registers a corresponding organization for the user, and the tenant ID in the organization is the tenant ID input by the user. Further, the tenant name in the organization is the tenant name corresponding to the tenant ID input by the user.
  • the NodeList in this organization can be empty or have a default value.
  • the management platform 400 registers the corresponding organization for the user.
  • the tenant ID and tenant name in the organization can be empty or default values.
  • the NodeList in the organization can be an array input by the user.
  • the array It is an array of node information.
  • the node information includes the IP address and port number of the node.
  • the TLSCert in the organization is the certificate entered by the user.
  • the management platform 400 assigns an organization identifier to the organization corresponding to the user, and stores the organization in the back-end database, thereby abstracting the user into an alliance participant, thereby realizing organization registration.
  • the management platform 400 calls the processing interface of the resource space and executes the corresponding business logic.
  • the processing interfaces of the resource space include the creation alliance interface, the alliance joining interface, the alliance exit interface or the alliance deletion interface of the resource space.
  • the create alliance interface is used to create an alliance.
  • the user (creator) who creates the alliance can create an alliance
  • the join alliance interface is used to join the alliance, specifically to join the alliance created by the creator.
  • the creator can invite other users to join the alliance created by the creator.
  • the exit alliance interface is used to exit the alliance.
  • the creator or other users can leave the alliance.
  • Delete alliance interface is used to delete alliances. Typically, deletion of an alliance can be triggered by the creator. In some possible implementations, other users can also trigger the deletion of the alliance.
  • the management platform 400 can call the alliance creation interface of the resource space to create a blockchain node in the resource space to create an alliance.
  • the management platform 400 can also call the alliance joining interface of the resource space to create a blockchain node in the resource space to join the alliance.
  • the management platform 400 can call the exit alliance interface of the resource space to recycle the blockchain nodes in the resource space to exit the alliance, or call the delete alliance interface of the resource space to recycle the blockchain nodes in the resource space. to delete the alliance.
  • the management platform 400 can make different forms of interface calls according to the organization category (user category). For example, when the organization type is a cloud organization and the user is a cloud user, the management platform 400 can call the processing interface of the resource space according to AK/SK. For another example, when the organization type is an off-cloud organization and the user is an off-cloud user, the management platform 400 can call the processing interface of the resource space based on TLSCert.
  • the organization category user category
  • the management platform 400 can call the processing interface of the resource space according to AK/SK.
  • the management platform 400 can call the processing interface of the resource space based on TLSCert.
  • the management platform 400 can also call the creation alliance interface of the resource space to create an alliance based on the existing blockchain network 300 on the resource space. Similarly, the management platform 400 can call the join alliance interface of the resource space to add the existing blockchain network 300 on the resource space to the alliance. The management platform 400 can call the alliance exit interface of the resource space and recycle the existing node resources of the blockchain network 300 in the resource space to launch the alliance. In some embodiments, the management platform 400 can call the alliance deletion interface of the resource space to recycle the node resources of the existing blockchain network 300 in the resource space of each participant to delete the alliance.
  • embodiments of this application provide a management method for a blockchain network.
  • This method registers an organization with a unified data structure for users of different user categories, and associates the organization with the resource space corresponding to the user category.
  • the processing interface of the resource space can be uniformly called to execute the business logic corresponding to the processing interface.
  • the unified management of the blockchain network deployed on the cloud and the blockchain network deployed under the cloud is realized, and the centralized operation or maintenance of the blockchain network with different deployment methods can be carried out, reducing the difficulty of operation or maintenance and reducing the cost of operation and maintenance.
  • the cost of operation or maintenance can also provide management capabilities for existing blockchain networks (such as business chains) and unified management capabilities for heterogeneous chains, thereby improving availability.
  • the method includes the following steps:
  • Step 1 The client 100 responds to user registration operations triggered by user A, user B, user C, and user D, and generates a user registration instruction.
  • Step 2 The server 200 receives the user registration instruction sent by the client 100, calls the user registration interface, and sends a user registration request to the management platform 400.
  • Step 3 The management platform 400 registers an organization for the user according to the user registration request, and associates the organization with the tenant space corresponding to the tenant ID input by the user.
  • the management platform 400 can be deployed on a tenant space separately allocated to the management center by the default cloud base, and the tenant space is not used for business purposes. If there are no special needs, the management platform 400 may not manage other blockchain platforms and only use the default blockchain platform, such as blockchain platform 1 shown in Figure 4.
  • the management platform 400 associates the organization with the tenant space corresponding to the tenant ID input by the user.
  • the management platform may bind the organization with the tenant space, thereby registering the resource space information to the management platform 400.
  • resource spaces such as tenant space are usually not reusable, that is, resource spaces such as tenant space are usually bound to an organization and will not be bound repeatedly.
  • Step 4 In response to the alliance creation operation triggered by user A, the client 100 generates an alliance creation instruction and sends the alliance creation instruction to the server 200.
  • the creation alliance instruction includes the user ID of user B.
  • the alliance creation instruction is used to create an alliance in which the organization corresponding to user A and the organization corresponding to user B are alliance participants.
  • Step 5 The server 200 calls the alliance creation interface of the management platform 400 and sends an alliance creation request to the management platform 400.
  • the alliance creation interface of the management platform 400 is a standard interface.
  • the interface parameters of the creation alliance interface include the platform type, which is recorded as oemType.
  • OEMType may be blockchain platform 1, which is used to instruct the management platform 400 to create the blockchain network 300 on the blockchain platform 1 to create an alliance.
  • Step 6 The management platform 400 calls the alliance creation interface of the blockchain platform 1 based on the tenant information bound by user A and user B, and sends an alliance creation request to the blockchain platform 1.
  • the tenant information may include AK/SK, and the management platform 400 may call the alliance creation interface of the blockchain platform 1 based on the AK/SK.
  • Step 7 Blockchain platform 1 creates a blockchain node in the tenant space associated with the organization corresponding to user A, and creates a blockchain node in the tenant space associated with the organization corresponding to user B, and establishes an alliance through approval logic.
  • Step 8 The management platform 400 queries the task status in the blockchain platform 1, and when the task is successful, saves the alliance.
  • the management platform 400 can also abstract the data structure of the alliance for storage.
  • the data structure of the union includes union identification (UnionID), platform type (OemType) and organization list (denoted as Orgs). Further, refer to the data structure of the alliance shown in Table 2.
  • the data structure of the alliance also includes one or more of an alliance leader, a business chain identifier (denoted as UID), and a business chain name.
  • ID refers to the internal ID assigned by the management platform 400, which can usually be a sequence number (sequence, SEQ).
  • SEQ sequence number
  • UID refers to the operation and maintenance chain ID
  • UnionID refers to the alliance ID
  • CreatorOrg refers to the alliance leader, specifically to create an alliance. organization.
  • the above-mentioned steps 6 to 8 are an implementation manner in which the management platform 400 calls the processing interface of the resource space and executes the corresponding business logic.
  • the management platform 400 can also call the processing interface of other resource spaces to execute corresponding business logic, as shown in steps 9 to 12.
  • Step 9 In response to the alliance creation operation triggered by user C, the client 100 generates an alliance creation instruction and sends the alliance creation instruction to the server 200.
  • the creation alliance instruction includes the user ID of user D, and the alliance creation instruction is used to create an alliance in which the organization corresponding to user C and the organization corresponding to user D are alliance participants.
  • Step 10 The server 200 calls the alliance creation interface of the management platform 400 and sends an alliance creation request to the management platform 400.
  • the alliance creation interface of the management platform 400 is a standard interface.
  • the interface parameters of the created alliance interface include oemType.
  • OEMType may be blockchain platform 2, which is used to instruct the management platform 400 to create the blockchain network 300 on the blockchain platform 2 to create an alliance.
  • the blockchain platform 2 can be an offline blockchain platform or other cloud platforms.
  • Step 11 The management platform 400 calls the alliance creation interface of the blockchain platform 2 based on the tenant information bound by user C and user D, and sends an alliance creation request to the blockchain platform 2.
  • Step 12 Blockchain platform 2 creates a blockchain node in the physical resource set C associated with the organization corresponding to user A, and creates a blockchain node in the physical resource set D associated with the organization corresponding to user B, and reaches an alliance through approval logic. .
  • steps 4 to 7 and steps 9 to 12 are respectively to create alliances on different blockchain platforms.
  • one or more alliances can also be created on one blockchain platform. This embodiment does not do this. limit.
  • Step 12 The management platform 400 returns the information of the alliance managed by the management platform 400 through the query interface.
  • the management platform 400 can return the information of each alliance managed by the management platform 400 in a unified format through the query interface.
  • the management platform 400 may return the union ID UnionID and the organization identification OrgCode of the organizations in the union.
  • the embodiment shown in FIG. 4 is illustrated by using the management platform 400 to call the alliance creation interface and execute the business logic of creating the alliance, and to call the query interface and execute the business logic of querying the alliance.
  • the management platform 400 can also call the join alliance interface of the resource space to create a blockchain node in the resource space to execute the business logic of joining the alliance; call the exit alliance interface of the resource space interface to recycle blockchain nodes in the resource space to execute the business logic of exiting the alliance; or to call the deletion alliance interface of the resource space to recycle blockchain nodes in the resource space to execute the business of deleting the alliance. logic.
  • the management platform 400 is built based on the multi-tenant model of the cloud system, making full use of the elasticity, stability and flexibility of cloud computing. Users can maintain tenant resources by themselves, freely expand and contract capacity, and facilitate uplinking. Furthermore, the management platform 400 registers an organization with a consistent data structure for each user, and binds the organization to the resource space corresponding to the user category, such as the tenant space corresponding to the user on the cloud or the physical resource set corresponding to the user under the cloud, so that through the resource space Process the interface and execute the corresponding business logic, thereby achieving unified management of the blockchain network deployed on the cloud and the blockchain network deployed under the cloud, and reducing operation and maintenance costs.
  • Figure 4 illustrates the process of creating an alliance, and then illustrates the establishment of a blockchain network 300.
  • the blockchain network 300 deployed under the cloud can usually be established in a private chain mode, and the blockchain network 300 deployed on the cloud can have multiple chain building modes.
  • the embodiment of this application abstracts the mapping model of multiple business processes and the blockchain network 300 deployed on the cloud, and provides multi-modal business chain management capabilities.
  • the management platform 400 can create multiple business chains. At least two of the multiple business chains have a common node, such as peer1 in tenant space A. , peer2 or peer1 in tenant space B. Among them, the link building mode in which the management platform 400 creates multiple business chains with common nodes in multiple tenant spaces of the cloud platform is also called the multi-sub-chain mode on the cloud.
  • the management platform 400 can also create multiple business chains without common nodes. As shown in Figure 5, the management platform 400 can create business chain 1 on tenant space A, tenant space B, and tenant space C, and create business chain 2 on tenant space A and tenant space B.
  • the business chain 1 includes tenant space A. Peer nodes such as peer1 and peer2 in Tenant Space B and peer nodes such as Peer1 of Tenant Space C.
  • Business chain 2 includes peer nodes such as peer3 of Tenant Space A and peer2 of Tenant Space B.
  • the link building mode in which the management platform 400 creates multiple business chains without common nodes in multiple tenant spaces of the cloud platform is also called the single-chain isolation mode on the cloud.
  • the management platform 400 can also create a single business chain, which is a private chain on the cloud. As shown in Figure 5, the management platform 400 can create a business chain 1 in tenant space A.
  • the business chain includes peer nodes such as peer1 and peer2 in tenant space A.
  • the chain building mode in which the management platform 400 creates a single business chain in a single tenant space of the cloud platform is also called a private chain mode on the cloud.
  • the management platform 400 can construct blockchain networks with different deployment methods by changing the link building mode parameter createMode. Specifically, the management platform 400 can obtain the link building mode parameters, and create single or multiple business chains according to the link building mode parameters. This method fully encapsulates the underlying chain building process, shields core structural differences, enables rapid construction of business chains, and saves operation and maintenance costs.
  • the link building mode parameters can be configured according to the trust relationship between users.
  • the alliance participants can be mapped to different tenant spaces to form an alliance.
  • the chain building methods of the alliance can include: using the same blockchain instance/organization/node as the inviting party to build a multi-chain alliance to realize a multi-sub-chain alliance model with reusable resources; using different blockchain instances/ Organizations/nodes act as inviters to build multiple single-chain alliances to achieve a single-chain isolation alliance model in which resources cannot be reused.
  • users who have a certain trust relationship they can be deployed in the same tenant space, mapping the participants to organizations in the private chain, nodes with the same owner, etc., and building a private chain between the participants.
  • the management platform 400 can also abstract the data structure of the business chain (denoted as BusiChain) and the data structure of the blockchain (BlockChain).
  • BusiChain the data structure of the business chain
  • BlockChain the data structure of the blockchain
  • the data structure of the business chain includes the alliance ID, business chain name, organization list and blockchain list.
  • the data structure of the business chain may also include one or more of alliance leaders and platform types.
  • the data structure of the blockchain includes the blockchain external ID (denoted as ExternalID), the blockchain list (denoted as BlockChains) and the blockchain configuration information (denoted as BlockSpec).
  • the blockchain configuration information can include consensus algorithm and other information.
  • the data structure of the blockchain also includes one or more of other blockchain information (denoted as ExtraInfo), business chain name, platform type, organization list, and physical resource information.
  • the resource space associated with an organization can come from heterogeneous blockchain platforms.
  • the management platform 400 can also receive a platform registration request and register the standard interface of the heterogeneous blockchain platform through the platform registration interface, thereby achieving unified management of heterogeneous chains in the heterogeneous blockchain platform.
  • the management platform can register the standard interface of the heterogeneous blockchain platform to achieve unified management of heterogeneous chains in the blockchain platform.
  • the management platform 400 can map the management plane interface into a standard interface through interface mapping. Specifically, the management platform 400 can receive the platform registration request, obtain the standard interface corresponding to the management plane interface, and register the standard interface of the heterogeneous blockchain platform. This eliminates the need for secondary development and improves efficiency. For a blockchain platform without a management plane interface, the management platform 400 can develop a standard interface for the blockchain platform.
  • Standard interfaces can include network management, chain management, contract management or operation and maintenance.
  • the standard interfaces of the network management class include one or more of creating a blockchain network interface, deleting a blockchain network interface, adding a blockchain network interface, and exiting a blockchain network interface.
  • the standard interface of the chain management class includes one or more of creating a link port, deleting a link port, adding a link port, and exiting a link port.
  • the standard interface of the contract management class includes one or more of the deployment contract interface, upgrade contract interface, and delete contract interface.
  • the standard interfaces for operation and maintenance include query ledger summary interface, query transaction list interface, query transaction interface, query block list interface, query monitoring interface, query blockchain network details interface, query blockchain node interface, and view chain information. One or more interfaces.
  • Standard interfaces include common data structures, such as business chain data structures and blockchain data structures. Special data structures can be encapsulated into extraInfo using json stringification. After each blockchain platform is registered, it can seamlessly access the management platform 400 and execute business logic.
  • the platform information (certificate key, IP port, API file) is registered to the management platform 400 through the platform registration interface.
  • the blockchain platform of the management plane interface can be registered through interface mapping.
  • the heterogeneous blockchain platform can send a platform registration request, and the management platform 400 obtains the platform information input by the user based on the platform registration request.
  • the platform information includes API files.
  • API files can include original API files and API mapping templates.
  • the original API file includes path (for example, a custom url), method (for example, get, post, put, delete%), parameter (for example, interface parameters, distinguish path parameters, body parameters, etc., there are default values that need to be marked), response ( One or more of interface return) and definition (structure definition).
  • path for example, a custom url
  • method for example, get, post, put, delete
  • parameter for example, interface parameters, distinguish path parameters, body parameters, etc., there are default values that need to be marked
  • response One or more of interface return
  • definition structure definition
  • API mapping templates include request url (including path parameters, query parameters), body parameters, response mapping templates, and the correspondence between the management plane interface and the standard interface.
  • the platform information may also include certificates, keys, IP addresses, port numbers, etc.
  • the management platform 400 can then process the API mapping template, certificate and other platform information input by the user through the template parser, and then the management platform 400 determines whether the heterogeneous blockchain platform has been registered and whether the format is correct. If yes, the management platform 400 can save one or more of the certificate, platform name, and interface field to the database; if not, return to platform registration.
  • the management platform 400 can perform mapping according to the following mapping rules when registering the platform through mapping the management plane interface: the mapping interface conforms to the RESTFUL specification, and the interface containing the body parameter supports interface mapping with the body parameter format being application/json, form and other formats.
  • the interface cannot be mapped, and the interface whose return value is a binary stream cannot be mapped.
  • the fields that must be returned in the return value of the standard interface must be able to be returned, and the mapped field types must be consistent.
  • the management platform 400 when the management platform 400 saves the certificate, platform name, and interface fields, it can first save it to the temporary information module of the database, and then generate the platform registration task flow. When the task is successful, it can save it to the task module of the database. .
  • the process engine of the management platform 400 can obtain the platform registration task flow from the database and execute the platform registration subtask. Among them, the management platform 400 can call the platform registration interface of the heterogeneous blockchain platform to register the heterogeneous blockchain platform, generate data structures of alliances, business chains, and organizations, and save them in the database.
  • the management platform 400 can also establish a Hypertext Transfer Protocol (HTTP) client that communicates with the heterogeneous blockchain platform and save it in the cache.
  • HTTP Hypertext Transfer Protocol
  • the management platform 400 can update the task status to success and store the temporary information in the temporary information module.
  • the certificate, platform name, and interface fields are saved in the task module (formal area).
  • the management platform 400 can implement an interface processor internally. When the standard interface is called, the management platform 400 can use methods such as template parser or reflection to parse the interface fields, automatically convert the interface calling format, and the process engine performs tasks and calls according to the platform category. Different underlying interfaces to schedule the underlying heterogeneous blockchain platform.
  • management platform 400 can also obtain alliances in the database in batches through automated task processes to regularly update account books, monitoring and other data, and generate new data statistical information, and then return the statistical information to the server 200.
  • heterogeneous blockchain platforms can also register existing blockchain networks.
  • the heterogeneous blockchain platform can send a platform registration request, which includes a blockchain identifier.
  • the management platform 400 calls the obtain blockchain list interface, obtains the blockchain network interface, and determines whether the returned information meets the requirements. If so, alliances, businesses, and organizations are generated and saved in the database. If not, return to platform registration.
  • the management platform 400 refers to the core architecture of various blockchain networks 300, abstracts the common models and functional modules of the blockchain, formulates an access interface that follows the RESTful interface specification, and provides a one-stop solution through a unified access interface.
  • Manage heterogeneous blockchain networks When the management platform 400 registers a heterogeneous blockchain platform, it supports registration based on interfaces, certificates, and access domain names, and supports the uploading of network IDs on the stock chain (existing blockchain network) to achieve docking with the existing blockchain network. . This can avoid repeated construction of the blockchain platform and long-term business transformation, and uniformly maintain, schedule and monitor all businesses and resources under the user's name.
  • the heterogeneous blockchain platform calls the platform registration interface to trigger platform registration, and sends a platform registration request to the government blockchain platform (the management platform 400 in the government scenario).
  • the government blockchain platform responds to the platform registration request and registers Heterogeneous blockchain platform to government blockchain platform.
  • the commissioning bureaus 1 to 3 can call the user registration interface to trigger user registration and send a user registration request to the government blockchain platform.
  • the government blockchain platform responds to the yoghurt registration request, and the registration commissioning bureau 1 corresponds to Organization 1, organization 2 corresponding to the commissioning bureau 2 and organization 3 corresponding to the commissioning bureau 3.
  • the commissioning office 1 can trigger the alliance creation operation and send the alliance creation command to the government affairs management center (the server 200 in the government scene).
  • the government affairs management center can send a notification to the commissioning office 2.
  • the government affairs management center receives the commissioning office 2
  • the government management center can send the approval result indicating the approval to the government blockchain platform.
  • the government blockchain platform can call the alliance creation interface and send an alliance creation request to the heterogeneous blockchain platform.
  • Heterogeneous blockchain platforms can create blockchain instances/nodes in tenant space A or physical resource set A, and create blockchain instances/nodes in tenant space B or physical resource set B.
  • tenant space A or physical resource set A is the resource space associated with organization 1.
  • tenant space B or physical resource set B is the resource space associated with organization 2.
  • the heterogeneous blockchain platform can also invite tenant space B or physical resource set B to join the channel or chain. The government blockchain platform can then continue to query the task status until the task is completed.
  • the commissioning bureau 3 can also trigger the operation of joining the alliance and send an instruction to join the alliance to the government affairs management center.
  • the Government Affairs Management Center can send notifications to Commissioning Bureau 1 and Commissioning Bureau 2.
  • Commissioning Bureau 1 agrees to Commissioning Bureau 3 to join the alliance
  • Commissioning Bureau 2 agrees to Commissioning Bureau 3 to join
  • the government management center can send the approval result indicating that the approval has been passed to the government blockchain platform.
  • the government blockchain platform can call the alliance joining interface and send a request to join the alliance to the heterogeneous blockchain platform.
  • Heterogeneous blockchain platforms can create blockchain instances/nodes on tenant space C or physical resource set C.
  • tenant space C or physical resource set C is the resource space associated with organization 3.
  • the heterogeneous blockchain platform can also invite tenant space C or physical resource set C to join the channel or chain.
  • a heterogeneous blockchain platform can invite tenant space C or physical resource set C to join the channel or chain before creating a blockchain instance/node on tenant space C or physical resource set C.
  • the government blockchain platform can then continue to query the task status until the task is completed.
  • the government blockchain platform can perform data updates or rollback operations based on task execution results. For example, if the task execution is successful (that is, the task is completed), the government blockchain platform can update the data; if the task execution fails, the government blockchain platform can roll back the data.
  • Figure 7 introduces the business process of creating and joining an alliance.
  • Other business processes such as creating a business chain, joining a business chain, deploying a contract, deleting an alliance, etc., can refer to the relevant descriptions above and will not be repeated here.
  • This method can provide unified management capabilities for blockchain networks deployed on the cloud and blockchain networks deployed under the cloud, unified management capabilities for heterogeneous blockchain networks, and management capabilities for existing blockchain networks. Achieve centralized operation or maintenance of blockchain networks with different deployment methods and different architectures. Moreover, this method can provide a centralized operation and maintenance management visualization system to facilitate tenant management, alarm monitoring, process approval, etc. This method also supports one-click deployment of the blockchain network and full life cycle management of the blockchain network. It is easier to expand and shrink nodes and the cost of maintaining the blockchain network is greatly reduced. In addition, this method can also provide a variety of government business mapping methods on the cloud and simplify the government business on-chain process.
  • the embodiment of the present application also provides a blockchain network management platform 400 as described above.
  • the blockchain network management platform 400 provided by the embodiment of the present application will be introduced below with reference to the accompanying drawings.
  • the management platform 400 includes:
  • Communication module 802 configured to receive a user registration request, where the user registration request includes the user category of the user, and the user category is determined according to the deployment mode of the blockchain network managed by the user;
  • the registration module 804 is configured to register a corresponding organization for the user according to the user registration request, and the organization is associated with a resource space corresponding to the user category;
  • the execution module 806 is used to call the processing interface of the resource space and execute the corresponding business logic.
  • the user category includes cloud users, and the resource space corresponding to the cloud user includes tenant space.
  • the execution module 806 is specifically used to:
  • the execution module 806 is specifically used to:
  • the execution module 806 is specifically used to:
  • the link building mode parameters are configured according to the trust relationship between the users.
  • the user category includes off-cloud users, and the resource space corresponding to the off-cloud users includes a physical resource set.
  • the execution module 806 is specifically used to:
  • the alliance deletion interface of the resource space is called, and the blockchain nodes are recycled in the resource space to delete the alliance.
  • the resource space comes from a heterogeneous blockchain platform
  • the communication module is also used to:
  • the registration module is also used to:
  • the resource space comes from a heterogeneous blockchain platform
  • the heterogeneous blockchain platform has a management plane interface
  • the communication module is also used to:
  • the registration module is also used to:
  • the management platform of the blockchain network provides a business interface
  • the execution module is specifically used to:
  • the management platform 400 of the blockchain network may correspond to performing the method described in the embodiment of the present application, and the above and other operations and/or functions of each module/unit of the management platform 400 of the blockchain network In order to implement the corresponding processes of each method in the embodiment shown in Figure 3, for the sake of simplicity, they will not be described again here.
  • An embodiment of the present application also provides a computer cluster.
  • the computer cluster includes at least one computer, and any one of the at least one computer can come from a cloud environment or an edge environment, or can also be a terminal device.
  • the computer cluster is specifically used to implement the functions of the blockchain network management platform 400 in the embodiment shown in Figure 8.
  • Figure 9 provides a schematic structural diagram of a computer cluster.
  • the computer cluster 90 includes multiple computers 900.
  • the computers 900 include a bus 901, a processor 902, a communication interface 903 and a memory 904.
  • the processor 902, the memory 904 and the communication interface 903 communicate through the bus 901.
  • the bus 901 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
  • PCI peripheral component interconnect standard
  • EISA extended industry standard architecture
  • the bus can be divided into address bus, data bus, control bus, etc. For ease of presentation, only one thick line is used in Figure 9, but it does not mean that there is only one bus or one type of bus.
  • the processor 902 may be a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP) or a digital signal processor (DSP). any one or more of them.
  • CPU central processing unit
  • GPU graphics processing unit
  • MP microprocessor
  • DSP digital signal processor
  • the communication interface 903 is used for communicating with the outside.
  • the communication interface 903 is used to receive user registration requests, or platform registration requests, and so on.
  • Memory 904 may include volatile memory (volatile memory), such as random access memory (RAM). Memory 904 may also include non-volatile memory (non-volatile memory), such as read-only memory (ROM), flash memory, hard disk drive (HDD) or solid state drive (solid state drive) , SSD).
  • volatile memory such as random access memory (RAM).
  • RAM random access memory
  • non-volatile memory non-volatile memory
  • ROM read-only memory
  • flash memory such as hard disk drive (HDD) or solid state drive (solid state drive) , SSD).
  • Computer readable instructions are stored in the memory 904, and the processor 902 executes the computer readable instructions, so that the computer cluster 90 executes the aforementioned management method of the blockchain network (or implements the functions of the aforementioned management platform 400).
  • the software or program code required to perform the functions of each module in FIG. 8 may be stored in at least one memory 904 in the computer cluster 90 .
  • At least one processor 902 executes the program code stored in the memory 904, so that the computer cluster 90 executes the aforementioned management method of the blockchain network.
  • An embodiment of the present application also provides a computer-readable storage medium.
  • the computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a data center containing one or more available media.
  • the available media may be magnetic media (eg, floppy disk, hard disk, tape), optical media (eg, DVD), or semiconductor media (eg, solid state drive), etc.
  • the computer-readable storage medium includes instructions that instruct the computer or computer cluster to perform the above-mentioned management method of the blockchain network.
  • An embodiment of the present application also provides a computer program product.
  • the computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on the computer, the processes or functions described in the embodiments of the present application are generated in whole or in part.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transmitted over a wired connection from a website, computer, or data center. (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) to another website, computer or data center.
  • the computer program product may be a software installation package. If it is necessary to use any of the aforementioned blockchain network management methods, the computer program product may be downloaded and executed on a computer or computer cluster.

Abstract

本申请提供了一种区块链网络的管理方法,包括:接收用户注册请求,该用户注册请求包括用户的用户类别,该用户类别根据用户管理的区块链网络的部署方式确定,然后根据用户注册请求,为用户注册对应的组织,该组织关联有与用户类别对应的资源空间,接着调用资源空间的处理接口,执行对应的业务逻辑。该方法通过为云上用户或云下用户注册结构统一的组织,将组织与对应用户类型的资源空间绑定,进而使用对应资源空间的处理接口进行业务处理,从而实现云上部署的区块链网络和云下部署的区块链网络的统一管理,可以对不同部署方式的区块链网络进行集中运营或运维,降低运营或运维的难度,减少了运营或运维的成本。

Description

一种区块链网络的管理方法及相关设备
本申请要求于2022年03月10日提交中国国家知识产权局、申请号为202210228191.1、发明名称为“管理区块链的方法、装置、服务器及存储介质”的中国专利申请的优先权,以及于2022年05月20日提交中国国家知识产权局、申请号为202210550637.2、发明名称为“一种区块链网络的管理方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链网络的管理方法、平台、计算机集群、计算机可读存储介质、计算机程序产品。
背景技术
随着信息技术的不断发展,越来越多的企事业单位、组织等将自身提供的业务上线,如此,用户可以通过更为便捷的线上方式办理业务。一些业务通常需要多部门协作。例如,企业为员工申请工作居住证时,通常需要向人力社保部门提交由税务局提供的缴税证明、房管局提供的合法稳定住所证明(如在房管局备案的租房合同)等。
这些部门之间的数据流转通常需要大量的人工审批,并且数据在流转过程中还可能引发数据不一致、信息泄露等问题,而且数据流转的时效性较弱,难以满足业务需求。随着区块链技术的兴起,对于涉及部门多、流程复杂的业务,利用区块链的共享模式可以有效实现数据跨部门、跨区域的共同维护和利用,推动业务数字化改革,实现智能化的治理。
目前,相关技术采用服务端和区块链网络构建业务的服务系统。其中,区块链网络包括多个节点,区块链网络中的多个节点可以是不同部门管理的节点。具体地,服务端可以接收客户端(也可以称作用户端)的请求,根据该请求进行分类处理、审批,然后服务端可以将与客户端的交互数据,上传至区块链网络进行存储。
然而,对于云上部署的区块链网络(也称作云链)和云下部署的区块链网络(也称作线下散链),服务端缺乏统一管理能力,难以实现集中运营或运维,也就难以满足业务的需求。
发明内容
本申请提供了一种区块链网络的管理方法,通过为不同用户类别的用户(如云上用户或云下用户)注册结构一致的组织,并将该组织与用户类别对应的资源空间(如云上的租户空间或者云下的物理资源集)进行关联。针对不同资源空间上部署的区块链网络,统一调用资源空间的处理接口,执行该处理接口对应的业务逻辑。如此实现了云上部署的区块链网络和云下部署的区块链网络的统一管理,可以对不同部署方式的区块链网络进行集中运营或运维,降低运营或运维的难度,减少了运营或运维的成本。本申请还提供了与上述方法对应的区块链网络的管理平台、计算机集群、计算机可读存储介质以及计算机程序产品。
第一方面,本申请实施例提供了一种区块链网络的管理方法。该方法可以由区块链网络的管理平台(简称为管理平台)执行。该管理平台可以是软件系统,该软件系统部署在计算机集群中,计算机集群通过运行软件系统的程序代码,从而执行本申请实施例的区块链网络的管理方法。在一些实施例中,该管理平台也可以是具有区块链网络管理功能的硬件系统,该硬件系统可以是计算机集群中的一台或多台计算机。
具体地,管理平台接收用户注册请求,该用户注册请求包括用户的用户类别,该用户类别根据用户管理的区块链网络的部署方式确定,例如用户类别包括云上用户或云下用户,管理平台根据该用户注册请求,为用户注册对应的组织,该组织关联有与用户类别对应的资源空间,管理平台可以调用资源空间的处理接口,执行该处理接口对应的业务逻辑。
在该方法中,管理平台通过为不同用户类别的用户(如云上用户或云下用户)注册结构一致的组织,并将该组织与用户类别对应的资源空间(如云上的租户空间或者云下的物理资源集)进行关联。针对不同资源空间上部署的区块链网络,管理平台可以统一调用资源空间的处理接口,执行该处理接口对应的业务逻辑。如此实现了云上部署的区块链网络和云下部署的区块链网络的统一管理,可以对不同部署方式的区块链网络进行集中运营或运维,降低运营或运维的难度,减少了运营或运维的成本。
在一些可能的实现方式中,所述用户类别包括云上用户,所述云上用户对应的资源空间包括租户空间。如此可以实现对云上部署的区块链网络进行统一纳管,满足对云上部署的区块链网络进行集中运营或运维的需求。
在一些可能的实现方式中,管理平台可以调用所述租户空间的业务链创建接口,创建业务链。如此可以实现一键建链,减少了用户操作,提高区块链网络构建和部署的效率,提升用户体验。
在一些可能的实现方式中,管理平台可以根据业务需求,创建满足该业务需求的单个或多个业务链。例如,管理平台可以创建多个业务链,所述多个业务链中的至少两个业务链存在共用节点;又例如,管理平台可以创建多个业务链,所述多个业务链不存在共用节点;管理平台也可以创建单个业务链,所述业务链的各个节点位于同一租户空间。
在该方法中,管理平台可以根据业务对安全、性能、成本的需求,选择相应的建联模式创建业务链,从而适应不同业务场景,具有较高可用性。
在一些可能的实现方式中,管理平台可以获取建链模式参数,根据所述建链模式参数创建单个或多个业务链。该方法充分封装底层建链流程,屏蔽内核结构差异,实现业务链快速构建,节省了运维成本。
在一些可能的实现方式中,所述建链模式参数根据所述用户之间的信任关系配置。对于信任关系薄弱的用户,用户作为联盟参与方时,可以将联盟参与方映射为不同租户空间,从而形成联盟。联盟的建链方式可以包括:以同一区块链实例/组织/节点作为邀请方,构建一个多链的联盟,实现资源可复用的多子链联盟模式;以同租户不同区块链实例/组织/节点作为邀请方,构建多个单链联盟,实现资源不可复用的单链隔离联盟模式。对于存在一定信任关系的用户,可部署在同租户空间上,将参与方映射为私有链中的组织、同所有者的节点等,参与方之间构建私有链。如此可以实现资源利用率和安全的均衡。
在一些可能的实现方式中,所述用户类别包括云下用户,所述云下用户对应的资源空 间包括物理资源集。如此可以实现对云下部署的区块链网络进行统一纳管,满足对云下部署的区块链网络进行集中运营或运维的需求。
在一些可能的实现方式中,管理平台可以调用所述资源空间的创建联盟接口,在所述资源空间创建区块链节点,以创建联盟。管理平台也可以调用所述资源空间的加入联盟接口,在所述资源空间创建区块链节点,以加入联盟。管理平台还可以调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以退出联盟。管理平台也可以调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以删除联盟。
该方法中,管理平台支持创建、加入、退出或删除联盟,实现联盟的灵活调整,动态满足业务需求。
在一些可能的实现方式中,所述资源空间可以来自异构区块链平台,例如是不同架构或内核的区块链平台。相应地,管理平台还可以接收平台注册请求,通过平台注册接口,注册所述异构区块链平台的标准接口。
在该方法中,管理平台通过注册异构区块链平台的标准接口,以通过标准接口调用底层的异构区块链平台,从而实现对异构区块链平台的统一纳管,解决了异构区块链平台无法一站式管理的难题。
在一些可能的实现方式中,所述资源空间可以来自异构区块链平台,所述异构区块链平台具有管理面接口,管理平台可以接收平台注册请求,然后获取所述管理面接口对应的标准接口,以注册所述异构区块链平台的标准接口。
针对已有管理面接口的异构区块链平台,通过接口映射可以获得该管理面接口对应的标准接口,无需进行二次开放,即可实现对异构区块链平台的统一纳管,避免了区块链平台的重复建设和长周期的业务改造,统一维护、调度和监控用户名下的业务和资源。
在一些可能的实现方式中,所述区块链网络的管理平台提供有业务接口。管理平台可以响应于业务服务器对所述业务接口的调用,执行对应的业务逻辑。
该方法通过屏蔽底层的业务逻辑,基于统一的业务接口实现一站式地运营或运维名下区块链网络,降低了运营或运维的成本。
第二方面,本申请实施例提供了一种区块链网络的管理平台。所述平台包括:
通信模块,用于接收用户注册请求,所述用户注册请求包括用户的用户类别,所述用户类别根据所述用户管理的区块链网络的部署方式确定;
注册模块,用于根据所述用户注册请求,为所述用户注册对应的组织,所述组织关联有与所述用户类别对应的资源空间;
执行模块,用于调用所述资源空间的处理接口,执行对应的业务逻辑。
在一些可能的实现方式中,所述用户类别包括云上用户,所述云上用户对应的资源空间包括租户空间。
在一些可能的实现方式中,所述执行模块具体用于:
调用所述租户空间的业务链创建接口,创建业务链。
在一些可能的实现方式中,所述执行模块具体用于:
创建多个业务链,所述多个业务链中的至少两个业务链存在共用节点;或者,
创建多个业务链,所述多个业务链不存在共用节点;或者,
创建单个业务链,所述业务链的各个节点位于同一租户空间。
在一些可能的实现方式中,所述执行模块具体用于:
获取建链模式参数;
根据所述建链模式参数创建单个或多个业务链。
在一些可能的实现方式中,所述建链模式参数根据所述用户之间的信任关系配置。
在一些可能的实现方式中,所述用户类别包括云下用户,所述云下用户对应的资源空间包括物理资源集。
在一些可能的实现方式中,所述执行模块具体用于:
调用所述资源空间的创建联盟接口,在所述资源空间创建区块链节点,以创建联盟;或者,
调用所述资源空间的加入联盟接口,在所述资源空间创建区块链节点,以加入联盟;或者,
调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以退出联盟;或者,
调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以删除联盟。
在一些可能的实现方式中,所述资源空间来自异构区块链平台,所述通信模块还用于:
接收平台注册请求;
所述注册模块还用于:
通过平台注册接口,注册所述异构区块链平台的标准接口。
在一些可能的实现方式中,所述资源空间来自异构区块链平台,所述异构区块链平台具有管理面接口,所述通信模块还用于:
接收平台注册请求;
所述注册模块还用于:
获取所述管理面接口对应的标准接口,以注册所述异构区块链平台的标准接口。
在一些可能的实现方式中,所述区块链网络的管理平台提供有业务接口,所述执行模块具体用于:
响应于业务服务器对所述业务接口的调用,执行对应的业务逻辑。
第三方面,本申请提供一种计算机集群。所述计算机集群包括至少一台计算机,所述至少一台计算机包括至少一个处理器和至少一个存储器。所述至少一个处理器、所述至少一个存储器进行相互的通信。所述至少一个处理器用于执行所述至少一个存储器中存储的指令,以使得计算机或计算机集群执行如第一方面或第一方面的任一种实现方式所述的区块链网络的管理方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令指示计算机或计算机集群执行上述第一方面或第一方面的任一种实现方式所述的区块链网络的管理方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算机或计算机集群上运行时,使得计算机或计算机集群执行上述第一方面或第一方面的任一种实现方式所述的区块链网络的管理方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本申请实施例的技术方法,下面将对实施例中所需使用的附图作以简单地介绍。
图1为本申请实施例提供的一种数据管理系统的架构示意图;
图2为本申请实施例提供的一种数据管理系统的架构示意图;
图3为本申请实施例提供的一种区块链网络的管理方法的流程图;
图4为本申请实施例提供的一种区块链网络的管理方法的流程图;
图5为本申请实施例提供的一种云上区块链网络的建链模式示意图;
图6为本申请实施例提供的一种区块链网络的管理方法的流程图;
图7为本申请实施例提供的一种政务场景中区块链网络的管理方法的流程图;
图8为本申请实施例提供的一种区块链网络的管理平台的结构示意图;
图9为本申请实施例提供的一种计算机集群的结构示意图。
具体实施方式
本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
首先对本申请实施例中所涉及到的一些技术术语进行介绍。
区块链网络是一种由多个节点形成的去中心化网络。区块链网络中的节点通过点对点连接,形成点对点(Peer-to-Peer,P2P)网络。在该点对点网络中,节点不存在中央化的服务和层级结构,各节点是对等的,因此该网络中的节点也称作对等节点,即peer节点。
区块链网络用于为应用程序(可简称为应用)提供分布式账本及智能合约(smart contract)服务。其中,智能合约中定义有交易逻辑。智能合约被用来生成交易,这些交易会被分发至区块链网络中的每个peer节点,每个peer节点在各自的账本副本上记录这些交易,并且账本副本不可篡改。交易通常可以以区块的形式记录,不同交易可以记录在不同区块中,不同区块可以连接形成区块链,因此,账本副本可以是区块链。
针对需要多方协作的业务,业界提出了采用区块链网络进行数据共享的数据共享模式。具体地,对业务进行需求分析,明确需要承载的业务内容,从而建立客户端(也称作用户端)、服务端、区块链网络。参见图1所示的一种数据管理系统的架构示意图,在该系统10中,客户端100与服务端200连接,服务端200与区块链网络300连接。区块链网络300中包括多个节点302,例如是不同用户管理的节点302。其中,服务端200在接收到客户端100的请求后,可以进行分类处理、审批,服务端200将客户端100与该服务端200的交互数据实时上传至区块链网络300进行存储。如此解决传统的数据共享模式下需要大量的人工审批以及数据在复制传递过程中引发的数据不一致的问题,通过数据跨部门、跨区域的共同维护和利用,推动业务数字化改革,实现智能化的治理。
在一些场景中,客户端100需要使用多个区块链网络300。例如客户端100需要使用云上部署的区块链网络300(也称作云链)以共享大容量的信息,以及使用云下部署的区块链网络300(也称作线下散链)以共享安全要求较高的信息。然而,对于云上部署的区块链网络300和云下部署的区块链网络300,服务端200缺乏统一管理能力,难以实现集中运营或运维,也就难以满足业务的需求。
有鉴于此,本申请实施例提供了一种区块链网络的管理方法。该方法可以由区块链网络的管理平台(简称为管理平台)执行。该管理平台可以是软件系统,该软件系统部署在计算机集群中,计算机集群通过运行软件系统的程序代码,从而执行本申请实施例的区块链网络的管理方法。在一些实施例中,该管理平台也可以是具有区块链网络管理功能的硬件系统,该硬件系统可以是计算机集群中的一台或多台计算机。为了便于描述,下文以管理平台为软件系统进行示例说明。
具体地,管理平台可以接收用户注册请求,用户注册请求包括用户的用户类别,该用户类别根据用户管理的区块链网络的部署方式确定,例如用户类别包括云上用户或云下用户,云上用户是指将云上部署的区块链网络接入该管理平台的用户,例如可以为云平台的租户,云下用户是指将云下部署的区块链网络接入该管理平台的用户,管理平台根据该用户注册请求,为用户注册对应的组织,该组织关联有与用户类别对应的资源空间,管理平台可以调用资源空间的处理接口,执行该处理接口对应的业务逻辑。
在该方法中,管理平台通过为不同用户类别的用户(如云上用户或云下用户)注册结构一致的组织,并将该组织与用户类别对应的资源空间(如云上的租户空间或者云下的物理资源集)进行关联。针对不同资源空间上部署的区块链网络,管理平台可以统一调用资源空间的处理接口,执行该处理接口对应的业务逻辑。如此实现了云上部署的区块链网络和云下部署的区块链网络的统一管理,可以对不同部署方式的区块链网络进行集中运营或运维,降低运营或运维的难度,减少了运营或运维的成本。
本申请实施例的区块链网络的管理方法以及管理平台可以应用于不同行业或领域。例如,该管理平台可以是针对金融行业的区块链网络的管理平台,通过执行本申请实施例的区块链网络的管理方法,可以实现对不同金属机构的区块链网络进行统一管理。又例如,该管理平台可以是针对政务的区块链网络的管理平台,通过执行本申请实施例的区块链网络的管理方法,可以对不同组织或部门(如税务局、房管局、人力社保部门)的区块链网络进行统一管理。
该方法可以使得用户统一管理该用户接入到该管理平台的所有区块链网络,并且对该用户的业务进行监控。而且,该方法可以提供身份认证管理、业务管理、凭证转换、数据采集及展现、合约管理、应用仓库、内部应用程序编程接口(application programming interface,API)网关等功能,基于上述功能可以简化业务流程,使得用户(如管理员)能够较为轻松地治理底层的区块链网络,以及一键部署联盟和智能合约等。
为了使得本申请的技术方案更加清楚和易于理解,下面结合附图对本申请实施例的系统架构进行介绍。参见图2所示的另一种数据管理系统的架构图,在图1所示的数据管理系统10的基础上,图2所示的数据管理系统10还包括区块链网络的管理平台400。管理 平台400分别与服务端200、区块链网络300连接。
其中,区块链网络300可以依托于区块链平台建立。区块链平台是指用于建立区块链网络300,并对区块链网络300以及区块链网络300中的区块链副本(分布式账本)进行管理的平台。根据区块链平台内核不同,可以将区块链平台分为不同类型。例如,区块链平台可以基于内核分为Fabric、Quorum、以太坊等不同类型,上述不同类型的区块链平台也称为异构区块链平台。基于不同类型的区块链平台建立的区块链网络称为异构区块链网络,可以简称为异构链。需要说明的是,每个区块链网络300承载有至少一种业务逻辑,因此,该区块链网络300也可以称作业务链。
下面对数据管理系统10中的客户端100、服务端200、区块链网络300和管理平台400的功能进行说明。
客户端100用于发送用户注册指令。用户注册指令包括用户的用户类别。其中,用户类别可以根据用户管理的区块链网络300的部署方式确定。例如,区块链网络300采用云上部署方式时,用户类别为云上用户;区块链网络300采用云下部署方式时,用户类别为云下用户。
具体实现时,客户端100用于向用户提供注册界面,该注册界面可以是图形化用户界面(graphical user interface,GUI)或者命令用户界面(command user interface,CUI),用户可以通过该注册界面触发用户注册操作,客户端100响应于该用户注册操作生成用户注册指令,然后发送用户注册指令。
服务端200用于接收用户注册指令,然后根据用户注册指令调用用户注册接口,向管理平台400发送用户注册请求,以实现用户注册。其中,用户注册请求包括用户的用户类别。在一些可能的实现方式中,服务端200还用于执行流程审批、业务链构建、业务链运营或运维。其中,服务端200通过管理平台400实现业务链构建、业务链运营或运维。
管理平台400用于接收用户注册请求,然后根据用户注册请求为用户注册对应的组织,该组织关联有与用户类别对应的资源空间,接着调用资源空间的处理接口,执行对应的业务逻辑。其中,资源空间的处理接口可以包括创建联盟接口、加入联盟接口、退出联盟接口或者删除联盟接口中的一种或多种,管理平台400可以调用上述接口创建联盟、加入联盟、退出联盟或者删除联盟。
区块链网络300用于接入管理平台400,以便于用户统一管理。其中,区块链网络300依托的区块链平台可以通过管理平台400提供的、对不同区块链平台统一的接入接口,接入管理平台400,进而实现区块链网络300接入管理平台400。不同的区块链网络300可以通过创建联盟、加入联盟等操作形成联盟(例如是联盟链网络),同一联盟中的区块链网络300之间可以进行数据共享,从而满足业务的需求。
在该系统10中,管理平台400可以提供对不同区块链平台统一的业务接口。该业务接口具体为对外业务接口。接入该管理平台400的区块链网络300的用户(如管理员)可以通过客户端调用该对外业务接口,执行对应的业务逻辑。下面以一个客户端进行示例说明。用户可以通过客户端100展示的对外业务接口的控件触发业务操作,客户端100响应于该业务操作,调用该对外业务接口生成业务请求,服务端200接收业务请求,向管理平台400发送业务请求,管理平台300接收到业务请求,可以根据业务请求,对底层的区块链平台 进行调度。其中,管理平台300可以根据业务请求中用户类别、区块链平台类别,调用相应的底层平台接口,对区块链平台(具体是对区块链平台中的业务链)进行调度。
在一些可能的实现方式中,管理平台400还可以设置流程引擎。流程引擎可以解析业务请求,得到相应的任务。然后流程引擎可以自动化地并行或串行执行区块链网络创建、邀请、通知或审批任务中的一种或多种。任务下发后,用户还可以通过任务进度查询接口获取当前业务操作的处理进度。
需要说明的是,管理平台400可以部署在云平台中某一租户空间的集群上。管理平台400还可以配置数据库,以用于存储用户数据。其中,管理平台400中的流程引擎可以启动某些定时任务,轮询数据库中纳管的联盟,更新用户数据,如监控数据、状态数据等,从而实现在用户查询时将管理平台400管理的联盟统一展示给用户。
进一步地,管理平台400内部维护了租户管理、业务管理、合约管理等模块,从而实现权限管控、配额查询、资源分配等租户管理功能,联盟/业务链的创建、删除、加入或退出等业务管理功能,以及合约查询、合约部署、合约终止、合约扫描等合约管理功能。
此外,管理平台400内部还维护了资源治理、告警日志、应用仓库、账本信息、平台信息、配置管理等模块,从而实现集群监控、资源(节点资源、应用资源)发放或回收等资源治理功能,告警查看、审计日志查看、运行日志查看等告警及日志管理功能,应用浏览、安装、卸载等应用管理功能,区块信息查询、交易查询、账本概要查询、交易详情查询等账本信息管理功能,平台健康状态查询、平台注册信息等平台信息管理功能,软件开发工具(software developing toolkit,SDK)下载、证书下载等配置管理功能。其中,应用安装可以是在集群上拉起相应的功能容器,从而提供相应的能力,例如可以提供智能合约的形式化验证等能力。形式化验证用于证明智能合约不存在某个缺陷,或者符合某个或某些属性。
以上对数据管理系统10的架构进行了介绍,接下来,结合附图对本申请实施例的区块链网络的管理方法进行介绍。
参见图3所示的区块链网络的管理方法的流程图,该方法包括:
S302:管理平台400接收用户注册请求。
用户注册请求包括用户的用户类别。其中,用户类别可以根据用户管理的区块链网络300的部署方式确定。具体地,用户类别可以包括云上用户或云下用户等不同类别。用户管理的区块链网络300采用云上部署(在云平台部署)方式时,该用户即为云上用户。其中,云上用户可以为云平台的租户。用户管理的区块链网络300采用云下部署方式时,该用户即为云下用户。
在一些可能的实现方式中,管理平台400可以接收服务端200发送的用户注册请求。具体地,客户端100可以从服务端200加载注册界面的代码,从而向用户呈现注册界面。该注册界面可以包括用户注册控件,用户可以通过注册控件触发用户注册操作,客户端响应于该用户注册操作,生成用户注册指令,然后向服务端200发送用户注册指令。服务端200接收到该用户注册指令,可以调用用户注册接口,向管理平台400发送用户注册请求,以对用户进行注册。
考虑到安全性,服务端200还可以支持对用户注册进行流程审批。该流程审批可以为自动审批,例如服务端200可以基于预置的审批逻辑进行自动审批,如此可以减少大量的人工审批,提高效率,降低成本。当审批通过后,服务端200可以向管理平台400发送用户注册请求。
进一步地,用户触发用户注册操作时,用户管理的区块链网络300可以是已部署的区块链网络300,也可以是待部署的区块链网络300。当该区块链网络300为待部署的区块链网络300时,可以根据区块链平台确定区块链网络300的部署方式,进而确定用户类别。例如,用户在云服务提供商的区块链平台上部署区块链网络300时,该用户的用户类别为云上用户。又例如,用户在本地数据中心的区块链平台上部署区块链网络300时,该用户的用户类别为云下用户。换言之,本申请实施例可以对已有的区块链网络300进行管理,例如将已有的区块链网络加入联盟,也可以先成为联盟参与方,然后构建或部署相应的区块链网络300。
S304:管理平台400根据所述用户注册请求,为所述用户注册对应的组织。
组织是一种数据结构,用于表征用户所归属的团体。该团体可以是用户所归属的公司、单位(如事业单位)、协会或者部门(如政务部门)等机构。其中,组织关联有用户类别对应的资源空间。例如,用户为云上用户时,组织可以关联云上的租户空间,该租户空间可以是云上用户上传的租户标识(identifier,ID)对应的租户空间。又例如,用户为云下用户时,组织可以关联物理资源集。该物理资源集包括一个或多个物理资源。该物理资源可以为节点资源。组织关联的物理资源集可以是用户上传的物理资源信息所标识的物理资源。其中,物理资源信息包括节点的地址,例如是节点的网际协议(Internet Protocol,IP)地址。进一步地,物理资源信息还包括节点的端口号等。
组织包括组织标识(可以为组织码,记作OrgCode)、租户标识(TenantID)和物理资源信息(具体为节点清单,记作NodeList)。其中,组织标识为管理平台400分配的唯一标识,该组织标识的数据类型可以为字符串string。物理资源信息的数据类型可以为数组,具体为节点信息的数组,记作[]Node。
进一步地,参见表1所示的组织的数据结构,组织还可以包括租户名(TenantName)、项目标识(ProjectID)、项目名(ProjectName)、访问密钥(access key,AK)、安全密钥(secret key,SK)、令牌(Token)和证书中的一种或多种。其中,证书包括传输层安全协议(Transport Layer Security,TLS)证书。
表1组织的数据结构
组织包括的字段 数据类型 字段说明
TenantID string 租户ID
TenantName string 租户名
ProjectID string 项目标识
ProjectName string 项目名
OrgCode string 组织名
AK string 访问密钥
SK string 安全密钥
Token string 令牌
TLSCert Cert 证书
NodeList []Node 物理资源信息,包括IP地址和端口号
其中,TLS证书可以记作TlsCert,该证书的数据类型为Cert。组织中除了TLSCert和NodeList外的其他字段的数据类型均可以为string。
在本申请实施例中,对于不同用户类别的用户,管理平台400均可以根据用户注册请求,为用户注册格式统一的组织。
参见表1,用户类别为云上用户时,管理平台400为该用户注册对应的组织,该组织中的租户ID为用户输入的租户ID。进一步地,该组织中的租户名为用户输入的租户ID对应的租户名。该组织中的NodeList可以为空或者缺省值。
用户类别为云下用户时,管理平台400为该用户注册对应的组织,该组织中的租户ID、租户名可以为空或缺省值,该组织中的NodeList可以为用户输入的数组,该数组为节点信息的数组,节点信息包括节点的IP地址和端口号。进一步地,组织中的TLSCert为用户输入的证书。
管理平台400为用户对应的组织分配组织标识,并将组织存储在后端的数据库中,从而将用户抽象为联盟参与方,由此实现组织注册。
S306:管理平台400调用所述资源空间的处理接口,执行对应的业务逻辑。
资源空间的处理接口包括资源空间的创建联盟接口、加入联盟接口、退出联盟接口或删除联盟接口。其中,创建联盟接口用于创建联盟。创建联盟的用户(创建者)可以创建联盟,加入联盟接口用于加入联盟,具体是加入创建者创建的联盟。其中,创建者可以邀请其他用户加入该创建者创建的联盟。退出联盟接口用于退出联盟。创建者或其他用户均可以退出联盟。删除联盟接口用于删除联盟。通常情况下,可以由创建者触发删除联盟的操作。在一些可能的实现方式中,其他用户也可以触发删除联盟的操作。
在一些可能的实现方式中,管理平台400可以调用资源空间的创建联盟接口,在资源空间创建区块链节点,以创建联盟。管理平台400也可以调用资源空间的加入联盟接口,在资源空间创建区块链节点,以加入联盟。在一些实施例中,管理平台400可以调用资源空间的退出联盟接口,在资源空间回收区块链节点,以退出联盟,或者,调用资源空间的删除联盟接口,在资源空间回收区块链节点,以删除联盟。
其中,管理平台400在调用资源空间的处理接口时,可以根据组织类别(用户类别)进行不同形式的接口调用。例如,组织类别为云上组织,用户为云上用户时,管理平台400可以根据AK/SK调用资源空间的处理接口。又例如,组织类别为云下组织,用户为云下用户时,管理平台400可以根据TLSCert调用资源空间的处理接口。
在一些可能的实现方式中,管理平台400也可以调用资源空间的创建联盟接口,根据资源空间上已有的区块链网络300创建联盟。类似地,管理平台400可以调用资源空间的加入联盟接口,将资源空间上已有的区块链网络300加入联盟。管理平台400可以调用资源空间的退出联盟接口,在资源空间回收已有的区块链网络300的节点资源,以推出联盟。在一些实施例中,管理平台400可以调用资源空间的删除联盟接口,在各参与方的资源空间回收已有区块链网络300的节点资源,以删除联盟。
基于上述内容描述,本申请实施例提供了一种区块链网络的管理方法。该方法通过为不同用户类别的用户注册数据结构统一的组织,并将该组织与用户类别对应的资源空间进行关联。针对不同资源空间上部署的区块链网络,可以统一调用资源空间的处理接口,执行该处理接口对应的业务逻辑。如此实现了云上部署的区块链网络和云下部署的区块链网络的统一管理,可以对不同部署方式的区块链网络进行集中运营或运维,降低运营或运维的难度,减少了运营或运维的成本。进一步的,该方法还可以提供已有区块链网络(如业务链)的纳管能力、异构链的统一管理能力,从而提高可用性。
接下来,以创建联盟为例,对本申请实施例的区块链网络的管理方法进行说明。
参见图4所示的区块链网络的管理方法的流程图,该方法包括如下步骤:
步骤1:客户端100响应于用户A、用户B、用户C、用户D触发的用户注册操作,生成用户注册指令。
步骤2:服务端200接收客户端100发送的用户注册指令,调用用户注册接口,向管理平台400发送用户注册请求。
步骤3:管理平台400根据用户注册请求,为用户注册组织,将该组织与用户输入的租户ID对应的租户空间关联。
管理平台400可以部署在默认云底座单独分配给管理中心使用的租户空间上,该租户空间不作业务用途。如无特殊需要,管理平台400可以不纳管其他区块链平台,只使用默认区块链平台,例如为图4所示区块链平台1。
管理平台400将组织与用户输入的租户ID对应的租户空间关联,可以是管理平台将组织与租户空间绑定,从而实现将资源空间的信息注册至该管理平台400。需要说明的是,租户空间等资源空间通常不可重复使用,即租户空间等资源空间通常与一个组织绑定,而不会重复绑定。
步骤4:客户端100响应于用户A触发的创建联盟操作,生成创建联盟指令,向服务端200发送该创建联盟指令。
其中,创建联盟指令中包括用户B的用户标识,该创建联盟指令用于创建一个用户A对应的组织和用户B对应的组织作为联盟参与方的联盟。
步骤5:服务端200调用管理平台400的创建联盟接口,向管理平台400发送创建联盟请求。
管理平台400的创建联盟接口为标准接口。该创建联盟接口的接口参数包括平台类型,记作oemType。在图4的示例中,oemType可以为区块链平台1,用于指示管理平台400在区块链平台1创建区块链网络300,以创建联盟。
步骤6:管理平台400根据用户A、用户B绑定的租户信息调用区块链平台1的创建联盟接口,向区块链平台1发送创建联盟请求。
其中,租户信息可以包括AK/SK,管理平台400可以根据AK/SK调用区块链平台1的创建联盟接口。
步骤7:区块链平台1在用户A对应的组织关联的租户空间创建区块链节点,以及在用户B对应的组织关联的租户空间创建区块链节点,通过审批逻辑达成联盟。
步骤8:管理平台400查询区块链平台1中的任务状态,当任务成功时,保存联盟。
与组织类似,管理平台400还可以抽象出联盟的数据结构进行保存。其中,联盟的数据结构包括联盟标识(UnionID)、平台类型(OemType)和组织列表(记作Orgs)。进一步地,参见表2所示的联盟的数据结构,该联盟的数据结构还包括盟主、业务链标识(记作UID)和业务链名称中的一种或多种。
表2联盟的数据结构
联盟包括的字段 数据类型 字段说明
ID int SEQ
UID string 业务链ID
UnionID string 联盟ID
CreatorOrg string 盟主
Name string 业务链名称
OemType string 平台类型
Orgs []string 组织列表
联盟包括的字段中ID是指管理平台400分配的内部ID,通常可以为序列号(sequence,SEQ),UID是指运维链ID,UnionID是指联盟ID,CreatorOrg是指盟主,具体为创建联盟的组织。
其中,上述步骤6至8为管理平台400调用资源空间的处理接口,执行对应的业务逻辑的一种实现方式。在本申请实施例其他可能的实现方式中,管理平台400也可以调用其他资源空间的处理接口,执行对应的业务逻辑,具体如步骤9至12所示。
步骤9:客户端100响应于用户C触发的创建联盟操作,生成创建联盟指令,向服务端200发送该创建联盟指令。
其中,创建联盟指令中包括用户D的用户标识,该创建联盟指令用于创建一个用户C对应的组织和用户D对应的组织作为联盟参与方的联盟。
步骤10:服务端200调用管理平台400的创建联盟接口,向管理平台400发送创建联盟请求。
管理平台400的创建联盟接口为标准接口。该创建联盟接口的接口参数包括oemType。在图4的示例中,oemType可以为区块链平台2,用于指示管理平台400在区块链平台2创建区块链网络300,以创建联盟。其中,区块链平台2可以是线下的区块链平台,或者是其他云平台。
步骤11:管理平台400根据用户C、用户D绑定的租户信息调用区块链平台2的创建联盟接口,向区块链平台2发送创建联盟请求。
步骤12:区块链平台2在用户A对应的组织关联的物理资源集C创建区块链节点,以及在用户B对应的组织关联的物理资源集D创建区块链节点,通过审批逻辑达成联盟。
上述步骤4至7和步骤9至12分别为在不同区块链平台创建联盟,在一些可能的实现方式中,也可以在一个区块链平台创建一个或多个联盟,本实施例对此不作限制。
步骤12:管理平台400通过查询接口返回该管理平台400纳管的联盟的信息。
具体地,管理平台400可以通过查询接口,以统一格式返回该管理平台400纳管的各 个联盟的信息。例如,管理平台400可以返回联盟标识UnionID、联盟中组织的组织标识OrgCode。
图4所示实施例以管理平台400调用创建联盟接口,执行创建联盟的业务逻辑,以及调用查询接口,执行查询联盟的业务逻辑进行示例说明。在本申请实施例其他可能的实现方式中,管理平台400还可以调用资源空间的加入联盟接口,在资源空间创建区块链节点,以执行加入联盟的业务逻辑;调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以执行退出联盟的业务逻辑;或者是调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以执行删除联盟的业务逻辑。
在本实施例中,基于云体系多租户模型搭建管理平台400,充分利用了云计算的弹性、稳定性和灵活性,用户可以自行维护租户资源,扩缩容自由,上链方便。并且,管理平台400通过为各用户注册数据结构一致的组织,将组织绑定用户类别对应的资源空间,如云上用户对应的租户空间或云下用户对应的物理资源集,以便通过资源空间的处理接口,执行相应的业务逻辑,由此可以实现对云上部署的区块链网络、云下部署的区块链网络进行统一管理,降低运维成本。
图4对创建联盟过程进行示例说明,接下来对建立区块链网络300进行示例说明。其中,云下部署的区块链网络300通常可以采用私有链模式建立,云上部署的区块链网络300可以有多种建链模式。本申请实施例抽象了多种业务流程与云上部署的区块链网络300的映射模型,提供多模态业务链管理能力。
参见图5所示的云上区块链网络的建链模式示意图,管理平台400可以创建多个业务链,多个业务链中的至少两个业务链存在共用节点,如租户空间A中的peer1、peer2或租户空间B中的peer1。其中,管理平台400在云平台的多个租户空间创建具有共用节点的多个业务链的建链模式也称作云上多子链模式。
在一些实施例中,管理平台400也可以创建多个不存在共用节点的业务链。如图5所示,管理平台400可以在租户空间A、租户空间B、租户空间C上创建业务链1,在租户空间A和租户空间B上创建业务链2,该业务链1包括租户空间A中的peer1、peer2等peer节点以及租户空间B的peer1、租户空间C的pee1等peer节点,业务链2包括租户空间A的peer3和租户空间B的peer2等peer节点。其中,管理平台400在云平台的多个租户空间创建不具有共用节点的多个业务链的建链模式也称作云上单链隔离模式。
在另一些实施例中,管理平台400也可以创建单个业务链,该业务链为云上私有链。如图5所示,管理平台400可以在租户空间A创建业务链1,该业务链包括租户空间A中的peer1和peer2等peer节点。其中,管理平台400在云平台的单个租户空间创建单个业务链的建链模式也称作云上私有链模式。
在用户请求数据结构不变的前提下,管理平台400通过改变建链模式参数createMode即可构建不同部署方式的区块链网络。具体地,管理平台400可以获取建链模式参数,根据建链模式参数创建单个或多个业务链。该方法充分封装底层建链流程,屏蔽内核结构差异,实现业务链快速构建,节省了运维成本。
其中,建链模式参数可以根据用户之间的信任关系配置。对于信任关系薄弱的用户, 用户作为联盟参与方时,可以将联盟参与方映射为不同租户空间,从而形成联盟。联盟的建链方式可以包括:以同一区块链实例/组织/节点作为邀请方,构建一个多链的联盟,实现资源可复用的多子链联盟模式;以同租户不同区块链实例/组织/节点作为邀请方,构建多个单链联盟,实现资源不可复用的单链隔离联盟模式。对于存在一定信任关系的用户,可部署在同租户空间上,将参与方映射为私有链中的组织、同所有者的节点等,参与方之间构建私有链。
在一些可能的实现方式中,管理平台400还可以抽象出业务链(记作BusiChain)的数据结构以及区块链(BlockChain)的数据结构。下面分别对业务链的数据结构和区块链的数据结构进行示例说明。
参见表3所示的业务链的数据结构,业务链的数据结构中包括联盟ID、业务链名称、组织列表和区块链列表。可选地,业务链的数据结构中还可以包括盟主、平台类型中的一种或多种。
表3业务链的数据结构
业务链包括的字段 数据类型 字段说明
ID int SEQ
UnionID string 联盟ID
CreatorOrg string 盟主
Name string 业务链名称
OemType string 平台类型
Orgs []string 组织列表
BlockChain []BlockChain 区块链列表
参见表4所示的区块链的数据结构,区块链的数据结构中包括区块链外部ID(记作ExternalID)、区块链列表(记作BlockChains)和区块链配置信息(记作BlockSpec)。其中,区块链配置信息可以包括共识算法等信息。可选地,区块链的数据结构中还包括区块链其他信息(记作ExtraInfo)、业务链名称、平台类型、组织列表和物理资源信息中的一种或多种。
表4区块链的数据结构
组织包括的字段 数据类型 字段说明
ID int SEQ
ExternalID string 区块链外部ID
ExtraInfo string 区块链其他信息
Name string 业务链名称
CloudType string 平台类型
Orgs []string 组织列表
InfraSpec InfraSpec 物理资源信息
BlockSpec BlockSpec 区块链配置信息,如共识算法
在一些可能的实现方式中,组织关联的资源空间可以来自异构区块链平台。管理平台400还可以接收平台注册请求,通过平台注册接口,注册异构区块链平台的标准接口,从 而实现对异构区块链平台中的异构链进行统一管理。
对于不同结构的区块链网络,其模型和建链流程上差异明显。例如以太坊、Fabric等区块链网络的内核有账户、油耗、通道等专有概念,其他区块链网络如Quorum的内核不具有上述专有概念。又例如,不同区块链网络针对是否支持子链、是否支持鉴权审批、是否支持开启白名单也存在差异。为此,管理平台可以注册异构区块链平台的标准接口,以实现对区块链平台中的异构链进行统一管理。
针对已有管理面接口的区块链平台,管理平台400可以通过接口映射的方式将管理面接口映射为标准接口。具体地,管理平台400可以接收平台注册请求,获取管理面接口对应的标准接口,以注册异构区块链平台的标准接口。如此无需进行二次开发,提高了效率。针对无管理面接口的区块链平台,管理平台400可以针对该区块链平台开发标准接口。
标准接口可以包括网络管理类、链管理类、合约管理类或运营运维类。其中,网络管理类的标准接口包括创建区块链网络接口、删除区块链网络接口、加入区块链网络接口、退出区块链网络接口中的一种或多种。链管理类的标准接口包括创建链接口、删除链接口、加入链接口、退出链接口中的一种或多种。合约管理类的标准接口包括部署合约接口、升级合约接口、删除合约接口中的一种或多种。运营运维类的标准接口包括查询账本概要接口、查询交易列表接口、查询交易接口、查询区块列表接口、查询监控接口、查询区块链网络详情接口、查询区块链节点接口、查看链信息接口中的一种或多种。
标准接口包括通用的数据结构,例如为业务链的数据结构、区块链的数据结构。特殊的数据结构可以采用json string化方式封装到extraInfo。各区块链平台注册后即可无缝接入管理平台400,执行业务逻辑。
参见图6所示的区块链平台的注册流程示意图,异构区块链平台注册时,通过平台注册接口将平台信息(证书密钥、IP端口、API文件)注册至管理平台400,已有管理面接口的区块链平台可通过接口映射方式注册。
具体地,异构区块链平台可以发送平台注册请求,管理平台400根据该平台注册请求,获取用户输入的平台信息,该平台信息包括API文件。其中,API文件可以包括原始API文件以及API映射模板。
原始API文件包括path(例如为自定义url)、method(例如get、post、put、delete…)、parameter(例如为接口参数,区分路径参数、body参数等,有默认值需标注)、response(接口返回)、definition(结构体定义)中的一种或多种。
API映射模板包括请求url(含路径参数、query参数)、body参数、response的映射模板,以及管理面接口与标准接口的对应关系。
进一步地,平台信息还可以包括证书、密钥、IP地址和端口号等。然后管理平台400可以通过模板解析器处理用户输入的API映射模板、证书等平台信息,接着管理平台400确定该异构区块链平台是否已注册,格式是否正确。若是,则管理平台400可以保存证书、平台名、接口字段中的一种或多种至数据库,若否,则返回平台注册。
其中,管理平台400在通过映射管理面接口进行平台注册时可以按照如下映射规则进行映射:映射接口符合RESTFUL规范,包含body参数的接口支持body参数格式为application/json的接口映射,表单等格式的接口无法映射,返回值为二进制流的接口无法映 射,规范接口返回值中必返回的字段需能够返回,且映射字段类型需一致。
在一些可能的实现方式中,管理平台400在保存证书、平台名、接口字段时,可以先保存至数据库的临时信息模块,然后生成平台注册任务流,当任务成功时,保存到数据库的任务模块。管理平台400的流程引擎可以从数据库获取平台注册任务流,执行平台注册子任务。其中,管理平台400可以调用异构区块链平台的平台注册接口,从而注册异构区块链平台,生成联盟、业务链、组织的数据结构,并保存在数据库中。管理平台400还可以建立与异构区块链平台通信的超文本传输协议(Hypertext Transfer Protocol,HTTP)客户端,保存在缓存中,接着管理平台400可以更新任务状态为成功,将临时信息模块中的证书、平台名、接口字段保存在任务模块(正式区)。相应地,管理平台400内部可以实现接口处理器,标准接口被调用时,管理平台400可以使用模板解析器或反射等方法解析接口字段,自动转换接口调用格式,流程引擎执行任务,按平台类别调用不同底层接口,从而调度底层的异构区块链平台。
进一步地,管理平台400还可以通过自动化任务进程,批量获取数据库中联盟,以定时更新账本、监控等数据,并生成新的数据统计信息,然后将该统计信息返回至服务端200。
以上对异构区块链平台的注册流程进行了说明。在一些可能的实现方式中,异构区块链平台还可以注册已有区块链网络。具体地,异构区块链平台可以发送平台注册请求,该注册请求中包括区块链标识,管理平台400调用获取区块链列表接口,获取区块链网络接口,判断返回信息是否符合要求。若是,则生成联盟、业务、组织,并保存在数据库中。若否,则返回平台注册。
在该方法中,管理平台400参考多种区块链网络300的核心架构,抽象区块链通用的模型和功能模块,制订遵循RESTful接口规范的接入接口,通过统一的接入接口一站式管理异构区块链网络。管理平台400注册异构区块链平台时,支持基于接口、证书、访问域名的注册,以及支持存量链(已有的区块链网络)上传网络ID,从而实现对接已有的区块链网络。如此可以避免区块链平台的重复建设和长周期的业务改造,统一维护、调度和监控用户名下的所有业务和资源。
为了使得本申请的技术方案更加清楚、易于理解,下面结合政务场景对本申请实施例的区块链网络的管理方法进行说明。
参见图7所示的区块链网络的管理方法的流程图,该方法以政务场景下的创建联盟业务、加入联盟业务进行示例说明。
具体地,异构区块链平台调用平台注册接口触发平台注册,向政务区块链平台(政务场景中的管理平台400)发送平台注册请求,政务区块链平台响应于该平台注册请求,注册异构区块链平台至政务区块链平台。类似地,委办局1至委办局3可以调用用户注册接口触发用户注册,向政务区块链平台发送用户注册请求,政务区块链平台响应于yoghurt注册请求,注册委办局1对应的组织1,委办局2对应的组织2以及委办局3对应的组织3。
委办局1可以触发创建联盟操作,向政务管理中心(政务场景中的服务端200)发送创建联盟命令,政务管理中心可以向委办局2发送通知,当政务管理中心接收到委办局2同意加入联盟的响应时,政务管理中心可以向政务区块链平台发送表征审批通过的审批结果。如此,政务区块链平台可以调用创建联盟接口,向异构区块链平台发送创建联盟请求。 异构区块链平台可以在租户空间A或物理资源集A创建区块链实例/节点,以及在租户空间B或物理资源集B创建区块链实例/节点。其中,租户空间A或物理资源集A为组织1关联的资源空间,类似地,租户空间B或物理资源集B为组织2关联的资源空间。在一些可能的实现方式中,异构区块链平台可以还可以邀请租户空间B或物理资源集B加入通道或链。然后政务区块链平台可以持续查询任务状态,直至任务完成。
进一步地,委办局3还可以触发加入联盟操作,向政务管理中心发送加入联盟指令。政务管理中心可以向委办局1和委办局2发送通知,当政务管理中心接受到收到委办局1同意委办局3加入联盟的响应,以及委办局2同意委办局3加入联盟的响应时,政务管理中心可以向政务区块链平台发送表征审批通过的审批结果。如此,政务区块链平台可以调用加入联盟接口,向异构区块链平台发送加入联盟请求。异构区块链平台可以在租户空间C或物理资源集C上创建区块链实例/节点。其中,租户空间C或物理资源集C为组织3关联的资源空间。在一些可能的实现方式中,异构区块链平台可以还可以邀请租户空间C或物理资源集C加入通道或链。例如,异构区块链平台可以在租户空间C或物理资源集C上创建区块链实例/节点之前,先邀请租户空间C或物理资源集C加入通道或链。然后政务区块链平台可以持续查询任务状态,直至任务完成。
其中,政务区块链平台可以根据任务执行结果进行数据更新或回滚操作。例如,任务执行成功(也即任务完成),政务区块链平台可以进行数据更新,任务执行失败,政务区块链平台可以进行数据回滚。
图7对创建联盟以及加入联盟的业务流程进行了介绍,其他业务流程,如创建业务链、加入业务链、部署合约、删除联盟等可以参考上文相关内容描述,在此不再赘述。
该方法可以提供云上部署的区块链网络和云下部署的区块链网络的统一管理能力,对异构区块链网络的统一管理能力,以及已有区块链网络的纳管能力,实现对不同部署方式、不同架构的区块链网络进行集中运营或运维。并且,该方法可以提供中心化的运维管理可视化系统,从而方便进行租户管理、监控告警、流程审批等等。该方法还支持一键部署区块链网络,对区块链网络进行全生命周期管理,节点扩缩容较为容易,维护区块链网络的成本大幅降低。此外,该方法还可以提供云上多样的政务业务映射方式,简化政务业务上链流程。
基于本申请实施例提供的区块链网络的管理方法,本申请实施例还提供了一种如前述的区块链网络的管理平台400。下面将结合附图对本申请实施例提供的区块链网络的管理平台400进行介绍。
参见图8所示的区块链网络的管理平台400的结构示意图,该管理平台400包括:
通信模块802,用于接收用户注册请求,所述用户注册请求包括用户的用户类别,所述用户类别根据所述用户管理的区块链网络的部署方式确定;
注册模块804,用于根据所述用户注册请求,为所述用户注册对应的组织,所述组织关联有与所述用户类别对应的资源空间;
执行模块806,用于调用所述资源空间的处理接口,执行对应的业务逻辑。
在一些可能的实现方式中,所述用户类别包括云上用户,所述云上用户对应的资源空 间包括租户空间。
在一些可能的实现方式中,所述执行模块806具体用于:
调用所述租户空间的业务链创建接口,创建业务链。
在一些可能的实现方式中,所述执行模块806具体用于:
创建多个业务链,所述多个业务链中的至少两个业务链存在共用节点;或者,
创建多个业务链,所述多个业务链不存在共用节点;或者,
创建单个业务链,所述业务链的各个节点位于同一租户空间。
在一些可能的实现方式中,所述执行模块806具体用于:
获取建链模式参数;
根据所述建链模式参数创建单个或多个业务链。
在一些可能的实现方式中,所述建链模式参数根据所述用户之间的信任关系配置。
在一些可能的实现方式中,所述用户类别包括云下用户,所述云下用户对应的资源空间包括物理资源集。
在一些可能的实现方式中,所述执行模块806具体用于:
调用所述资源空间的创建联盟接口,在所述资源空间创建区块链节点,以创建联盟;或者,
调用所述资源空间的加入联盟接口,在所述资源空间创建区块链节点,以加入联盟;或者,
调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以退出联盟;或者,
调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以删除联盟。
在一些可能的实现方式中,所述资源空间来自异构区块链平台,所述通信模块还用于:
接收平台注册请求;
所述注册模块还用于:
通过平台注册接口,注册所述异构区块链平台的标准接口。
在一些可能的实现方式中,所述资源空间来自异构区块链平台,所述异构区块链平台具有管理面接口,所述通信模块还用于:
接收平台注册请求;
所述注册模块还用于:
获取所述管理面接口对应的标准接口,以注册所述异构区块链平台的标准接口。
在一些可能的实现方式中,所述区块链网络的管理平台提供有业务接口,所述执行模块具体用于:
响应于业务服务器对所述业务接口的调用,执行对应的业务逻辑。
根据本申请实施例的区块链网络的管理平台400可对应于执行本申请实施例中描述的方法,并且区块链网络的管理平台400的各个模块/单元的上述和其它操作和/或功能分别为了实现图3所示实施例中的各个方法的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供一种计算机集群。该计算机集群包括至少一台计算机,该至少一 台计算机中的任一台计算机可以来自云环境或者边缘环境,也可以是终端设备。该计算机集群具体用于实现如图8所示实施例中区块链网络的管理平台400的功能。
图9提供了一种计算机集群的结构示意图,如图9所示,计算机集群90包括多台计算机900,计算机900包括总线901、处理器902、通信接口903和存储器904。处理器902、存储器904和通信接口903之间通过总线901通信。
总线901可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器902可以为中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
通信接口903用于与外部通信。例如,通信接口903用于接收用户注册请求,或者是接收平台注册请求等等。
存储器904可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器904还可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器,硬盘驱动器(hard disk drive,HDD)或固态驱动器(solid state drive,SSD)。
存储器904中存储有计算机可读指令,处理器902执行该计算机可读指令,以使得计算机集群90执行前述区块链网络的管理方法(或实现前述管理平台400的功能)。
具体地,在实现图8所示的管理平台400的实施例的情况下,且图8中所描述的管理平台400的各模块如通信模块802、注册模块804、执行模块806的功能为通过软件实现的情况下,执行图8中各模块的功能所需的软件或程序代码可以存储在计算机集群90中的至少一个存储器904中。至少一个处理器902执行存储器904中存储的程序代码,以使得计算机集群90执行前述区块链网络的管理方法。
本申请实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,所述指令指示计算机或计算机集群执行上述区块链网络的管理方法。
本申请实施例还提供了一种计算机程序产品。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机或数据中心进行传输。所述计算机程序产品可以为一个软件安装包,在需要使用前述区块链网络的管理方法的任一方法的情况下,可以下载该计算机程序产品并在计算机或计算机集群上执行该计算机程序产 品。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。

Claims (25)

  1. 一种区块链网络的管理方法,其特征在于,应用于区块链网络的管理平台,所述方法包括:
    接收用户注册请求,所述用户注册请求包括用户的用户类别,所述用户类别根据所述用户管理的区块链网络的部署方式确定;
    根据所述用户注册请求,为所述用户注册对应的组织,所述组织关联有与所述用户类别对应的资源空间;
    调用所述资源空间的处理接口,执行对应的业务逻辑。
  2. 根据权利要求1所述的方法,其特征在于,所述用户类别包括云上用户,所述云上用户对应的资源空间包括租户空间。
  3. 根据权利要求2所述的方法,其特征在于,所述调用所述资源空间的处理接口,执行对应的业务逻辑,包括:
    调用所述租户空间的业务链创建接口,创建业务链。
  4. 根据权利要求3所述的方法,其特征在于,所述创建业务链,包括:
    创建多个业务链,所述多个业务链中的至少两个业务链存在共用节点;或者,
    创建多个业务链,所述多个业务链不存在共用节点;或者,
    创建单个业务链,所述业务链的各个节点位于同一租户空间。
  5. 根据权利要求3或4所述的方法,其特征在于,所述创建业务链,包括:
    获取建链模式参数;
    根据所述建链模式参数创建单个或多个业务链。
  6. 根据权利要求5所述的方法,其特征在于,所述建链模式参数根据所述用户之间的信任关系配置。
  7. 根据权利要求1所述的方法,其特征在于,所述用户类别包括云下用户,所述云下用户对应的资源空间包括物理资源集。
  8. 根据权利要求1、2或7所述的方法,其特征在于,所述调用所述资源空间的处理接口,执行对应的业务逻辑,包括:
    调用所述资源空间的创建联盟接口,在所述资源空间创建区块链节点,以创建联盟;或者,
    调用所述资源空间的加入联盟接口,在所述资源空间创建区块链节点,以加入联盟;或者,
    调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以退出联盟;或者,
    调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以删除联盟。
  9. 根据权利要求1至8任一项所述的方法,其特征在于,所述资源空间来自异构区块链平台,所述方法还包括:
    接收平台注册请求;
    通过平台注册接口,注册所述异构区块链平台的标准接口。
  10. 根据权利要求1至8任一项所述的方法,其特征在于,所述资源空间来自异构区 块链平台,所述异构区块链平台具有管理面接口,所述方法还包括:
    接收平台注册请求;
    获取所述管理面接口对应的标准接口,以注册所述异构区块链平台的标准接口。
  11. 根据权利要求1至10任一项所述的方法,其特征在于,所述区块链网络的管理平台提供有业务接口,所述执行对应的业务逻辑,包括:
    响应于业务服务器对所述业务接口的调用,执行对应的业务逻辑。
  12. 一种区块链网络的管理平台,其特征在于,所述平台包括:
    通信模块,用于接收用户注册请求,所述用户注册请求包括用户的用户类别,所述用户类别根据所述用户管理的区块链网络的部署方式确定;
    注册模块,用于根据所述用户注册请求,为所述用户注册对应的组织,所述组织关联有与所述用户类别对应的资源空间;
    执行模块,用于调用所述资源空间的处理接口,执行对应的业务逻辑。
  13. 根据权利要求12所述的平台,其特征在于,所述用户类别包括云上用户,所述云上用户对应的资源空间包括租户空间。
  14. 根据权利要求13所述的平台,其特征在于,所述执行模块具体用于:
    调用所述租户空间的业务链创建接口,创建业务链。
  15. 根据权利要求14所述的平台,其特征在于,所述执行模块具体用于:
    创建多个业务链,所述多个业务链中的至少两个业务链存在共用节点;或者,
    创建多个业务链,所述多个业务链不存在共用节点;或者,
    创建单个业务链,所述业务链的各个节点位于同一租户空间。
  16. 根据权利要求14或15所述的平台,其特征在于,所述执行模块具体用于:
    获取建链模式参数;
    根据所述建链模式参数创建单个或多个业务链。
  17. 根据权利要求16所述的平台,其特征在于,所述建链模式参数根据所述用户之间的信任关系配置。
  18. 根据权利要求12所述的平台,其特征在于,所述用户类别包括云下用户,所述云下用户对应的资源空间包括物理资源集。
  19. 根据权利要求12、13或18所述的平台,其特征在于,所述执行模块具体用于:
    调用所述资源空间的创建联盟接口,在所述资源空间创建区块链节点,以创建联盟;或者,
    调用所述资源空间的加入联盟接口,在所述资源空间创建区块链节点,以加入联盟;或者,
    调用所述资源空间的退出联盟接口,在所述资源空间回收区块链节点,以退出联盟;或者,
    调用所述资源空间的删除联盟接口,在所述资源空间回收区块链节点,以删除联盟。
  20. 根据权利要求12至19任一项所述的平台,其特征在于,所述资源空间来自异构区块链平台,所述通信模块还用于:
    接收平台注册请求;
    所述注册模块还用于:
    通过平台注册接口,注册所述异构区块链平台的标准接口。
  21. 根据权利要求12至19任一项所述的平台,其特征在于,所述资源空间来自异构区块链平台,所述异构区块链平台具有管理面接口,所述通信模块还用于:
    接收平台注册请求;
    所述注册模块还用于:
    获取所述管理面接口对应的标准接口,以注册所述异构区块链平台的标准接口。
  22. 根据权利要求12至21任一项所述的平台,其特征在于,所述区块链网络的管理平台提供有业务接口,所述执行模块具体用于:
    响应于业务服务器对所述业务接口的调用,执行对应的业务逻辑。
  23. 一种计算机集群,其特征在于,所述计算机集群包括至少一台计算机,所述至少一台计算机包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有计算机可读指令;所述至少一个处理器执行所述计算机可读指令,以使得所述计算机集群执行如权利要求1至11中任一项所述的方法。
  24. 一种计算机可读存储介质,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至11任一项所述的方法。
  25. 一种计算机程序产品,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至11任一项所述的方法。
PCT/CN2022/130584 2022-03-10 2022-11-08 一种区块链网络的管理方法及相关设备 WO2023168970A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202210228191.1 2022-03-10
CN202210228191 2022-03-10
CN202210550637.2 2022-05-20
CN202210550637.2A CN116781475A (zh) 2022-03-10 2022-05-20 一种区块链网络的管理方法及相关设备

Publications (1)

Publication Number Publication Date
WO2023168970A1 true WO2023168970A1 (zh) 2023-09-14

Family

ID=87937111

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/130584 WO2023168970A1 (zh) 2022-03-10 2022-11-08 一种区块链网络的管理方法及相关设备

Country Status (1)

Country Link
WO (1) WO2023168970A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117650A (zh) * 2018-07-25 2019-01-01 华为技术有限公司 一种企业云的创建方法和管理平台
US20190303882A1 (en) * 2018-03-28 2019-10-03 Bank Of America Corporation Blockchain-based property utilization
CN111045690A (zh) * 2018-10-12 2020-04-21 阿里巴巴集团控股有限公司 区块链节点服务部署方法、装置、系统、计算设备及介质
CN111245624A (zh) * 2020-01-14 2020-06-05 杭州趣链科技有限公司 一种多类型区块链部署管理系统和方法
CN111401703A (zh) * 2020-03-06 2020-07-10 中国银行股份有限公司 资源信息调度方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190303882A1 (en) * 2018-03-28 2019-10-03 Bank Of America Corporation Blockchain-based property utilization
CN109117650A (zh) * 2018-07-25 2019-01-01 华为技术有限公司 一种企业云的创建方法和管理平台
CN111045690A (zh) * 2018-10-12 2020-04-21 阿里巴巴集团控股有限公司 区块链节点服务部署方法、装置、系统、计算设备及介质
CN111245624A (zh) * 2020-01-14 2020-06-05 杭州趣链科技有限公司 一种多类型区块链部署管理系统和方法
CN111401703A (zh) * 2020-03-06 2020-07-10 中国银行股份有限公司 资源信息调度方法及装置

Similar Documents

Publication Publication Date Title
US20240028587A1 (en) System and method for a hybrid contract execution environment
US11921682B2 (en) Extracting data from a blockchain network
US11321337B2 (en) Crowdsourcing data into a data lake
US9077717B2 (en) Propagation and adoption of extensions across applications in networked solutions
JP6013594B2 (ja) ローカル支援されるクラウドベースのストレージ
US8612406B1 (en) Sharing business data across networked applications
US11258800B2 (en) Managing admin controlled access of external resources to group-based communication interfaces via a group-based communication system
US20120331118A1 (en) System and method for hosted dynamic case management
US20220083679A1 (en) Broker-assisted workflows
WO2022252995A1 (zh) 智能合约部署的方法及装置
CN112835985B (zh) 一种基于分布式账本的空间数据共享系统及方法
CN112801607A (zh) 一种管理服务平台及构建方法
WO2023130978A1 (zh) 一种企业数字中台中资源服务应用的调用系统和方法
Evermann et al. Workflow management on proof-of-work blockchains: Implications and recommendations
WO2023246187A1 (zh) 一种区块链网络的管理方法及相关设备
WO2023168970A1 (zh) 一种区块链网络的管理方法及相关设备
US20230224376A1 (en) Method and system to implement proxying for operations through an application program for a transaction manager
US11153388B2 (en) Workflow engine framework for cross-domain extension
CN116781475A (zh) 一种区块链网络的管理方法及相关设备
CN111414591B (zh) 工作流管理的方法和装置
CN113726747A (zh) 一种基于区块链的工业互联网数据访问控制系统
US20240054026A1 (en) Federated distributed mutation
US20240106828A1 (en) System and method for implementing a cloud agnostic data mesh module
WO2023134144A1 (zh) 一种在云系统中处理云服务的方法及相关装置
US20240126742A1 (en) Transaction manager library for automatic enlisting of distributed xa participants

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22930593

Country of ref document: EP

Kind code of ref document: A1