Block chain network information processing method and device, equipment, medium and product
By using multiple signature devices and voting devices in the blockchain network to sign and vote on the initial configuration transaction, and generating and verifying the target configuration transaction, the accuracy and security issues of update of blockchain node configuration information are solved, and a more transparent, fair and safe update process is achieved.
Patent Information
- Application Number
- CN202311537580.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-17
- Publication Date
- 2025-05-20
AI Technical Summary
In the prior art, the accuracy and security of blockchain node configuration information updates are low, and it is prone to abnormal operation due to misconfiguration of operation objects or malicious attacks.
By obtaining the updated configuration information of the blockchain network, the initial configuration transaction is generated and sent to multiple signature devices and voting devices, the signature and voting information of each device is obtained, the target configuration transaction is generated, and the verification process is performed in the blockchain network to ensure that each blockchain node updates its configuration information.
It improves the accuracy and security of the update of blockchain node configuration information in the blockchain network, ensures that the update process is transparent, fair and safe, and avoids the risks of single point failure and malicious attacks of operating objects.
Smart Images

Figure CN120021190A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of blockchain technology, and in particular, to a method, apparatus, device, medium, and product for processing information in a blockchain network. Background Art
[0002] In existing applications, when it is necessary to update the existing configuration information of blockchain nodes in a blockchain network, generally, specific operation entities are responsible for managing the configuration information. For example, the configuration information in blockchain nodes is updated so that each blockchain node can run the updated configuration information.
[0003] It can be seen that in existing applications, only specific operation entities are used to centrally update the configuration information of blockchain nodes. If the configuration information updated by the specific operation entity for the blockchain nodes is inaccurate, it will cause abnormal operation of the blockchain nodes. Therefore, how to improve the accuracy of updating the existing configuration information of blockchain nodes in a blockchain network is an urgent problem to be solved. Summary of the Invention
[0004] Embodiments of the present application provide a method, apparatus, device, medium, and product for processing information in a blockchain network, which can improve the accuracy of updating the existing configuration information of blockchain nodes in a blockchain network.
[0005] In a first aspect, the present application provides a method for processing information in a blockchain network, including:
[0006] Obtain update configuration information of the blockchain network; the update configuration information is used to update the existing configuration information of blockchain nodes in the blockchain network;
[0007] Generate an initial configuration transaction based on the update configuration information, and send the initial configuration transaction to N signature devices and M voting devices; both N and M are positive integers;
[0008] Obtain the transaction signatures for the initial configuration transaction sent by each signature device respectively, and obtain the voting information for the update configuration information in the initial configuration transaction sent by each voting device respectively;
[0009] Generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information;
[0010] Send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network updates its own existing configuration information based on the update configuration information after detecting that the target configuration transaction is successfully verified in the blockchain network.
[0011] In a second aspect, the present application provides an information processing device for a blockchain network, including:
[0012] A configuration acquisition unit, configured to acquire update configuration information of the blockchain network; the update configuration information is used to update the existing configuration information of blockchain nodes in the blockchain network;
[0013] A configuration sending unit, configured to generate an initial configuration transaction based on the update configuration information and send the initial configuration transaction to N signature devices and M voting devices; both N and M are positive integers;
[0014] A data sending unit, configured to acquire transaction signatures for the initial configuration transaction respectively sent by each signature device, and acquire voting information for the update configuration information in the initial configuration transaction respectively sent by each voting device;
[0015] A transaction generation unit, configured to generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information;
[0016] A configuration update unit, configured to send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its own existing configuration information based on the update configuration information.
[0017] Optionally, the update configuration information is uploaded by a target object; the configuration sending unit is specifically configured to:
[0018] Acquire the object private key of the target object, and perform signature processing on the update configuration information based on the object private key of the target object to generate a configuration signature of the update configuration information;
[0019] Generate the initial configuration transaction based on the update configuration information and the configuration signature;
[0020] Wherein, after the N signature devices verify the configuration signature in the initial configuration transaction successfully, they generate transaction signatures for the initial configuration transaction; and, after the M voting devices verify the configuration signature in the initial configuration transaction successfully, they generate voting information for the update configuration information.
[0021] Optionally, the voting information of any voting device for the update configuration information is an approval information or a negative information; the transaction generation unit is specifically configured to:
[0022] Generate voting statistical information for the updated configuration information based on the voting information of the M voting devices for the updated configuration information respectively.
[0023] Generate the target configuration transaction based on the voting statistical information, the M voting information, the initial configuration transaction, and the N transaction signatures.
[0024] Optionally, the transaction generation unit is specifically configured to:
[0025] Obtain the voting weights corresponding to the M voting devices respectively, and determine the voting weight of each voting device as the voting volume of each voting device.
[0026] Sum up the voting volumes of the voting devices to which the approval information in the M voting information belongs to generate a first voting statistic.
[0027] Sum up the voting volumes of the voting devices to which the negative information in the M voting information belongs to generate a second voting statistic.
[0028] Determine the first voting statistic and the second voting statistic as the voting statistical information.
[0029] Optionally, a verification contract for verifying and processing configuration transactions is deployed in each blockchain node in the blockchain network; the configuration update unit is specifically configured to:
[0030] Perform consensus processing on the target configuration transaction. If the consensus on the target configuration transaction is successful, upload the target configuration transaction to the blockchain network.
[0031] Call the verification contract to verify and process the M voting information, the N transaction signatures, and the voting statistical information in the target configuration transaction uploaded to the chain.
[0032] When the verification of the M voting information and the N transaction signatures is successful, and it is verified that the first voting statistic is greater than the second voting statistic, the target configuration transaction is verified successfully at any blockchain node.
[0033] If the number of blockchain nodes in the blockchain network that verify the target configuration transaction successfully is greater than or equal to the node number threshold, the target configuration transaction is verified successfully in the blockchain network.
[0034] Optionally, any one of the M voting information includes the voting result of the voting device to which the any one of the voting information belongs for the updated configuration information, and the voting signature of the voting device to which the any one of the voting information belongs for the voting result. The voting signature is obtained by signing the voting result with the device public key of the voting device to which the any one of the voting information belongs; the configuration update unit is specifically configured to:
[0035] Invoke the verification contract, and use the device public key each voting device has and the voting result in the M voting messages to perform signature verification on the voting result in the voting signature of each voting device respectively. If any blockchain node successfully verifies all the M voting signatures in the M voting messages, then any blockchain node successfully verifies the M voting messages.
[0036] Optionally, any one of the N transaction signatures is obtained by signing the initial configuration transaction based on the device private key of the signature device to which the transaction signature belongs; the configuration update unit is specifically configured to:
[0037] Invoke the verification contract, and use the device public key each signature device has and the initial configuration transaction to perform signature verification on the transaction signature of each signature device for the initial configuration transaction respectively. If any blockchain node successfully verifies all the N transaction signatures, then each blockchain node in the blockchain network successfully verifies the N transaction signatures.
[0038] Optionally, the information processing device of the blockchain network further includes a request acquisition unit, and the request acquisition unit is used to:
[0039] Receive an information acquisition request sent by a target blockchain node in the blockchain network; the information acquisition request is sent by the target blockchain node after detecting that the target configuration transaction is successfully verified in the blockchain network;
[0040] Based on the information acquisition request, return the updated configuration information to the target blockchain node, so that the target blockchain node broadcasts the received updated configuration information to the blockchain network;
[0041] Wherein, the blockchain nodes in the blockchain network other than the target blockchain node are used to receive the updated configuration information broadcast by the target blockchain node.
[0042] Optionally, the updated configuration information includes a target block height, and the target block height is used to indicate the effective time of the updated configuration information;
[0043] Wherein, any blockchain node in the blockchain network is used to update the existing configuration information based on the received updated configuration information when the maximum block height of the blocks in the block ledger it belongs to is equal to the target block height.
[0044] In a third aspect, the present application provides a computer device, including a processor and a memory. The processor is connected to the memory. The memory is used to store a computer program, and the processor is used to call the computer program so that the computer program executes the information processing method of the above blockchain network.
[0045] In a fourth aspect, the present application provides a computer-readable storage medium, in which a computer program is stored. The computer program is adapted to be loaded and executed by a processor so that a computer device having the processor executes the information processing method of the above blockchain network.
[0046] In a fifth aspect, the present application provides a computer program product, which includes computer programs / instructions. When the computer programs / instructions are executed by a processor, the information processing method of the above blockchain network can be implemented.
[0047] In the embodiments of the present application, update configuration information of a blockchain network for updating existing configuration information of blockchain nodes in the blockchain network is obtained; an initial configuration transaction is generated based on the update configuration information, and the initial configuration transaction is sent to N signature devices and M voting devices; transaction signatures for the initial configuration transaction respectively sent by each signature device are obtained, and voting information for the update configuration information in the initial configuration transaction respectively sent by each voting device is obtained; a target configuration transaction is generated based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information; the target configuration transaction is sent to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its existing configuration information based on the update configuration information. Since when generating the initial configuration transaction, the initial configuration transaction is signed by multiple signature devices, the security and integrity of the initial configuration transaction can be guaranteed. By having multiple voting devices vote on the update configuration information in the initial configuration transaction, the update configuration information can meet the expectations of the majority of voting devices, so that the update configuration information has transparency and fairness. By sending the target configuration transaction to the blockchain network for verification processing, verification of the update configuration information, as well as verification of the legality of the signature information of the signature devices for the initial configuration transaction and verification of the authenticity and legality of the voting information of the voting devices for the update configuration transaction can be achieved, thereby improving the accuracy and security of the configuration information, and further improving the accuracy of updating the existing configuration information of the blockchain nodes in the blockchain network. Description of the Drawings
[0048] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the accompanying drawings required for use in the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.
[0049] Figure 1a It is a schematic diagram of the network architecture of an information processing system provided by an embodiment of the present application;
[0050] Figure 1b It is a schematic diagram of a blockchain node system provided by an embodiment of the present application;
[0051] Figure 1c It is a schematic diagram of the composition of a blockchain provided by an embodiment of the present application;
[0052] Figure 2 It is a schematic diagram of the application scenario of an information processing method for a blockchain network provided by an embodiment of the present application;
[0053] Figure 3 It is a schematic flowchart of an information processing method for a blockchain network provided by an embodiment of the present application;
[0054] Figure 4 It is a schematic flowchart of another information processing method for a blockchain network provided by an embodiment of the present application;
[0055] Figure 5 It is a schematic diagram of the composition structure of an information processing device for a blockchain network provided by an embodiment of the present application;
[0056] Figure 6 It is a schematic diagram of the composition structure of a computer device provided by an embodiment of the present application. Detailed implementation manners
[0057] The following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, rather than all embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present application.
[0058] Artificial Intelligence (AI) is a theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a way similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines to enable machines to have the functions of perception, reasoning, and decision-making.
[0059] Artificial intelligence technology is an interdisciplinary subject with a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, and mechatronics. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning. The solution provided in the embodiments of this application belongs to the distributed storage and big data processing technologies under the field of artificial intelligence. For example, distributed storage can be used to store updated configuration information, and big data processing technology can be used to send target configuration transactions to the blockchain network for verification processing, and so on.
[0060] Blockchain is a new application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, and encryption algorithms. Blockchain, in essence, is a decentralized database, a series of data blocks generated by using cryptographic methods. Each data block contains information about a batch of network transactions, which is used to verify the validity of the information (anti-counterfeiting) and generate the next block. Blockchain can include the blockchain underlying platform, the platform product service layer, and the application service layer.
[0061] The underlying blockchain platform may include processing modules such as management, basic services, smart contracts, and operation detection. Among them, the management module is responsible for the identity information management of all blockchain participants, including maintaining the generation of public and private keys (account management), key management, and the maintenance of the correspondence between the real identity of users and blockchain addresses (permission management). And under authorization, it supervises and audits the transaction situations of certain real identities, and provides the rule configuration for risk control (risk control audit); the basic service module is deployed on all blockchain node devices to verify the validity of business requests, and after reaching a consensus on valid requests, records them on the storage. For a new business request, the basic service first performs interface adaptation parsing and authentication processing (interface adaptation), then encrypts the business information through a consensus algorithm (consensus management), and after encryption, transmits it to the shared ledger completely and consistently (network communication), and records and stores it; the smart contract module is responsible for the registration and issuance of contracts, as well as contract triggering and contract execution. Developers can define contract logic through a certain programming language, publish it to the blockchain (contract registration), and according to the logic of the contract terms, call keys or other events to trigger execution, complete the contract logic, and at the same time also provide functions for contract upgrade and cancellation; the operation detection module is mainly responsible for the deployment, configuration modification, contract setting, cloud adaptation during the product release process, and the visual output of the real-time status during product operation, such as: alarming, detecting network conditions, detecting the health status of node devices, etc.
[0062] The platform product service layer provides the basic capabilities and implementation frameworks of typical applications. Developers can build on these basic capabilities and overlay the characteristics of the business to complete the blockchain implementation of the business logic. The application service layer provides application services based on the blockchain solution for business participants to use. The solution of this application belongs to blockchain technology. For example, it can obtain the updated configuration information of blockchain nodes in the blockchain network composed of blockchains, and update the existing configuration information of blockchain nodes, and so on.
[0063] The technical solution of this application can be applicable to the scenario of updating the existing configuration information of blockchain nodes in a blockchain network. By obtaining the updated configuration information of the blockchain network and using multiple signature devices and multiple voting devices to perform signature processing and voting processing on the updated configuration information respectively, the accuracy and security of the updated configuration information can be improved, thereby improving the accuracy of updating the existing configuration information of blockchain nodes in the blockchain network. Optionally, the technical solution of this application can also be applicable to the scenario of deploying configuration information that does not exist on blockchain nodes in a blockchain network. For example, any configuration information that needs to be deployed on a blockchain node can be obtained. By performing signature processing, voting processing, and verification processing on the any configuration information, and when the verification is passed, the any configuration information can be deployed on the blockchain node, so that the any configuration information can be run on the blockchain node. Optionally, the technical solution of this application can also be applied to various scenarios, such as, but not limited to, scenarios such as cloud technology, artificial intelligence, intelligent transportation, and assisted driving.
[0064] Please refer to Figure 1a , Figure 1a which is a schematic diagram of the network architecture of an information processing system provided by an embodiment of this application. As Figure 1a shown, the schematic diagram of the network architecture includes a computer device 10 and a blockchain network 11. Among them, the blockchain network 11 includes multiple blockchain nodes, and each blockchain node in the blockchain network 11 can be used to update its own existing configuration information, etc. The computer device 10 can be used to obtain the updated configuration information of the blockchain network, and can also be used to obtain the transaction signature of the initial configuration transaction generated based on the updated configuration information by the signature device, obtain the voting information of the voting device for the updated configuration information, and generate a target configuration transaction based on the initial configuration transaction, the transaction signature, and the voting information, and send the target configuration transaction to the blockchain network for verification processing, etc.
[0065] It can be understood that the computer device mentioned in the embodiments of the present application may include, but is not limited to, a terminal device or a server, or may also be a system composed of a server and a terminal device. Among them, the above-mentioned terminal device may be an electronic device, including but not limited to a mobile phone, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a vehicle-mounted device, an intelligent voice interaction device, an augmented reality / virtual reality (AR / VR) device, a head-mounted display, a wearable device, a smart speaker, a smart home appliance, an aircraft, a digital camera, a camera, and other mobile internet devices (MID) with network access capabilities. Among them, the above-mentioned server may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or may also be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, vehicle-road collaboration, content delivery network (CDN), and big data and artificial intelligence platforms.
[0066] It should be specifically noted that when collecting and processing relevant data (such as updated configuration information, transaction signatures, object private keys, voting information, target configuration transactions, etc.) in the embodiments of the present application during instance applications, the informed consent or separate consent of the personal information subject should be obtained in strict accordance with the requirements of relevant regional laws and regulations, and subsequent data use and processing behaviors should be carried out within the scope authorized by laws and regulations and the personal information subject. For example, the object may refer to the user of the terminal device or the computer device.
[0067] In addition, please refer to Figure 1b , Figure 1b is a schematic diagram of a blockchain node system provided by the embodiments of the present application. The blockchain node system is a system composed of multiple blockchain nodes in a blockchain network. For example, Figure 1b The shown blockchain node system refers to a system for information processing. Each node in the blockchain node system can receive input information during normal operation and maintain the shared data within the blockchain node system based on the received input information. To ensure information intercommunication within the blockchain node system, there may be information connections between each node in the blockchain node system, and information can be transmitted between nodes through the above-mentioned information connections. For example, when any node in the blockchain node system receives input information, other nodes in the blockchain node system obtain the input information according to the consensus algorithm and store the input information as data in the shared data, so that the data stored on all nodes in the blockchain node system is consistent.
[0068] For each node in the blockchain node system, there is a corresponding node identifier, and each node in the blockchain node system can store the node identifiers of other nodes in the blockchain node system, so that the generated blocks can be broadcast to other nodes in the blockchain node system according to the node identifiers of other nodes later. A node identifier list as shown in the following table can be maintained in each node, and the node name and the node identifier are stored in the node identifier list correspondingly. Among them, the node identifier can be an IP (Internet Protocol) address and any other information that can be used to identify the node. Only the IP address is taken as an example in Table 1 for illustration.
[0069] Table 1
[0070] Node Name Node Identifier Node 1 117.114.151.174 Node 2 117.116.189.145 … … Node N 119.123.789.258
[0071] Each node in the blockchain node system stores the same blockchain. The blockchain consists of multiple blocks. See Figure 1c , Figure 1c which is a schematic diagram of the composition of a blockchain provided by an embodiment of the present application. The blockchain consists of multiple blocks. The genesis block includes a block header and a block body. The block header stores the input information feature value, version number, timestamp, and difficulty value. The block body stores the input information. The next block of the genesis block takes the genesis block as the parent block. The next block also includes a block header and a block body. The block header stores the input information feature value of the current block, the block header feature value of the parent block, version number, timestamp, and difficulty value, and so on. Thus, the block data stored in each block in the blockchain is associated with the block data stored in the parent block, ensuring the security of the input information in the block.
[0072] The embodiments of the present application utilize the smart contract in blockchain technology and the immutable feature of blockchain to process data, that is, a method for processing information in a blockchain network is provided. Among them, a smart contract, that is, a computerized protocol, can execute the terms of a certain contract, which is implemented by code deployed on a shared ledger and executed when certain conditions are met. According to actual business requirements, the code is used to complete automated transactions. Of course, smart contracts are not limited to executing contracts for transactions, but can also execute contracts for processing received information. A blockchain is a new application mode of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, and encryption algorithm. In essence, it is a decentralized database; a blockchain can be composed of multiple chained transaction records (also known as blocks) concatenated and protected by cryptography. The distributed ledger concatenated by the blockchain can enable multiple parties to effectively record transactions and permanently verify these transactions (immutable). Among them, the consensus mechanism refers to a mathematical algorithm for establishing trust and obtaining rights and interests among different nodes in a blockchain network; that is to say, the consensus mechanism is a mathematical algorithm commonly recognized by each network node of the blockchain.
[0073] Further, please refer to Figure 2 , Figure 2 which is a schematic diagram of an application scenario of a method for processing information in a blockchain network provided by the embodiments of the present application; as Figure 2 shown, the computer device 20 can obtain updated configuration information 22 for updating the existing configuration information of blockchain nodes in the blockchain network 21, generate an initial configuration transaction 23 based on the updated configuration information 22. For example, the initial configuration transaction 23 may include the updated configuration information 22 and the configuration signature of the target object. Further, the initial configuration transaction 23 can be sent to the signature device cluster 24 and the voting device cluster 25. The signature device cluster 24 may include N signature devices, and the voting device cluster 25 may include M voting devices. Further, each signature device in the signature device cluster 24 can respectively sign the initial configuration transaction 23 to obtain a transaction signature and send the transaction signature to the computer device 20. Each voting device in the voting device cluster 25 can respectively vote on the updated configuration information 22 in the initial configuration transaction 23 to obtain voting information and send the voting information to the computer device 20. The computer device 20 can generate a target configuration transaction 26 based on the initial configuration transaction 23, the transaction signature, and the voting information, and send the target configuration transaction 26 to the blockchain network 21 for verification processing. Each blockchain node in the blockchain network 21 can update its existing configuration information based on the updated configuration information 22 after detecting that the target configuration transaction 26 is successfully verified in the blockchain network 21, so as to run the updated configuration information 22 on each blockchain node in the blockchain network 21.
[0074] Further, please refer to Figure 3 , Figure 3 which is a schematic flowchart of an information processing method for a blockchain network provided by an embodiment of the present application. The execution subject in the embodiment of the present application may be an information processing device, and the information processing device may be a computer device or a cluster composed of multiple computer devices. The computer device may be a server, a terminal device, or other devices, and the embodiment of the present application does not limit this.
[0075] As Figure 3 shown, the information processing method for the blockchain network includes but is not limited to the following steps:
[0076] S101, obtain the updated configuration information of the blockchain network.
[0077] In the current scenario, when updating the existing configuration information of blockchain nodes in the blockchain network, a centralized management method is adopted for management, that is, a specific operation object uniformly updates the configuration information. If the specific operation object makes a mistake in setting the configuration information, it will lead to an incorrect update of the existing configuration information of the blockchain nodes, resulting in a low accuracy of the configuration information update. Or, an illegal terminal attacks the terminal device of the specific operation object to maliciously modify the configuration information of the blockchain nodes in the blockchain network, which will lead to a low security of the configuration information. Since the method of updating the existing configuration information on the blockchain nodes by a specific operation object only requires one specific object to operate, the update of the configuration information is not transparent and does not have fairness, which will cause trust problems.
[0078] Therefore, the embodiment of the present application provides a method for updating the existing configuration information of blockchain nodes in the blockchain network. By signing the new configuration information by a signature device, and voting on the new configuration information by a voting device, and verifying the new configuration information, the signature information obtained by signing, and the voting information obtained by voting, and sending the new configuration information to the blockchain nodes in the blockchain network for update when the verification is passed, it can make the configuration update more transparent, fair, complete, and more secure and accurate.
[0079] In the embodiment of the present application, when there is a need to update the existing configuration information in the blockchain network, the updated configuration information of the blockchain network can be obtained, so that the existing configuration information of the blockchain nodes in the blockchain network can be updated based on the obtained updated configuration information subsequently. The updated configuration information can be used to update the existing configuration information of the blockchain nodes in the blockchain network.
[0080] Among them, the update configuration information is used to indicate which configuration contents in the blockchain node need to be updated, and may include the configuration items to be updated and the corresponding configuration update parameters. The update configuration information may include one or more configurations that need to be updated. Optionally, the update configuration information may include, but is not limited to, server addresses, network parameters, data storage policies, deletion of blockchain nodes, addition of blockchain nodes, and so on. For example, the server address may refer to the server address of a new blockchain node when the blockchain network needs to add a new blockchain node. The network parameters may include, but are not limited to, ports added in the blockchain node or parameters corresponding to services. The data storage policy may refer to the type of database for storing data and the data storage method, and so on. In the embodiments of the present application, the update configuration information may also include information on any configuration that needs to be updated in the blockchain network, and the embodiments of the present application do not limit this.
[0081] Optionally, the update configuration information may further include configuration information in the blockchain node that does not need to be updated. Then, the subsequent update of the existing configuration information based on the update configuration information may refer to replacing the existing configuration information on the blockchain node based on the update configuration information.
[0082] In specific implementation, the target object may upload the update configuration information according to the requirements and function updates of the blockchain node system. For example, the target object may determine which configuration information on the blockchain node needs to be updated according to the actual situation of the blockchain nodes in the blockchain network, and thus may upload the update configuration information corresponding to the configuration to be updated. Among them, the target object may refer to the object that needs to update the configuration information of the blockchain node. For example, it may refer to core developers, managers, or any object with the permission to upload update configuration information.
[0083] For example, the target object may upload the configuration information through a terminal device. For example, a configuration file management system may be pre-deployed on the terminal device, so that the corresponding object account can be logged in to the configuration file management system, and the update configuration information can be uploaded in the configuration file management system. For example, the configuration file management system may refer to an application, a mini-program, a program website, or other systems with the function of uploading update configuration information. The configuration file management system may also refer to a web front-end or an application programming interface (API), and so on. The embodiments of the present application do not limit the form of the configuration file management system.
[0084] In the embodiments of the present application, by checking the existing configuration information of blockchain nodes in the blockchain network by the target object, when it is detected that the existing configuration information of blockchain nodes in the blockchain network needs to be updated, the updated configuration information can be uploaded in the configuration file management system, so that the information processing device can obtain the updated configuration information of the blockchain network. For example, the information processing device may refer to the background server of the configuration file management system, and the updated configuration information can be uploaded to the background server of the configuration file management system through the configuration file management system for analysis and judgment, so as to determine whether to update the existing configuration information of blockchain nodes in the blockchain network based on the updated configuration file. Among them, the configuration file management system can be deployed on the blockchain nodes in the blockchain network or on any terminal device, and the embodiments of the present application do not limit this.
[0085] Optionally, when uploading the updated configuration information, an encrypted transmission method can be used to upload it to ensure the security of the updated configuration information. For example, the updated configuration information can be encrypted to obtain encrypted information, and the encrypted information is uploaded to the information processing device. The information processing device decrypts the encrypted information using the decryption method corresponding to the information encryption to obtain the updated configuration information. By encrypting and transmitting the updated configuration information, the security of information transmission can be ensured, and further the security of subsequent configuration updates can be improved.
[0086] S102, generate an initial configuration transaction based on the updated configuration information, and send the initial configuration transaction to N signature devices and M voting devices.
[0087] In the embodiments of the present application, when the updated configuration information of the blockchain network is obtained, the updated configuration information can be sent to the signature device for signature processing, so that the integrity and authenticity of the updated configuration information can be verified based on the result of the signature processing in the subsequent process, for example, to determine whether the updated configuration information has been tampered with. And the updated configuration information is sent to the voting device for voting processing, so that the voting legitimacy and whether the voting device approves to use the updated configuration information to update the existing configuration information of the blockchain node can be verified based on the result of the voting processing.
[0088] In the embodiments of the present application, an initial configuration transaction can be generated based on updated configuration information and sent to N signature devices so that the N signature devices perform signature processing on the initial configuration transaction. And the initial configuration transaction is sent to M voting devices so that the M voting devices perform voting processing on the initial configuration transaction. Both N and M are positive integers. The N signature devices may refer to devices used to perform signature processing on the initial configuration transaction. The N signature devices may refer to the terminal devices used by signature participants, and the signature participants may include, for example, but are not limited to, developers and key participants. The key participants may refer to the persons designated to participate in signature processing. The M voting devices may refer to devices used to perform voting processing on the updated configuration information in the initial configuration transaction. The M voting devices may refer to the terminal devices used by voting participants, and the voting participants may include, for example, but are not limited to, developers, community members, blockchain node holders, and so on.
[0089] Among them, any one of the N signature devices performing signature on the initial configuration transaction means that the any one signature device checks the initial configuration transaction and determines that the initial configuration transaction is complete. The N signature devices may, for example, refer to the terminal devices used by multiple developers. The N signature devices can respectively check the initial configuration transaction, and the signatures of each signature device do not affect each other, so as to ensure the integrity and authenticity of the initial configuration transaction. Any one of the M voting devices performing voting on the initial configuration transaction means that the any one voting device approves or disapproves of the updated configuration information in the initial configuration transaction, that is, approves or disapproves of using the updated configuration information to update the existing configuration information of the blockchain node.
[0090] In one embodiment, the initial configuration transaction can be generated by combining the signature of the upload object of the updated configuration information, thereby improving the security and accuracy of the initial configuration transaction. Among them, if the updated configuration information is uploaded by the target object, the object private key of the target object can be obtained, and the updated configuration information is signed based on the object private key of the target object to generate a configuration signature of the updated configuration information; an initial configuration transaction is generated based on the updated configuration information and the configuration signature. Among them, after the N signature devices verify the configuration signature in the initial configuration transaction successfully, a transaction signature for the initial configuration transaction is generated; and, after the M voting devices verify the configuration signature in the initial configuration transaction successfully, voting information for the updated configuration information is generated.
[0091] Among them, since the updated configuration information is uploaded by the target object, in order to improve the security of the updated configuration information and prevent the subsequent updated configuration information from being tampered with, the target object can upload the object private key, and the configuration file management system can sign the updated configuration information according to the object private key of the target object to generate a configuration signature for the updated configuration information. Thus, an initial configuration transaction can be generated based on the updated configuration information and the configuration signature. For example, the object public key and object private key of the target object can be generated, and the object private key of the target object is used to sign the updated configuration information. Subsequently, the object public key of the target object can be used to verify the signature of the configuration signature, so as to verify whether the updated configuration information has been tampered with. The object public key of the target object and the object private key of the target object are a pair of key pairs. The object public key of the target object can be sent to any device, while the object private key of the target object is saved by the target object itself and will not be sent to other devices to avoid leakage.
[0092] Furthermore, the signature process may refer to digital signature, that is, the object private key of the target object is used to encrypt the updated configuration information to generate a configuration signature for the updated configuration information. The configuration signature may refer to the encrypted information. Subsequently, when the initial configuration transaction is received, the configuration signature in the initial configuration transaction can be verified. If the verification passes, it means that the updated configuration information in the initial configuration transaction is uploaded by the target object and has not been tampered with. Thus, the reliability of the source of the updated configuration information can be ensured, and the security and integrity of the updated configuration information can be guaranteed.
[0093] In an optional implementation, during the process of signing the updated configuration information according to the object private key of the target object to generate a configuration signature for the updated configuration information, a hash value can also be added to verify the signature process to prevent illegal tampering and improve the signature security.
[0094] In the embodiment of the present application, after successfully verifying the configuration signature in the initial configuration transaction, the initial configuration transaction is sent to N signature devices for signature processing, and a transaction signature for the initial configuration transaction can be generated. After successfully verifying the configuration signature in the initial configuration transaction, the initial configuration transaction is sent to M voting devices for voting processing, and voting information for the updated configuration information in the initial configuration transaction can be generated. Since before the signature processing and voting processing, the configuration signature of the target object for the updated configuration information is verified and sent to the signature devices and voting devices for processing after the verification is successful, the accuracy of the signature processing and voting processing can be improved.
[0095] In one implementation, before sending the initial configuration transaction to N signature devices, N signature devices can be selected first, and then the initial configuration transaction can be sent to the N signature devices. For example, N signature devices can be arbitrarily selected from multiple signature devices, or N signature devices can be selected in turn from multiple signature devices, or N specified signature devices can be selected from multiple signature devices, or N signature devices can be selected from multiple signature devices according to other predetermined rules, etc. The embodiments of the present application do not limit the manner of selecting N signature devices. By selecting N signature devices from multiple signature devices for signature, the initial configuration transaction can be signed to ensure the security and integrity of the initial configuration transaction. And since the number of signature devices is multiple, the signature security can be increased.
[0096] In one implementation, before sending the initial configuration transaction to M voting devices, M voting devices can be selected first, and then the initial configuration transaction can be sent to the M voting devices. For example, M signature devices can be selected from N signature devices as voting devices, or M voting devices can be arbitrarily selected from multiple voting devices, or M voting devices can be selected in turn from multiple voting devices, or M specified voting devices can be selected from multiple voting devices, or M voting devices can be selected from multiple voting devices according to other predetermined rules, etc. The embodiments of the present application do not limit the manner of selecting M voting devices. By selecting M voting devices from multiple voting devices for voting, the transparency and fairness of the updated configuration information can be ensured.
[0097] S103, obtain the transaction signatures for the initial configuration transaction respectively sent by each signature device, and obtain the voting information for the updated configuration information in the initial configuration transaction respectively sent by each voting device.
[0098] In the embodiments of the present application, by sending the initial configuration transaction to N signature devices, the N signature devices can respectively perform signature processing on the initial configuration transaction to obtain transaction signatures of the N signature devices for the initial configuration transaction respectively. By sending the initial configuration transaction to M voting devices, the M voting devices can respectively perform voting processing on the updated configuration information in the initial configuration transaction to obtain voting information of the M voting devices for the updated configuration information in the initial configuration transaction. Among them, the transaction signature may refer to the signature obtained by the voting device performing a digital signature operation on the initial configuration transaction. Subsequently, verifying the transaction signature can determine the identity information of the signature device and whether the signature of the signature device is legal. The voting information may refer to the voting content of the voting device for the initial configuration transaction. For example, the voting information may include approval information for approving the updated configuration information and negative information for disapproving the updated configuration information. By each voting device voting on the updated configuration information, it can be determined whether each voting device approves or disapproves of running the updated configuration information in the blockchain nodes in the blockchain network.
[0099] Specifically, the initial configuration transaction can be sent to N signature devices, and then the users of the N signature devices (i.e., signature participants) can perform digital signatures on the signature devices. For example, the N signature devices may include terminal devices used by core developers or terminal devices used by key participants. The N signature devices can jointly and independently sign the initial configuration transaction to ensure the security and integrity of the initial configuration transaction.
[0100] Optionally, when selecting N signature devices, N fixed signature devices can be preset in advance, and then the users of the N fixed signature devices can perform signature processing through the signature devices. Alternatively, N signature devices can also be dynamically selected for each update of the configuration information. For example, for each update of the configuration information, different N signature devices can be selected for signature each time, or N signature devices can be selected from multiple signature devices in turn for signature processing. The embodiments of the present application do not make any limitations in this regard.
[0101] Furthermore, by sending the initial configuration transaction to the N signature devices, the N signature devices can respectively check the initial configuration transaction to verify whether the content in the initial configuration transaction is correct. For example, verify whether the updated configuration information in the initial configuration transaction is reasonable, whether the configuration signature of the target object is correct, etc. And when it is determined that all the content in the initial configuration transaction is correct, signature processing is performed on the initial configuration transaction.
[0102] Among them, each signature device signing the initial configuration transaction may refer to using the device private key of each signature device to sign the initial configuration transaction, obtaining the transaction signature of each signature device. By using the device private key of the signature device to sign the initial configuration transaction, it is equivalent to the user of the signature device verifying the initial configuration transaction. Therefore, the security and integrity of the initial configuration transaction can be proved, preventing illegal devices from tampering with the initial configuration transaction and causing abnormal operation of blockchain nodes in the blockchain network.
[0103] Furthermore, by sending the initial configuration transaction to N signature devices and M voting devices for voting, each signature device can vote on the updated configuration information in the initial configuration transaction respectively, obtaining the voting information of each signature device for the updated configuration information. Each voting device voting on the updated configuration information may refer to the user of each voting device (i.e., the voting participant) voting on the updated configuration information according to their own will. Each voting object can vote in favor of or against (oppose) the updated configuration information, and the voting results of each voting object are independent of each other. Since each voting participant votes on the updated configuration information according to their own will, the voting results are more transparent and fair.
[0104] In an optional implementation, for example, the initial configuration transaction can be sent to the configuration file management system or the voting platform, and each voting device can vote on the initial configuration transaction by logging in to the configuration file management system or the voting platform. Further optionally, after obtaining the voting results of each voting device for the updated configuration information, the voting results can be displayed in real time on the configuration file management system or the voting platform, facilitating other voting device users to understand the current voting situation.
[0105] In an optional implementation, a voting deadline can be set for the updated configuration information, so as to vote on the updated configuration information within the voting deadline. The voting deadline can be set to one day, one week, one month, etc. For example, the voting deadline can be determined according to at least one of the urgency and impact scope of the content to be updated indicated in the updated configuration information. For example, if the urgency is higher than the degree threshold, the voting deadline is less than the first deadline. If the urgency is lower than or equal to the degree threshold, the voting deadline is greater than or equal to the first deadline. If the impact scope is greater than the first scope, the voting deadline is less than the first deadline. If the impact scope is less than or equal to the first scope, the voting deadline is greater than or equal to the first deadline. For example, if the content to be updated is a system vulnerability, the urgency is higher than the degree threshold. If the content to be updated is a node crash, the impact scope is greater than the first scope, etc.
[0106] In the embodiments of the present application, by setting a voting period, the voting information within the voting period can be determined as N voting information of N voting devices for updating configuration information, and the voting information outside the voting period can be not processed, which can improve the data processing efficiency. And for the configuration information with a larger influence range and a higher urgency level, by setting a shorter voting period, the requirements of multiple voting devices for configuration update can be quickly collected, so as to quickly update the existing configuration information on the blockchain node and improve the configuration update efficiency. For the configuration information with a smaller influence range and a lower urgency level, by setting a longer voting period, more voting information of voting devices for updating configuration information can be obtained, which can improve the accuracy and fairness of configuration update.
[0107] S104. Generate a target configuration transaction based on the initial configuration transaction, N transaction signatures of N signature devices for the initial configuration transaction, and M voting information of M voting devices for the updated configuration information.
[0108] In the embodiments of the present application, since the transaction signatures of N signature devices for the initial configuration transaction and the voting information of M voting devices for the updated configuration information in the initial configuration transaction are obtained, a target configuration transaction can be generated based on the initial configuration transaction, N transaction signatures of N signature devices for the initial configuration transaction, and M voting information of M voting devices for the updated configuration information.
[0109] For example, the N transaction signatures of N signature devices for the initial configuration transaction and the M voting information of M voting devices for the updated configuration information can be added to the initial configuration transaction to obtain the target configuration transaction. Subsequently, when verifying the target configuration transaction, the N transaction signatures, M voting information, and the initial configuration transaction in the target configuration transaction can be verified to determine whether to deploy the updated configuration information in the initial configuration transaction on the blockchain nodes in the blockchain network.
[0110] In one embodiment, if the voting information of any voting device for the updated configuration information is an approval information or a negative information, the target configuration transaction can be generated in the following manner: generate voting statistical information for the updated configuration information based on the voting information of M voting devices for the updated configuration information respectively; generate a target configuration transaction based on the voting statistical information, M voting information, the initial configuration transaction, and N transaction signatures.
[0111] Among them, the voting statistical information can be used to reflect the voting situation of M voting devices. For example, the voting statistical information can reflect that the voting information of each voting device is approval information or negative information, and the final voting result for the updated configuration information. The final voting result can be used to reflect that the updated configuration information is voted through or not voted through.
[0112] In the embodiments of the present application, the target configuration transaction may include voting statistical information for updating configuration information, M voting information, an initial configuration transaction, and N transaction signatures. Therefore, when subsequently verifying the target configuration transaction, the voting statistical information, M voting information, the initial configuration transaction, and N transaction signatures can be verified respectively, which is equivalent to verifying the target configuration transaction from multiple dimensions, improving the verification accuracy, and thus improving the accuracy of the updated configuration information.
[0113] In one embodiment, the method for generating voting statistical information for updating configuration information based on the voting information of M voting devices respectively for updating configuration information may include: obtaining the voting weights corresponding to the M voting devices respectively, and determining the voting amount of each voting device as the voting weight of each voting device; performing a summation process on the voting amounts of the voting devices to which the approval information in the M voting information belongs to generate a first voting statistic; performing a summation process on the voting amounts of the voting devices to which the negative information in the M voting information belongs to generate a second voting statistic; and determining the first voting statistic and the second voting statistic as the voting statistical information.
[0114] Among them, the voting weight of each voting device can be used to indicate the voting importance of each voting device. For example, the voting weight of each voting device can be determined based on the voting digital resources held by each voting device or the contribution degree to the community. For example, the voting digital resources may refer to community governance digital resources, which can be used to reflect the contribution amount to the community. The more the contribution amount of the voting device to the community, the more the resource amount of the voting digital resources held by the voting device. The larger the resource amount of the voting digital resources held by the voting device, the higher the attention degree of the voting device to the configuration update. For example, the voting device may be a stakeholder for the configuration update. The contribution degree to the community can be used to indicate the contribution amount made to the community. When the voting device makes a contribution to the community, it will obtain corresponding incentives. The more incentives the voting device has, the higher the contribution degree of the voting device to the corresponding community. The fewer incentives the voting device has, the lower the contribution degree of the voting device to the corresponding community.
[0115] Since the voting digital resources held by each voting device or the contribution degree to the community are different, when each voting device votes on the same configuration information, the voting weights are different. Therefore, the voting information of each device can be weighted by combining the voting weights of each voting device to determine the final voting result.
[0116] In the embodiments of the present application, the first vote statistic may refer to the statistical quantity of approval information. The second vote statistic may refer to the statistical quantity of negative information. If the first vote statistic is greater than the second vote statistic, it may indicate that the vote on the updated configuration information passes, that is, most voting objects approve of updating the existing configuration information of the blockchain nodes in the blockchain network based on the updated configuration information. If the first vote statistic is less than the second vote statistic, it may indicate that the vote on the updated configuration information fails, that is, most voting objects do not approve of updating the existing configuration information of the blockchain nodes in the blockchain network based on the updated configuration information. If the first vote statistic is equal to the second vote statistic, it may indicate that the vote statistics of approving and disapproving of updating the existing configuration information of the blockchain nodes in the blockchain network based on the updated configuration information are equal. A vote on the initial configuration information may be initiated again and sent to M voting devices for voting, or a vote on the initial configuration information may be initiated again and sent to another M voting devices among multiple voting devices to determine whether to finally use the updated configuration information for configuration update. The vote statistical information may include the first vote statistic and the second vote statistic.
[0117] For example, suppose M is equal to 5, and the voting weights corresponding to the 5 voting devices are a1, a2, a3, a4, a5 in sequence, where a1 > a2 > a3 > a4 > a5, and the voting information corresponding to the 5 voting devices is approval information, negative information, approval information, negative information, and approval information in sequence. Then, the voting amounts of the voting devices to which the approval information in the M voting information belongs are summed up to generate the first vote statistic as a1 + a3 + a5, and the voting amounts of the voting devices to which the negative information in the M voting information belongs are summed up to generate the second vote statistic as a2 + a4. If a1 + a3 + a5 is greater than a2 + a4, it indicates that the vote on the updated configuration information passes, that is, most voting devices approve of updating the existing configuration information based on the updated configuration information.
[0118] In the embodiments of the present application, a target configuration transaction is generated based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, the M voting information of the M voting devices for the updated configuration information, and the vote statistical information. Therefore, the target configuration transaction can also be verified in combination with the vote statistical information. Since the corresponding voting weight is obtained for each voting device, by weighting the voting information of the voting device in combination with the voting weight of the voting device, the vote statistical information is obtained. The weights of each voting device are different, so the voting amounts obtained by voting are also different, which can improve the voting accuracy and further improve the accuracy of subsequent verification of the target configuration transaction.
[0119] S105. Send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network updates its existing configuration information based on the updated configuration information after detecting that the target configuration transaction is successfully verified in the blockchain network.
[0120] In the embodiment of the present application, by sending the target configuration transaction to the blockchain network for verification processing and performing configuration update based on the updated configuration information after successful verification, the accuracy of configuration information update can be improved. For example, each blockchain node in the blockchain network can call the deployed verification contract to verify the target configuration transaction to determine whether the updated configuration information is authentic and complete. The verification contract may refer to an intelligent contract used to verify configuration transactions.
[0121] In the embodiment of the present application, since the target configuration transaction is generated based on the initial configuration transaction, N transaction signatures of N signature devices for the initial configuration transaction, and M voting information of M voting devices for the updated configuration information, each blockchain node in the blockchain network can verify the initial configuration transaction respectively to determine whether the initial configuration transaction has been tampered with, so as to determine the authenticity and integrity of the initial configuration transaction. Verify the N transaction signatures of N signature devices for the initial configuration transaction to verify whether the N transaction signatures are true and legal, so as to determine the authenticity and integrity of the initial configuration transaction. Verify the M voting information of M voting devices for the updated configuration information to determine the legality and accuracy of the voting information. If the verification of the initial configuration transaction, N transaction signatures, and M voting information by each blockchain node in the blockchain network all pass, the updated configuration information can be deployed to each blockchain node in the blockchain network, so that each blockchain node in the blockchain network can update its existing configuration information based on the updated configuration information.
[0122] In one embodiment, when verifying the updated configuration information, the blockchain network may request to download the updated configuration information, and then verify it based on the downloaded updated configuration information and the updated configuration information in the target configuration transaction to determine whether they are consistent. If the downloaded updated configuration information is consistent with the updated configuration information in the target configuration transaction, it may indicate that the updated configuration information is true, valid, and not tampered with. If the downloaded updated configuration information is inconsistent with the updated configuration information in the target configuration transaction, it may indicate that the updated configuration information has been tampered with. Optionally, the blockchain network may request to download the updated configuration information for verification from the configuration file management system after the verification of N transaction signatures and M voting devices is successful.
[0123] Specifically, the configuration file management system can receive an information acquisition request sent by a target blockchain node in the blockchain network; the information acquisition request is sent by the target blockchain node after detecting that the target configuration transaction is successfully verified in the blockchain network; based on the information acquisition request, update configuration information is returned to the target blockchain node, so that the target blockchain node broadcasts the received update configuration information to the blockchain network; among them, the blockchain nodes other than the target blockchain node in the blockchain network are used to receive the update configuration information broadcast by the target blockchain node. The target blockchain node can refer to any blockchain node or a specified blockchain node in the blockchain network.
[0124] In the embodiment of the present application, after the blockchain network successfully verifies N transaction signatures and M voting devices, it requests the configuration file management system to download and verify the update configuration information, which can further confirm whether the update configuration information has been tampered with, thereby improving the accuracy of configuration update. By sending the update configuration information to the target blockchain node in the blockchain network, the target blockchain node can broadcast the update configuration information to the blockchain network, so that the blockchain nodes other than the target blockchain node in the blockchain network can receive the update configuration information broadcast by the target blockchain node, and then each blockchain node updates the existing configuration information based on the update configuration information. By returning the update configuration information to the target blockchain node, the update configuration information can be deployed to each blockchain node in the blockchain network, which can improve the efficiency of configuration information deployment.
[0125] Optionally, the update configuration information can also be returned to each blockchain node in the blockchain network based on the information acquisition request, so that each blockchain node in the blockchain network can deploy the update configuration information, and then update the existing configuration information based on the update configuration information.
[0126] In one embodiment, the update configuration information may include a target block height, and the target block height is used to indicate the effective time of the update configuration information; among them, any blockchain node in the blockchain network is used to update the existing configuration information based on the received update configuration information when the maximum block height of the blocks in the affiliated block ledger is equal to the target block height. The maximum block height of the blocks in the affiliated block ledger refers to the block height of the block currently generated by the blockchain node. By deploying the target block height in the update configuration information, when the maximum block height of the blocks currently generated by each blockchain node in the blockchain network is equal to the target block height, the update configuration information can be run, and then the existing configuration information can be updated based on the update configuration information. Since each blockchain node in the blockchain network can run the update configuration information when the maximum block height of the blocks currently generated is equal to the target block height, the stability and consistency of the blockchain network can be guaranteed.
[0127] In an embodiment of the present application, update configuration information of a blockchain network for updating existing configuration information of blockchain nodes in the blockchain network is obtained; an initial configuration transaction is generated based on the update configuration information, and the initial configuration transaction is sent to N signature devices and M voting devices; transaction signatures for the initial configuration transaction sent by each signature device are obtained, and voting information for the update configuration information in the initial configuration transaction sent by each voting device is obtained; a target configuration transaction is generated based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information; the target configuration transaction is sent to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its existing configuration information based on the update configuration information. Since when generating the initial configuration transaction, the initial configuration transaction is signed by multiple signature devices, the security and integrity of the initial configuration transaction can be guaranteed. By having multiple voting devices vote on the update configuration information in the initial configuration transaction, the update configuration information can meet the expectations of the majority of voting devices, so that the update configuration information has transparency and fairness. By sending the target configuration transaction to the blockchain network for verification processing, verification of the update configuration information can be achieved, as well as verification of the legality of the signature information of the signature devices for the initial configuration transaction, and verification of the authenticity and legality of the voting information of the voting devices for the update configuration transaction, thereby improving the accuracy and security of the configuration information, and further improving the accuracy of updating the existing configuration information of blockchain nodes in the blockchain network.
[0128] Further, please refer to Figure 4 , Figure 4 which is a schematic flowchart of another information processing method for a blockchain network provided by an embodiment of the present application. This information processing method for the blockchain network can be applied to an information processing system, and the information processing system may include a configuration file management system, a blockchain network, N signature devices, and M voting devices. Among them, the blockchain network includes multiple blockchain nodes, and a verification contract for verifying configuration transactions is deployed on each blockchain node. As Figure 4 shown, this information processing method for the blockchain network includes but is not limited to the following steps:
[0129] S201, the configuration file management system obtains the update configuration information of the blockchain network.
[0130] Among them, the update configuration information may be uploaded by a target object, such as a core developer, logging in to the configuration file management system.
[0131] In the embodiments of the present application, the configuration file management system can be used to receive, process, store, and distribute updated configuration information, and can also be used to communicate with the verification contract in the blockchain node to provide services for the configuration information update operation on the blockchain node. The configuration file management system can also have functions such as configuration information upload, threshold signature, and generation of initial configuration transactions and target configuration transactions. The blockchain network is responsible for managing the target configuration transactions and verification contracts on the blockchain.
[0132] Furthermore, the blockchain nodes in the blockchain network can be used to participate in the process of verifying and reaching consensus on the target configuration transactions to ensure the normal operation and stability of the entire network. The verification contract can refer to a smart contract. The verification contract is deployed on each blockchain node in the blockchain network. The verification contract is used to verify the validity of the target configuration transaction, voting information, and the configuration signature of the target object. The verification contract is also used to communicate with the configuration file management system to download the updated configuration information and verify and load the updated configuration information. Community participants can include the target object, users of signature devices, and users of voting devices. The users of signature devices can participate in the signature process of the initial configuration transaction through the signature device. The users of voting devices can participate in the voting process for the updated configuration information, as well as discuss and provide feedback on the updated configuration information through the voting device, so as to achieve a more fair, transparent, and secure configuration update, and so on.
[0133] S202. The configuration file management system generates an initial configuration transaction based on the updated configuration information and sends the initial configuration transaction to N signature devices.
[0134] In an optional implementation, when the updated configuration information is obtained, the configuration file management system can perform a hash operation on the updated configuration information to obtain the file hash value of the updated configuration information. Based on the updated configuration information and the file hash value, a blockchain transaction is generated, that is, an initial configuration transaction is generated. Subsequently, when the initial configuration transaction is received, the file hash value in the initial configuration transaction can be verified. If the verification is successful, it indicates that the updated configuration information in the initial configuration transaction is true and has not been tampered with, and the updated configuration information has consistency and integrity.
[0135] Further optionally, the target block height can also be obtained, and the target block height is used to indicate the effective time of the updated configuration information. For example, when the configuration file management system detects the height setting instruction of the target object, it can obtain the input data of the target object and determine the input data as the target block height. Thus, when generating the initial configuration transaction, the initial configuration transaction can be generated based on the updated configuration information, the file hash value, and the target block height. By combining the target block height to generate the initial configuration transaction, after the updated configuration information is verified and the updated configuration information is deployed on the blockchain node subsequently, the updated configuration information can be run when the block height in the blockchain node is equal to the target block height. By setting the target block height, each blockchain node in the blockchain network can run the updated configuration information based on the target block height, which can coordinate the update progress of each blockchain node, thereby realizing the synchronous update of the configuration information of each blockchain node in the blockchain network and improving the consistency and stability of the blockchain network.
[0136] Further, the configuration file management system can attach the configuration signature of the target object for the updated configuration information to the initial configuration transaction to ensure the reliability of the source of the initial configuration information in the initial configuration transaction. Optionally, the target object can also preview the initial configuration transaction on the configuration file management system to confirm that the content such as the updated configuration information, the target block height, and the configuration signature is correct.
[0137] In the embodiment of the present application, the target object can check the updated configuration information to determine whether there is an error in the updated configuration information. If it is determined that the updated configuration information is correct, an update request can be submitted to the configuration file management system. The configuration file management system can then generate an initial configuration transaction based on the updated configuration information, the file hash value, and the target block height, thereby entering the signature processing process of the next stage. By creating and uploading new configuration files, the configuration signature of the target object, the target block height, and calculating the hash value of the updated configuration information and other links, the security and correctness of the configuration update can be ensured.
[0138] S203. The configuration file management system sends the initial configuration transaction to M voting devices.
[0139] In the embodiment of the present application, the specific implementation manners in steps S201 to S203 can refer to the implementation manners in steps S101 to S102 above, and will not be elaborated here.
[0140] S204. N signature devices perform signature processing on the initial configuration transaction to obtain N transaction signatures, and send the N transaction signatures to the configuration file management system.
[0141] In the embodiments of the present application, N signature devices can respectively perform signature processing on the initial configuration transaction to obtain N transaction signatures, and send the N transaction signatures to the configuration file management system.
[0142] In an optional implementation, N signature devices can respectively perform signature processing on the initial configuration transaction to obtain N transaction signatures, and send the N signed transactions to the configuration file management system. The configuration file management system generates a threshold signature based on the N signed transactions, and subsequently, the threshold signature can be added to the initial configuration transaction for subsequent verification.
[0143] Specifically, each signature device performing signature processing on the initial configuration transaction may refer to performing a digital signature operation on the initial configuration transaction using the private key of the user of each signature device. The signature information obtained by each signature device through digital signature can be called a partial signature. The configuration file management system can obtain the partial signatures of each signature device, thereby obtaining N transaction signatures, and generate a complete threshold signature based on the N transaction signatures (i.e., N partial signatures). Subsequently, a target configuration transaction can be generated based on the initial configuration transaction, the threshold signature, and M voting information.
[0144] Among them, the threshold signature is a cryptographic technique that allows multiple participants (such as multiple signature devices) to jointly generate a digital signature. The threshold signature aims to achieve multi-factor authentication, improve the security and decentralization degree of the system. Since the threshold signature requires multiple signature devices to jointly complete the signature process, even if the device private key of a certain signature device is leaked, it will not affect the security of the entire system. When the preset signature threshold is reached, the signature is considered valid. Since the threshold signature avoids the trust dependence on a single signer, multiple blockchain nodes in the blockchain system can jointly sign the initial configuration transaction, so the risk of the initial configuration transaction being tampered with or affected by centralization can be reduced. And since the signature result generated by the threshold signature can be verified by any third party, for example, it can be verified by the verification contract of the blockchain node, the non-repudiation of the initial configuration transaction can be ensured. In the blockchain system, the threshold signature has high application value in scenarios such as consensus mechanisms, multi-party computing, and key sharing. At the same time, the threshold signature technology can also be applied to other distributed computing systems and security protocols.
[0145] Optionally, when generating a complete threshold signature based on N partial signatures, a secure multi-signature algorithm can be used to generate a complete threshold signature based on the N partial signatures. For example, the signature algorithm can include, but is not limited to, Schnorr signature (a digital signature algorithm), BLS signature (an algorithm for signature aggregation and key aggregation), or Elliptic Curve Digital Signature Algorithm (ECDSA), etc. The embodiments of the present application do not limit the selection of the signature algorithm. This threshold signature can indicate that the initial configuration transaction has the consensus of the majority of signature participants. Subsequently, when verifying the N transaction signatures, the public keys of the N signature devices can be obtained, a global public key can be generated based on the public keys of the N signature devices, and the threshold signature can be verified based on the global public key. If the verification passes, it indicates that the initial configuration transaction has the consensus of the majority of signature participants, and the initial configuration transaction has security and integrity.
[0146] In the embodiments of the present application, by using the threshold signature method to sign the initial configuration transaction, when verifying the threshold signature subsequently, if the verification passes, it indicates that the initial configuration transaction has security and integrity, and the initial configuration transaction has the consensus of the majority of signature participants.
[0147] S205. M voting devices perform voting processing on the updated configuration information in the initial configuration transaction to obtain M voting messages, and send the M voting messages to the configuration file management system.
[0148] In the embodiments of the present application, after generating the initial configuration transaction, the target object or community participants can initiate a voting proposal regarding the updated configuration information in the configuration file management system. The voting proposal can include the description information for the updated configuration information and the initial configuration transaction. The description information can be used to describe which configurations in the blockchain network are updated by the updated configuration information, facilitating the voting devices to quickly understand the updated configuration information.
[0149] Optionally, when performing the voting processing, the updated configuration information can be voted on through the Proof of Stake (POS) mechanism, so as to obtain wide recognition and ensure that the configuration update meets the expectations of the majority of authoritative objects. Among them, POS is a blockchain consensus mechanism used to verify and create new blocks in a distributed network, as well as the target configuration transactions in the new blocks. POS focuses on the amount and time of the voting digital resources held by the voting devices, reducing the overall energy consumption of the blockchain system. The probability of the blockchain system providing rewards is proportional to the amount or rights and interests of the voting digital resources held by the voting devices. POS has the functions of reducing hardware and energy consumption, high security, and stable effects.
[0150] That is to say, since the N voting devices adopt the POS mechanism for voting processing during voting, voting devices with a larger amount of voting digital resources held can be set with a larger voting weight, and voting devices with a smaller amount of voting digital resources held can be set with a smaller voting weight, thereby improving the accuracy of voting and ensuring the stability of the blockchain network.
[0151] For example, a voting deadline for updating configuration information can be set. After the voting deadline ends, the configuration file management system can count the voting information. If the voting information meets the preset voting approval criteria, for example, the preset voting approval criteria can mean that the first voting statistic of the approval information in the voting information of the N voting devices is greater than the second voting statistic of the negative information, or the first voting statistic of the approval information in the voting information of the N voting devices is greater than a preset multiple of the second voting statistic of the negative information, then it is considered that the voting is passed, this voting is successful, and the updated configuration information is widely recognized and meets the expectations of most authoritative objects. The voting information can include the number of approval information, the number of negative information, the first voting statistic, the second voting statistic, the total voting statistic information, and the voting status of each voting device such as voting success or voting failure, etc. By attaching the voting information and signature information to the initial configuration transaction, a target configuration transaction can be obtained, and thus this target configuration transaction can be sent to the blockchain network to provide a basis for the subsequent verification of the verification contract and the download of the updated configuration information.
[0152] S206. The configuration file management system generates a target configuration transaction based on the initial configuration transaction, N transaction signatures, and M voting information, and sends the target configuration transaction to the blockchain network.
[0153] In the embodiment of the present application, the specific implementation manner of generating the target configuration transaction in step S206 can refer to the implementation manner in the above step S104, which will not be elaborated here.
[0154] Optionally, before sending the target configuration transaction to the blockchain network, the configuration file management system can verify the integrity of the target configuration transaction. For example, it can determine whether information such as voting information, the configuration signature and file hash value of the target object, and the target effective height is incorrect. After determining that all these information is accurate, the configuration file management system can broadcast the target configuration transaction to the blockchain network, so that the target configuration transaction can be received by each blockchain node in the blockchain network and the target configuration transaction can be packaged into a new block. Further optionally, the configuration file management system can detect the on-chain status of the target configuration transaction to determine that the target configuration transaction is successfully packaged and on-chain. For example, the configuration file management system can subscribe to the transaction hash of the target configuration transaction or poll the data in the blockchain network to determine whether the target configuration transaction is on-chain.
[0155] Furthermore, after determining that the target configuration information has been successfully uploaded to the blockchain, the configuration file management system may generate a receipt message for the target configuration transaction. The receipt message is used to notify the target object and the voting devices that the target configuration transaction has been successfully uploaded to the blockchain, facilitating subsequent verification and query.
[0156] Optionally, if the configuration file system generates a threshold signature based on N transaction signatures when obtaining the N transaction signatures, it may generate a target configuration transaction based on the initial configuration transaction, the threshold signature, and M voting messages, and send the target configuration transaction to the blockchain network. Subsequently, when verifying the signature information in the target configuration transaction, the threshold signature may be verified, and if the threshold signature verification is passed, it is determined that each blockchain node in the blockchain network has successfully verified the N transaction signatures.
[0157] S207. Each blockchain node in the blockchain network separately invokes its own verification contract to perform verification processing on the target configuration transaction.
[0158] In the embodiments of the present application, a verification contract for performing verification processing on configuration transactions may be pre-deployed on each blockchain node in the blockchain network, and subsequently, the target configuration transaction may be verified based on the deployed verification contract.
[0159] In one embodiment, the method for verifying and processing the target configuration transaction in the blockchain network may include: the blockchain network is used to perform consensus processing on the target configuration transaction. If the consensus on the target configuration transaction is successful, the target configuration transaction is uploaded to the blockchain network. Each blockchain node in the blockchain network is used to invoke the verification contract to verify and process the M voting messages, N transaction signatures, and voting statistics information in the uploaded target configuration transaction. When any blockchain node in the blockchain network successfully verifies the M voting messages and N transaction signatures and verifies that the first voting statistic is greater than the second voting statistic, the target configuration transaction is successfully verified at any blockchain node. If the number of blockchain nodes in the blockchain network that have successfully verified the target configuration transaction is greater than or equal to the node number threshold, the target configuration transaction is successfully verified in the blockchain network.
[0160] Among them, the blockchain network performs consensus processing on the target configuration transaction. After successful consensus, the target configuration transaction can be uploaded to the blockchain network, so that each blockchain node in the blockchain network can call the verification contract to verify the M voting information, N transaction signatures, and voting statistics information in the uploaded target configuration transaction respectively. When the blockchain nodes in the blockchain network that are greater than the node quantity threshold (i.e., most blockchain nodes) verify the target configuration transaction successfully, it can be determined that the target configuration transaction is verified successfully in the blockchain network, and then the updated configuration information can be deployed on each blockchain node in the blockchain network. Since the blockchain nodes that are greater than the node quantity threshold verify the target configuration transaction successfully, it indicates that the updated configuration information is true, legal, and has not been tampered with, and most voting devices approve the configuration update based on the updated configuration information. Therefore, the updated configuration information can be deployed to each blockchain node, and subsequently, the respective existing configuration information can be updated based on the updated configuration information.
[0161] In one embodiment, any one of the M voting information includes the voting result of the voting device to which the any one of the voting information belongs for the updated configuration information, and the voting signature of the voting device to which the any one of the voting information belongs for the voting result. The voting signature is obtained by signing the voting result with the device public key of the voting device to which the any one of the voting information belongs; then the method for any blockchain node in the blockchain network to call the verification contract to verify the M voting information in the uploaded target configuration transaction may include:
[0162] Any blockchain node is used to call the verification contract, and uses the device public key each voting device has and the voting result in the M voting information to verify the voting result in each voting signature of each voting device respectively. If any blockchain node successfully verifies the M voting signatures in the M voting information, then any blockchain node verifies the M voting information successfully.
[0163] Among them, the device public key of each voting device and the device private key of each voting device are a pair of key pairs. The device public key of each voting device can be sent to any device, while the device private key of each voting device is saved by each device itself and will not be sent to other devices. The voting signature of each voting device can be generated by signing the voting information of each voting device using the device private key of each voting device. The voting signature of each voting device can be ciphertext information. Verifying the voting result in the voting signature of each voting device can refer to decrypting the voting signature of each voting device using the device public key that each voting device has respectively, that is, decrypting the ciphertext information of each voting device to obtain the result after decrypting the voting signature of each voting device. If the decrypted result is consistent with the voting information of each voting device, it indicates that the signature verification is successful, and the voting signature of each voting device is authentic.
[0164] In one embodiment, any one of the N transaction signatures is obtained by signing the initial configuration transaction based on the device private key of the signature device to which the transaction signature belongs; then, the method for a blockchain node in the blockchain network to call the verification contract to verify the N transaction signatures in the target configuration transaction to be uploaded to the chain may include:
[0165] Any blockchain node is used to call the verification contract, and uses the device public key that each signature device has respectively and the initial configuration transaction to verify the transaction signature of each signature device for the initial configuration transaction respectively. If any blockchain node successfully verifies all N transaction signatures, then each blockchain node in the blockchain network successfully verifies the N transaction signatures.
[0166] Among them, the device public key of each signature device and the device private key of each signature device are a pair of key pairs. The device public key of each signature device can be sent to any device, while the device private key of each signature device is saved by each device itself and will not be sent to other devices. The transaction signature of each signature device for the initial configuration transaction can refer to the signature generated by signing the initial configuration transaction using the device private key of each signature device. The transaction signature of each signature device can be ciphertext information. If the signature verification is successful, it indicates that the transaction signature of each signature device is authentic, that is, the initial configuration transaction has not been tampered with. Each blockchain node in the blockchain network can use this signature verification method to verify the N transaction signatures to determine whether the transaction signature is authentic and valid, thereby improving the accuracy of verifying the target configuration transaction.
[0167] In an alternative implementation, the verification contract may capture the target configuration transaction in the block generated in the blockchain network, so as to extract the target configuration transaction from the block generated in the blockchain network, facilitating verification. For example, the voting information in the target configuration transaction may be verified first. Specifically, it may be verified whether the threshold signature is correct, whether the voting information is correct, and whether the number of voting devices is correct. Optionally, the threshold signature may refer to a pre-specified target voting number. If the number of transaction signatures passing the signature verification reaches the target voting number, it indicates that the signature verification is passed. If the number of transaction signatures passing the signature verification does not reach the target voting number, it indicates that the signature verification fails. For example, it may be verified first whether the threshold signature passes the signature verification. If the threshold signature passes the signature verification, then it is verified whether the voting amount is correct. For example, it is checked whether the voting data (such as voting statistics information, approval information, opposition information, etc.) and the voting status (success or failure) are correct. If correct, it is considered that the verification of the transaction signature and the voting information is passed.
[0168] Further optionally, the verification contract may verify the configuration signature of the target object. For example, the object public key of the target object may be obtained, and the configuration signature of the target object is processed for signature verification using the object public key of the target object. If the signature verification is successful, it indicates that the source of the updated configuration information is reliable and has not been tampered with.
[0169] Further optionally, after the verification contract passes the verification of the transaction signature, the voting information, and the configuration signature of the target object, the smart contract may communicate with the configuration file management system through the blockchain node to initiate an information acquisition request. The information acquisition request is used to download the updated configuration information from the configuration file management system. After the smart contract downloads the updated configuration information, it may verify the downloaded updated configuration information according to the file hash value in the target configuration transaction. For example, a hash value is obtained by performing a hash operation on the downloaded updated configuration information, and it is compared whether the hash value is consistent with the file hash value in the target configuration transaction. If they are consistent, the consistency and integrity of the file can be ensured. Optionally, the smart contract may also compare whether the information content in the downloaded updated configuration information is consistent with the updated configuration information in the target configuration transaction. If they are consistent, it is considered that the updated configuration information is complete and accurate.
[0170] S208. When each blockchain node detects that the target configuration transaction is verified successfully and the maximum block height of the block in its respective block ledger is equal to the target block height, it updates its existing configuration information based on the updated configuration information.
[0171] Among them, when the maximum block height of the block in each blockchain node's respective block ledger is equal to the target block height, the updated configuration information can be hot-loaded onto the blockchain node.
[0172] Further, in the case where the foregoing verifications all pass, each blockchain node may deploy the updated configuration information on the blockchain node, and the verification contract may also check the target block height to ensure whether the block height of the current block in the blockchain node reaches or exceeds the target block height. When the block height of the current block in the blockchain node reaches the target block height, the respective existing configuration information is updated based on the updated configuration information.
[0173] Further optionally, after the verification contract passes the verification, the configuration file management system may distribute the new configuration file to each blockchain node in the blockchain network. For example, the updated configuration file may be sent to each blockchain node in the blockchain network by means of broadcasting, peer-to-peer transmission or other secure and reliable methods. After receiving the updated configuration information, each blockchain node in the blockchain network may temporarily store the updated configuration information and prepare to update the existing configuration information at the target block height. Further, each blockchain node in the blockchain network may detect the block height of the current blockchain network to ensure the accurate timing of dynamically loading the updated configuration information. After receiving the updated configuration information, the blockchain node detects the block height of the current blockchain network and compares it with the target block height to determine whether to update the existing configuration information. When the block height of the blockchain network reaches the target block height, each blockchain node loads the updated configuration information into the blockchain node and updates the original configuration information. During the configuration update process, the blockchain node may detect the updated configuration information to determine whether the updated configuration information is reasonable, and update the existing configuration information when it is determined that the updated configuration information is reasonable, so as to ensure the continuous operation and data security of the blockchain node.
[0174] Further optionally, after updating or replacing the updated configuration information, each blockchain node may verify whether the updated configuration information takes effect correctly. For example, certain components on the blockchain node may be restarted to enable the updated configuration information to take effect, so as to ensure that the blockchain node continues to operate normally.
[0175] S209. When the update of each blockchain node in the blockchain network is completed, the blockchain network returns an update completion prompt message to the configuration file management system.
[0176] Among them, the update completion prompt message is used to prompt that the updated configuration information of each blockchain node in the blockchain network has been updated. By sending the update completion prompt message to the configuration file management system, the configuration file management system can feedback the configuration update situation to the target object, signature participants and voting participants.
[0177] Optionally, a configuration update upload module, a threshold signature module, a voting module, a transaction sending module, a verification and loading module, and an update status feedback module may be included in the information processing system. Among them, the configuration update upload module can be used to receive the update configuration information created and uploaded by the target object, process and store the update configuration information, and provide services for subsequent verification, signature, and voting processes. For example, the update configuration information of the blockchain network can be obtained through the configuration update upload module. The configuration update upload module can also be used to generate an initial configuration transaction based on the update configuration information and send the initial configuration transaction to N signature devices. The configuration update upload module can also be used to send the initial configuration transaction to M voting devices. Further, the threshold signature module can be used to perform signature processing on the initial configuration transaction to obtain N transaction signatures and send the N transaction signatures to the configuration update upload module so that the configuration update upload module can generate a threshold signature based on the N signed transactions. Since the configuration update upload module and the signature device jointly complete the threshold signature process, the security and integrity of the target configuration transaction can be ensured. In addition, the configuration update upload module can also be used to generate a target configuration transaction based on the initial configuration transaction, N transaction signatures, and M voting information. The transaction sending module can be used to send the target configuration transaction to the blockchain network. The voting module can be used to vote on the update configuration information in the initial configuration transaction to obtain M voting information and send the M voting information to the configuration update upload module. The verification and loading module can be used to call their respective verification contracts to perform verification processing on the target configuration transaction. After successful verification, it can download the update configuration information from the configuration update upload module and load the update configuration information into each blockchain node in the blockchain network when the maximum block height of the block in the block ledger of the blockchain node is equal to the target block height. The update status feedback module can be used to return an update completion prompt message to the configuration update upload module when each blockchain node is updated. After each blockchain node in the blockchain network successfully loads the update configuration information, it can send a notification of update completion to the configuration file management system so that the configuration file management system can understand the configuration update status of each blockchain node and thus provide feedback to the target object.
[0178] In the embodiments of the present application, through a hierarchical and modular system architecture, the configuration update of blockchain nodes in a secure, efficient, and fair blockchain network can be achieved. Since different modules work together, the smooth progress of the entire configuration update process can be ensured, and the consistency and stability of the entire blockchain network can be improved. Through the above process, the updated configuration information can be successfully hot-loaded into each blockchain node of the blockchain network and take effect when the target block height is reached, enabling real-time synchronous update of each blockchain node in the blockchain network and improving the consistency and stability of the entire blockchain network. By combining multiple aspects such as a voting mode, threshold signature, and verification contract, a secure, transparent, and more fair blockchain node configuration update mechanism can be provided. After the vote passes and the updated configuration information takes effect, the blockchain system can achieve real-time configuration synchronous update, improving the consistency and stability of the entire blockchain network.
[0179] In the embodiments of the present application, obtain the update configuration information of the blockchain network for updating the existing configuration information of the blockchain nodes in the blockchain network; generate an initial configuration transaction based on the update configuration information and send the initial configuration transaction to N signature devices and M voting devices; obtain the transaction signatures for the initial configuration transaction sent by each signature device respectively, and obtain the voting information for the update configuration information in the initial configuration transaction sent by each voting device respectively; generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information; send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its existing configuration information based on the update configuration information. Since when generating the initial configuration transaction, multiple signature devices sign the initial configuration transaction, the security and integrity of the initial configuration transaction can be guaranteed. By having multiple voting devices vote on the update configuration information in the initial configuration transaction, the updated configuration information can meet the expectations of the majority of voting devices, making the updated configuration information transparent and fair. By sending the target configuration transaction to the blockchain network for verification processing, the verification of the updated configuration information, the legitimacy of the signature information of the signature device for the initial configuration transaction, and the authenticity and legitimacy of the voting of the voting device for the updated configuration transaction can be achieved, thereby improving the accuracy and security of the configuration information and further improving the accuracy of updating the existing configuration information of the blockchain nodes in the blockchain network.
[0180] The method of the embodiments of the present application is introduced above. Next, the device of the embodiments of the present application is introduced.
[0181] See Figure 5 , Figure 5It is a schematic structural diagram of a composition of an information processing device for a blockchain network provided by an embodiment of the present application. The information processing device for the blockchain network can be deployed on an information processing device; the information processing device for the blockchain network can be used to execute corresponding steps in the information processing method for the blockchain network provided by the embodiment of the present application. The information processing device 50 for the blockchain network includes:
[0182] A configuration acquisition unit 501, configured to acquire update configuration information of the blockchain network; the update configuration information is used to update the existing configuration information of blockchain nodes in the blockchain network;
[0183] A configuration sending unit 502, configured to generate an initial configuration transaction based on the update configuration information, and send the initial configuration transaction to N signature devices and M voting devices; both N and M are positive integers;
[0184] A data sending unit 503, configured to acquire transaction signatures for the initial configuration transaction respectively sent by each signature device, and acquire voting information for the update configuration information in the initial configuration transaction respectively sent by each voting device;
[0185] A transaction generation unit 504, configured to generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information;
[0186] A configuration update unit 505, configured to send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its existing configuration information based on the update configuration information.
[0187] Optionally, the update configuration information is uploaded by a target object; the configuration sending unit 502 is specifically configured to:
[0188] Acquire the object private key of the target object, and perform signature processing on the update configuration information based on the object private key of the target object to generate a configuration signature of the update configuration information;
[0189] Generate the initial configuration transaction based on the update configuration information and the configuration signature;
[0190] Wherein, after the N signature devices verify the configuration signature in the initial configuration transaction successfully, they generate transaction signatures for the initial configuration transaction; and, after the M voting devices verify the configuration signature in the initial configuration transaction successfully, they generate voting information for the update configuration information.
[0191] Optionally, the voting information of any voting device for the updated configuration information is approval information or negative information; the transaction generation unit 504 is specifically configured to:
[0192] Generate voting statistical information for the updated configuration information based on the voting information of the M voting devices for the updated configuration information respectively;
[0193] Generate the target configuration transaction based on the voting statistical information, the M voting information, the initial configuration transaction, and the N transaction signatures.
[0194] Optionally, the transaction generation unit 504 is specifically configured to:
[0195] Obtain the voting weights corresponding to the M voting devices respectively, and determine the voting weight of each voting device as the voting volume of each voting device;
[0196] Sum up the voting volumes of the voting devices to which the approval information in the M voting information belongs to generate a first voting statistic;
[0197] Sum up the voting volumes of the voting devices to which the negative information in the M voting information belongs to generate a second voting statistic;
[0198] Determine the first voting statistic and the second voting statistic as the voting statistical information.
[0199] Optionally, a verification contract for verifying and processing configuration transactions is deployed in each blockchain node in the blockchain network; the configuration update unit 505 is specifically configured to:
[0200] Perform consensus processing on the target configuration transaction. If the consensus on the target configuration transaction is successful, upload the target configuration transaction to the blockchain network;
[0201] Call the verification contract to verify and process the M voting information, the N transaction signatures, and the voting statistical information in the target configuration transaction uploaded to the chain;
[0202] When the verification of the M voting information and the N transaction signatures is successful and it is verified that the first voting statistic is greater than the second voting statistic, the target configuration transaction is successfully verified at any blockchain node;
[0203] If the number of blockchain nodes in the blockchain network that successfully verify the target configuration transaction is greater than or equal to the node number threshold, the target configuration transaction is successfully verified in the blockchain network.
[0204] Optionally, any one of the M voting messages includes the voting result of the voting device to which the any one of the voting messages belongs for the updated configuration information, and the voting signature of the voting device to which the any one of the voting messages belongs for the voting result. The voting signature is obtained by signing the voting result with the device public key of the voting device to which the any one of the voting messages belongs; the configuration update unit 505 is specifically configured to:
[0205] Call the verification contract, and use the device public key of each voting device and the voting result in the M voting messages to respectively verify the voting result in the voting signature of each voting device. If any blockchain node successfully verifies all the M voting signatures in the M voting messages, then any blockchain node successfully verifies the M voting messages.
[0206] Optionally, any one of the N transaction signatures is obtained by signing the initial configuration transaction based on the device private key of the signature device to which the any one of the transaction signatures belongs; the configuration update unit 505 is specifically configured to:
[0207] Call the verification contract, and use the device public key of each signature device and the initial configuration transaction to respectively verify the transaction signature of each signature device for the initial configuration transaction. If any blockchain node successfully verifies all the N transaction signatures, then each blockchain node in the blockchain network successfully verifies the N transaction signatures.
[0208] Optionally, the information processing device 50 of the blockchain network further includes a request acquisition unit 506, and the request acquisition unit 506 is configured to:
[0209] Receive an information acquisition request sent by a target blockchain node in the blockchain network; the information acquisition request is sent by the target blockchain node after detecting that the target configuration transaction is successfully verified in the blockchain network;
[0210] Based on the information acquisition request, return the updated configuration information to the target blockchain node, so that the target blockchain node broadcasts the received updated configuration information to the blockchain network;
[0211] Wherein, the blockchain nodes in the blockchain network other than the target blockchain node are used to receive the updated configuration information broadcast by the target blockchain node.
[0212] Optionally, the updated configuration information includes a target block height, and the target block height is used to indicate the effective time of the updated configuration information;
[0213] Among them, any blockchain node in the blockchain network is used to update the existing configuration information based on the received update configuration information when the maximum block height of the block in the block ledger to which it belongs is equal to the target block height.
[0214] It should be noted that Figure 5 For the content not mentioned in the corresponding embodiments, reference can be made to the description of the method embodiments, which will not be elaborated here.
[0215] In the embodiments of the present application, obtain the update configuration information of the blockchain network for updating the existing configuration information of the blockchain nodes in the blockchain network; generate an initial configuration transaction based on the update configuration information, and send the initial configuration transaction to N signature devices and M voting devices; obtain the transaction signatures for the initial configuration transaction sent by each signature device respectively, and obtain the voting information for the update configuration information in the initial configuration transaction sent by each voting device respectively; generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information; send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its own existing configuration information based on the update configuration information. Since when generating the initial configuration transaction, multiple signature devices sign the initial configuration transaction, the security and integrity of the initial configuration transaction can be guaranteed. By having multiple voting devices vote on the update configuration information in the initial configuration transaction, the update configuration information can meet the expectations of the majority of voting devices, making the update configuration information transparent and fair. By sending the target configuration transaction to the blockchain network for verification processing, verification of the update configuration information can be achieved, as well as verification of the legality of the signature information of the signature devices for the initial configuration transaction, and verification of the authenticity and legality of the voting of the voting devices for the update configuration transaction, thereby improving the accuracy and security of the configuration information, and further improving the accuracy of updating the existing configuration information of the blockchain nodes in the blockchain network.
[0216] See Figure 6 , Figure 6 is a schematic structural diagram of a computer device provided by the embodiments of the present application. As Figure 6As shown in the figure, the above computer device 60 may include: a processor 601 and a memory 602. Among them, the processor 601 is connected to the memory 602. For example, the processor 601 can be connected to the memory 602 through a bus. Optionally, the above computer device 60 may further include: a network interface 603, where the network interface 603 is connected to the processor 601 and the memory 602. For example, the processor 601 can be connected to the memory 602 and the network interface 603 through a bus. Among them, the computer device can be a terminal device or a server.
[0217] The processor 601 is configured to support the information processing device of the blockchain network to execute the corresponding functions in the above information processing method of the blockchain network. The processor 601 can be a central processing unit (CPU), a network processor (NP), a hardware chip, or any combination thereof. The above hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The above PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0218] The memory 602 is used to store program codes and the like. The memory 602 may include a volatile memory (VM), such as a random access memory (RAM); the memory 602 may also include a non-volatile memory (NVM), such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid-state drive (SSD); the memory 602 may further include a combination of the above types of memories.
[0219] The network interface 603 is used to provide network communication functions.
[0220] The processor 601 can call the program code to perform the following operations:
[0221] Obtain the updated configuration information of the blockchain network; the updated configuration information is used to update the existing configuration information of the blockchain nodes in the blockchain network;
[0222] Generate an initial configuration transaction based on the updated configuration information, and send the initial configuration transaction to N signature devices and M voting devices; both N and M are positive integers;
[0223] Obtain the transaction signatures for the initial configuration transaction sent by each signature device respectively, and obtain the voting information for the updated configuration information in the initial configuration transaction sent by each voting device respectively;
[0224] Generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the updated configuration information;
[0225] Send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its own existing configuration information based on the updated configuration information.
[0226] It should be understood that the computer device 60 described in the embodiments of the present application can execute the descriptions of the information processing method of the above blockchain network in the corresponding embodiments described in the foregoing Figure 3 and Figure 4 and can also execute the descriptions of the information processing device of the above blockchain network in the corresponding embodiments described in the foregoing Figure 5 and will not be elaborated here. In addition, the description of the beneficial effects of adopting the same method will not be elaborated either.
[0227] In an embodiment of the present application, update configuration information of a blockchain network for updating existing configuration information of blockchain nodes in the blockchain network is obtained; an initial configuration transaction is generated based on the update configuration information, and the initial configuration transaction is sent to N signature devices and M voting devices; transaction signatures for the initial configuration transaction respectively sent by each signature device are obtained, and voting information for the update configuration information in the initial configuration transaction respectively sent by each voting device is obtained; a target configuration transaction is generated based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the update configuration information; the target configuration transaction is sent to the blockchain network for verification processing, so that each blockchain node in the blockchain network, after detecting that the target configuration transaction is successfully verified in the blockchain network, updates its existing configuration information based on the update configuration information. Since when generating the initial configuration transaction, multiple signature devices are used to sign the initial configuration transaction, the security and integrity of the initial configuration transaction can be ensured. By having multiple voting devices vote on the update configuration information in the initial configuration transaction, the update configuration information can meet the expectations of the majority of the voting devices, making the update configuration information transparent and fair. By sending the target configuration transaction to the blockchain network for verification processing, verification of the update configuration information can be achieved, as well as verification of the legality of the signature information of the signature devices for the initial configuration transaction and verification of the authenticity and legality of the voting information of the voting devices for the update configuration transaction, thereby improving the accuracy and security of the configuration information, and further improving the accuracy of updating the existing configuration information of the blockchain nodes in the blockchain network.
[0228] Optionally, when the program instruction is executed by the processor, other steps of the method in the above embodiment can also be implemented, which will not be elaborated here.
[0229] An embodiment of the present application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer executes the method of the foregoing embodiment. The computer can be a part of the computer device mentioned above. As an example, the program instructions can be deployed to be executed on a computer device, or deployed to be executed on multiple computer devices located at one place, or, executed on multiple computer devices distributed at multiple places and interconnected through a communication network. The multiple computer devices distributed at multiple places and interconnected through a communication network can form a blockchain network.
[0230] Embodiments of the present application also provide a computer program product, which includes computer programs / instructions. When the computer programs / instructions are executed by a processor, some or all of the steps in the above methods can be implemented. For example, the computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps performed in the embodiments of the above various methods.
[0231] In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the functions of the module or unit.
[0232] In the description of the embodiments of the present application, the terms "first", "second", etc. in the specification, claims and drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the term "including" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product or equipment that includes a series of steps or units is not limited to the listed steps or modules, but optionally further includes steps or modules not listed, or optionally further includes other steps or units inherent to these processes, methods, devices, products or equipment.
[0233] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the components and steps of the examples have been generally described according to their functions in this description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0234] The methods and related devices provided by the embodiments of the present application are described with reference to the flowchart of the method and / or the structural schematic diagram provided by the embodiments of the present application. Specifically, each process and / or block of the flowchart of the method and / or the structural schematic diagram, as well as the combination of the processes and / or blocks in the flowchart and / or the block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable information processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable information processing devices generate a device for implementing the functions specified in one or more processes of the flowchart and / or one or more blocks of the structural schematic diagram. These computer program instructions can also be stored in a computer-readable memory that can direct the computer or other programmable information processing devices to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device implements the functions specified in one or more processes of the flowchart and / or one or more blocks of the structural schematic diagram. These computer program instructions can also be loaded onto the computer or other programmable information processing devices, so that a series of operation steps are executed on the computer or other programmable devices to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one or more processes of the flowchart and / or one or more blocks of the structural schematic diagram.
[0235] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The above program can be stored in a computer-readable storage medium. When the above program is executed, it can include the processes of the embodiments of the above various methods. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.
[0236] The above-disclosed are only the preferred embodiments of the present application. Of course, the scope of the rights of the present application cannot be limited thereby. Therefore, equivalent changes made according to the claims of the present application still fall within the scope covered by the present application.
Claims
1. A method for processing information in a blockchain network, characterized in that: The method comprises: Obtaining updated configuration information of the blockchain network; the updated configuration information is used to update the existing configuration information of the blockchain nodes in the blockchain network; Generate an initial configuration transaction based on the updated configuration information, and send the initial configuration transaction to N signing devices and M voting devices; N and M are both positive integers; Obtaining a transaction signature for the initial configuration transaction sent by each signing device, and obtaining voting information for the updated configuration information in the initial configuration transaction sent by each voting device; Generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signing devices for the initial configuration transaction, and the M voting information of the M voting devices for the updated configuration information; The target configuration transaction is sent to the blockchain network for verification processing, so that each blockchain node in the blockchain network updates its existing configuration information based on the updated configuration information after detecting that the target configuration transaction is successfully verified in the blockchain network.
2. The method according to claim 1, characterized in that The updated configuration information is uploaded by the target object; and the generating of the initial configuration transaction based on the updated configuration information includes: Acquire the object private key of the target object, and perform signature processing on the updated configuration information based on the object private key of the target object to generate a configuration signature of the updated configuration information; generating the initial configuration transaction based on the updated configuration information and the configuration signature; Among them, the N signing devices are used to generate a transaction signature for the initial configuration transaction after successfully verifying the configuration signature in the initial configuration transaction; and the M voting devices are used to generate voting information for the updated configuration information after successfully verifying the configuration signature in the initial configuration transaction.
3. The method according to claim 1, characterized in that The voting information of any voting device for the updated configuration information is approval information or negative information; the generating of the target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signature devices for the initial configuration transaction, and the M voting information of the M voting devices for the updated configuration information includes: generating voting statistics information for the updated configuration information based on the voting information of the M voting devices for the updated configuration information respectively; The target configuration transaction is generated based on the voting statistics information, the M voting information, the initial configuration transaction, and the N transaction signatures.
4. The method according to claim 3, characterized in that The generating voting statistics information for the updated configuration information based on the voting information of the M voting devices for the updated configuration information respectively includes: Obtaining voting weights corresponding to the M voting devices respectively, and determining the voting weight of each voting device as the voting amount of each voting device; Adding up the votes of the voting devices to which the affirmative information in the M voting information belongs to generate a first voting statistic; Adding up the votes of the voting devices to which the negative information in the M voting information belongs to generate a second voting statistic; The first voting statistics and the second voting statistics are determined as voting statistics information.
5. The method according to claim 4, characterized in that A verification contract for verifying the configuration transaction is deployed in each blockchain node in the blockchain network; the verification process of the target configuration transaction in the blockchain network includes: The blockchain network is used to perform consensus processing on the target configuration transaction. If the consensus on the target configuration transaction is successful, the target configuration transaction is uploaded to the blockchain network; Each blockchain node in the blockchain network is used to call the verification contract to verify the M voting information, the N transaction signatures and the voting statistics information in the target configuration transaction on the chain; When any blockchain node in the blockchain network successfully verifies the M voting information and the N transaction signatures, and verifies that the first voting statistic is greater than the second voting statistic, the target configuration transaction is successfully verified at any blockchain node; If the number of blockchain nodes in the blockchain network that successfully verify the target configuration transaction is greater than or equal to the node number threshold, then the target configuration transaction is successfully verified in the blockchain network.
6. The method according to claim 5, characterized in that Any one of the M voting information includes a voting result of the voting device to which the any voting information belongs for the updated configuration information, and a voting signature of the voting device to which the any voting information belongs for the voting result, where the voting signature is obtained by signing the voting result using the device public key of the voting device to which the any voting information belongs; Any blockchain node in the blockchain network calls the verification contract to verify the M voting information in the target configuration transaction on the chain, including: Any one of the blockchain nodes is used to call the verification contract, and uses the device public key of each voting device and the voting results in the M voting information to verify the voting results in the voting signature of each voting device respectively. If any one of the blockchain nodes successfully verifies the M voting signatures in the M voting information, then any one of the blockchain nodes successfully verifies the M voting information.
7. The method according to claim 5, characterized in that Any transaction signature among the N transaction signatures is obtained by signing the initial configuration transaction based on the device private key of the signature device to which the any transaction signature belongs; any blockchain node in the blockchain network calls the verification contract to verify the N transaction signatures in the target configuration transaction on the chain, including: Any one of the blockchain nodes is used to call the verification contract, and adopts the device public key of each of the signature devices and the initial configuration transaction to verify the transaction signature of each of the signature devices for the initial configuration transaction. If any one of the blockchain nodes successfully verifies the N transaction signatures, then each blockchain node in the blockchain network successfully verifies the N transaction signatures.
8. The method according to claim 1, characterized in that The method further comprises: Receiving an information acquisition request sent by a target blockchain node in the blockchain network; the information acquisition request is sent by the target blockchain node after detecting that the target configuration transaction is successfully verified in the blockchain network; Returning the updated configuration information to the target blockchain node based on the information acquisition request, so that the target blockchain node broadcasts the received updated configuration information to the blockchain network; Among them, the blockchain nodes other than the target blockchain node in the blockchain network are used to receive the updated configuration information broadcast by the target blockchain node.
9. The method according to claim 8, characterized in that The update configuration information includes a target block height, and the target block height is used to indicate the effective time of the update configuration information; Among them, any blockchain node in the blockchain network is used to update the existing configuration information based on the received update configuration information when the maximum block height of the blocks in the block ledger to which it belongs is equal to the target block height.
10. An information processing device for a blockchain network, characterized in that: The device comprises: A configuration acquisition unit, used to acquire updated configuration information of the blockchain network; the updated configuration information is used to update the existing configuration information of the blockchain nodes in the blockchain network; A configuration sending unit, configured to generate an initial configuration transaction based on the updated configuration information, and send the initial configuration transaction to N signing devices and M voting devices; N and M are both positive integers; A data sending unit, used to obtain a transaction signature for the initial configuration transaction sent by each signing device, and obtain voting information for the updated configuration information in the initial configuration transaction sent by each voting device; a transaction generating unit, configured to generate a target configuration transaction based on the initial configuration transaction, the N transaction signatures of the N signing devices for the initial configuration transaction, and the M voting information of the M voting devices for the updated configuration information; A configuration update unit is used to send the target configuration transaction to the blockchain network for verification processing, so that each blockchain node in the blockchain network updates its existing configuration information based on the updated configuration information after detecting that the target configuration transaction is successfully verified in the blockchain network.
11. A computer device, characterized in that: The method comprises a processor and a memory, wherein the processor is connected to the memory, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer program executes the method according to any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 9.
13. A computer program product, characterized in that The computer program product comprises a computer program / instruction, and when the computer program / instruction is executed by a processor, the method according to any one of claims 1 to 9 is implemented.