Data processing methods, devices, equipment, media, and products based on blockchain.
By receiving a resource removal transaction signed by the requester, and using blockchain nodes to verify and remove the resource, the complexity of resource recycling on the blockchain is solved, and secure and efficient resource removal is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2022-10-20
- Publication Date
- 2026-07-03
AI Technical Summary
Resources issued on the blockchain are decentralized and immutable, so when recycling resources, objects need to actively call the interface, and they cannot be directly removed, which makes the resource removal process complicated.
By receiving a resource removal transaction sent by the requester, the blockchain node generates a transaction by signing it with the private key of the owner of the resource to be removed. The blockchain node verifies the ownership of the resource and removes the resource from the blockchain network after successful verification, and sends the removal result to the requester.
The resource removal process has been simplified, and the security and convenience of resource removal have been improved. The removal results can be viewed without the object actively calling the interface.
Smart Images

Figure CN116996509B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the fields of computer and communication technology, and more specifically, to a blockchain-based data processing method, a blockchain-based data processing device, an electronic device, a computer-readable storage medium, and a computer program product. Background Technology
[0002] Currently, some business entities may need to reclaim resources distributed to recipients due to copyright issues, non-compliance, or program errors (bugs). Due to the decentralized and immutable nature of blockchain, once resources are distributed to a recipient's blockchain address, they cannot be removed from the blockchain unless the recipient actively calls the relevant standard interface to perform the removal action on the chain. Summary of the Invention
[0003] To address the aforementioned technical problems, embodiments of this application provide a blockchain-based data processing method, a blockchain-based data processing device, an electronic device, a computer-readable storage medium, and a computer program product. These methods simplify the resource removal process by eliminating the need for objects to actively call relevant standard interfaces.
[0004] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part from practice of this application.
[0005] According to one aspect of the embodiments of this application, a blockchain-based data processing method is provided, comprising: receiving a resource removal transaction sent by a requester, wherein the resource removal transaction is generated by the requester signing resource information of the resource to be removed based on the private key of the owner of the resource to be removed, the resource removal transaction including the blockchain address where the resource to be removed is located and the signature; verifying the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located; if the ownership verification of the resource to be removed is successful, removing the resource to be removed from the blockchain network; and sending the removal result to the requester so that the requester displays the removal result to the owner of the resource to be removed.
[0006] According to one aspect of the embodiments of this application, a blockchain-based data processing method is also provided, comprising: obtaining resource information of a resource to be removed and the private key of the owner of the resource to be removed; signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed to generate a resource removal transaction, the resource removal transaction including the blockchain address where the resource to be removed is located and the signature; sending the resource removal transaction to a blockchain node in a blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and removes the resource to be removed from the blockchain network after the ownership of the resource to be removed is successfully verified; receiving the removal result sent by the blockchain node and displaying the removal result to the owner of the resource to be removed.
[0007] According to one aspect of the embodiments of this application, a blockchain-based data processing method is also provided, comprising: obtaining resource information of a resource to be removed; generating a resource removal transaction by signing the resource information of the resource to be removed based on a private key from the owner of the resource to be removed, the resource removal transaction including the blockchain address where the resource to be removed is located and the signature; sending the resource removal transaction to a blockchain node in a blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and removes the resource to be removed from the blockchain network after the ownership of the resource to be removed is successfully verified; receiving the removal result sent by the blockchain node, and displaying the removal result to the owner of the resource to be removed.
[0008] According to one aspect of the embodiments of this application, a blockchain-based data processing apparatus is provided. The apparatus includes: a first receiving module, configured to receive a resource removal transaction sent by a requester, wherein the resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed, and the resource removal transaction includes the blockchain address where the resource to be removed is located and the signature; a removal module, configured to verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and if the ownership verification of the resource to be removed is successful, remove the resource to be removed from the blockchain network; and a first sending module, configured to send the removal result to the requester, so that the requester displays the removal result to the owner of the resource to be removed.
[0009] In one embodiment of this application, the removal module is further configured to find the on-chain address of the owner of the resource to be removed based on the signature; if the blockchain address of the resource to be removed matches the on-chain address of the owner of the resource to be removed, the resource removal transaction is verified successfully.
[0010] In one embodiment of this application, the resource removal transaction further includes the identifier and quantity of the resource to be removed; the removal module is further configured to transfer the resource to be removed from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address according to the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network.
[0011] In one embodiment of this application, the first receiving module is further configured to receive a resource removal transaction sent by the client corresponding to the owner of the resource to be removed. The resource removal transaction is generated by the client signing the resource information of the resource to be removed specified by the owner of the resource to be removed based on the private key from the owner of the resource to be removed.
[0012] In one embodiment of this application, the first receiving module is further configured to receive a resource removal transaction sent by the transaction server. The resource removal transaction is generated by the transaction server after receiving a removal request sent by the client corresponding to the owner of the resource to be removed, finding the private key of the owner of the resource to be removed from the key escrow server, and signing the resource information of the resource to be removed carried in the removal request according to the found private key.
[0013] In one embodiment of this application, the first receiving module is further configured to receive a resource on-chain request containing resources to be on-chain sent by the transaction server. The resource on-chain request is obtained by signing a resource acquisition request generated by the client corresponding to the owner of the resource to be removed based on the private key of the owner of the resource to be removed. The device further includes a transfer module, which is configured to transfer the resource to be on-chain to the on-chain address of the owner of the resource to be removed in the blockchain network, and send the transfer result to the transaction server.
[0014] According to one aspect of the embodiments of this application, a blockchain-based data processing apparatus is provided. The apparatus includes: a first acquisition module, configured to acquire resource information of a resource to be removed and a private key of the owner of the resource to be removed; a first generation module, configured to sign the resource information of the resource to be removed based on the private key of the owner of the resource to be removed to generate a resource removal transaction, the resource removal transaction including the blockchain address where the resource to be removed is located and the signature; a second sending module, configured to send the resource removal transaction to a blockchain node in a blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and removes the resource to be removed from the blockchain network after successful verification of the ownership of the resource to be removed; and a second receiving module, configured to receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
[0015] In one embodiment of this application, the first acquisition module is further configured to receive a removal request sent by the client corresponding to the owner of the resource to be removed, the removal request including the decentralized identity identifier of the owner of the resource to be removed, and the identifier and quantity of the resource to be removed; search for the blockchain address of the owner of the resource to be removed from the decentralized identity server based on the decentralized identity identifier, and use the searched blockchain address as the blockchain address where the resource to be removed is located; and generate resource information of the resource to be removed according to the identifier, quantity and blockchain address of the resource to be removed.
[0016] In one embodiment of this application, the first acquisition module further receives a removal request sent by the client corresponding to the owner of the resource to be removed, the removal request including the decentralized identity identifier of the owner of the resource to be removed; based on the decentralized identity identifier, the private key of the owner of the resource to be removed is retrieved from the key escrow server; the private key is generated by the decentralized identity server after generating the decentralized identity identifier and the private key of the owner of the resource to be removed, and then associated and stored in the key escrow server based on the key escrow instruction information.
[0017] In one embodiment of this application, the device further includes a first on-chain module, which is configured to receive a resource acquisition request sent by a client corresponding to the owner of the resource to be removed, the resource acquisition request carrying a specified resource to be on-chain and a decentralized identity identifier of the owner of the resource to be removed; retrieve the private key of the owner of the resource to be removed from a key escrow server based on the decentralized identity identifier; sign the resource acquisition request based on the private key to obtain a resource on-chain request; and send the resource on-chain request to a blockchain node in the blockchain network.
[0018] According to one aspect of the embodiments of this application, a blockchain-based data processing apparatus is provided. The apparatus includes: a second acquisition module for acquiring resource information of a resource to be removed; a second generation module for signing the resource information of the resource to be removed based on a private key from the owner of the resource to be removed to generate a resource removal transaction, the resource removal transaction including the blockchain address where the resource to be removed is located and the signature; a third sending module for sending the resource removal transaction to a blockchain node in a blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and removes the resource to be removed after successful verification of the ownership of the resource to be removed; and a third receiving module for receiving the removal result sent by the blockchain node and displaying the removal result to the owner of the resource to be removed.
[0019] In one embodiment of this application, the second generation module is further configured to generate a transaction information request based on the resource information of the resource to be removed, so as to request the private key of the owner of the resource to be removed; and to sign the resource information of the resource to be removed based on the private key from the owner of the resource to be removed, so as to generate the resource removal transaction based on the signature and the resource information of the resource to be removed.
[0020] In one embodiment of this application, the device further includes a registration module and a second on-chain module. The registration module is used to send a registration request of the owner of the resource to be removed to a decentralized identity server. The registration request carries the identity information of the owner of the resource to be removed, so that the decentralized identity server generates a decentralized identity identifier of the owner of the resource to be removed when the identity information is verified. The second on-chain module is used to generate a resource acquisition request containing a specified resource to be on-chain based on the decentralized identity identifier, and to sign the resource acquisition request according to the private key from the owner of the resource to be removed to obtain a resource on-chain request. The resource on-chain request is then sent to a transaction server, so that the transaction server forwards the resource on-chain request to the blockchain nodes in the blockchain network.
[0021] According to one aspect of the embodiments of this application, an electronic device is provided, including one or more processors; and a storage device for storing one or more computer programs, which, when executed by the one or more processors, cause the electronic device to implement the blockchain-based data processing method as described above.
[0022] According to one aspect of the embodiments of this application, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor of an electronic device, causes the electronic device to perform the blockchain-based data processing method as described above.
[0023] According to one aspect of the embodiments of this application, a computer program product is provided, including a computer program stored in a computer-readable storage medium, wherein a processor of an electronic device reads from the computer-readable storage medium and executes the computer program, causing the electronic device to perform the blockchain-based data processing method as described above.
[0024] In the technical solution provided in the embodiments of this application, a blockchain node receives a resource removal transaction sent by a requester. The resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address where the resource to be removed is located and the signature. On the one hand, the blockchain node can ensure that the resource removal transaction is authorized by the owner of the resource to be removed through the signature. On the other hand, the blockchain node can verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. After successful verification, the resource to be removed is removed from the blockchain network, ensuring the security and reliability of resource removal. Finally, the blockchain node sends the removal result to the requester, who then displays the removal result to the owner of the resource to be removed. That is, the blockchain node removes the resource based on the resource removal transaction. For the owner of the resource to be removed, there is no need to actively call relevant standard interfaces during the resource removal process to view the resource removal result, which improves the convenience of resource removal operation and greatly simplifies the process of removing resources.
[0025] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0026] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application. It is obvious that the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort. In the drawings:
[0027] Figure 1 This is a schematic diagram of the blockchain network structure;
[0028] Figure 2 This is a diagram illustrating the connection relationships between blocks in a blockchain.
[0029] Figure 3 This is a schematic diagram of one implementation environment involved in this application;
[0030] Figure 4 This is a flowchart illustrating a blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0031] Figure 5 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0032] Figure 6 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0033] Figure 7 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0034] Figure 8 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0035] Figure 9 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0036] Figure 10 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0037] Figure 11 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0038] Figure 12 This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0039] Figure 13This is a flowchart illustrating another blockchain-based data processing method as shown in an exemplary embodiment of this application;
[0040] Figure 14 This is a flowchart illustrating a blockchain-based data processing method, as shown in another exemplary embodiment of this application;
[0041] Figure 15 This is a flowchart illustrating another exemplary embodiment of the present application, showing another blockchain-based data processing method;
[0042] Figure 16 This is a flowchart illustrating another exemplary embodiment of the present application, showing another blockchain-based data processing method;
[0043] Figure 17 This is a flowchart illustrating another exemplary embodiment of the present application, showing another blockchain-based data processing method;
[0044] Figure 18 This is a structural block diagram of a blockchain-based data processing apparatus illustrated in an exemplary embodiment of this application;
[0045] Figure 19 This is a structural block diagram of a blockchain-based data processing apparatus shown in another exemplary embodiment of this application;
[0046] Figure 20 This is a structural block diagram of a blockchain-based data processing apparatus shown in another exemplary embodiment of this application;
[0047] Figure 21 A schematic diagram of the structure of a computer system suitable for implementing the electronic device of the present application is shown. Detailed Implementation
[0048] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0049] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0050] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily need to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0051] It should also be noted that "multiple" as mentioned in this application refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0052] The technical solutions of the embodiments of this application relate to the field of blockchain technology. Before introducing the technical solutions of the embodiments of this application, blockchain technology will be briefly introduced first.
[0053] Blockchain is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and cryptographic algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks (i.e., blocks) linked together using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and to generate the next block. A blockchain can include an underlying platform, a platform product and service layer, and an application service layer.
[0054] As mentioned above, a blockchain is essentially a decentralized database, and it is maintained collaboratively by nodes within a blockchain network. For example, please refer to... Figure 1 ,exist Figure 1 The blockchain network shown may include multiple nodes 101, which can be various servers or terminals forming the blockchain network. Each node 101, in its normal operation, receives input information and maintains shared data within the blockchain network based on this information. To ensure information exchange within the blockchain network, information connections can exist between each node, allowing for information transmission. For example, when any node in the blockchain network receives input information, other nodes in the network obtain this input information according to a consensus algorithm and store it as shared data, ensuring consistency of data stored on all nodes in the blockchain network.
[0055] Each node in a blockchain network has a corresponding node identifier, and each node can store the node identifiers of other nodes. This allows for the broadcast of generated blocks to other nodes in the blockchain network based on their node identifiers. Each node can maintain a list of node identifiers, storing the node name and its corresponding node identifier in this list. The node identifier can be an IP (Internet Protocol) address or any other information that can be used to identify the node.
[0056] See Figure 1 The blockchain network shown includes nodes, and the functions of each node include:
[0057] 1) Routing: A basic function of nodes used to support communication between nodes.
[0058] 2) Applications are deployed in the blockchain to implement specific business needs. They record data related to the implementation of functions to form record data, carry digital signatures in the record data to indicate the source of the task data, and send the record data to other nodes in the blockchain system. When other nodes successfully verify the source and integrity of the record data, they add the record data to a temporary block.
[0059] The business implemented by the application includes: smart contracts. A smart contract is a computerized protocol that can execute the terms of a contract. It is implemented by code deployed on a shared ledger that is executed when certain conditions are met. The code is used to complete automated transactions according to actual business needs. Of course, smart contracts are not limited to executing contracts for transactions, but can also execute contracts for processing received data.
[0060] Please see Figure 2 A blockchain consists of multiple blocks. The genesis block includes a block header and a block body. The block header stores input information features, version number, timestamp, and difficulty value, while the block body stores the input information. The next block after the genesis block is the parent block of the genesis block. The next block also includes a block header and a block body. The block header stores the input information features of the current block, the block header features of the parent block, version number, timestamp, and difficulty value, and so on. This ensures that the block data stored in each block is related to the block data stored in the parent block, guaranteeing the security of the input information in the blocks.
[0061] It is understood that nodes in a blockchain network can be servers or terminals. Servers can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and intelligent platforms. Terminals can be smartphones, tablets, laptops, desktop computers, smart speakers, smartwatches, terminals used in vehicles, aircraft, etc., but are not limited to these. Nodes can be directly or indirectly connected via wired or wireless communication, and this application does not impose any restrictions on this.
[0062] The technical solutions of this application specifically relate to blockchain technology. The technical solutions of this application are described in detail below:
[0063] Please see Figure 3 , Figure 3 This is a schematic diagram of an implementation environment involved in this application. The implementation environment mainly includes the owner of the resource to be removed 301, the requester 302, and a blockchain node 101 in the blockchain network 303.
[0064] Among them, the owner of the resource to be removed (301) is the initiator of the resource removal, which can be the user. The owner of the resource to be removed initiates the resource removal through the requester.
[0065] The requester 302 is the party responding to the operation initiated by the owner of the resource to be removed 301. It can generate the resource removal transaction by signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0066] In one example, the requester 302 can be any client with an input interface running an application for implementing resource removal functionality on a blockchain network. The terminal includes, but is not limited to, smartphones, tablets, laptops, computers, smart voice interaction devices, smart home appliances, terminals used in automobiles, aircraft, etc. The input interface includes, but is not limited to, touchscreens, keyboards, physical buttons, audio pickup devices, etc.
[0067] In another example, the requester 302 can also be a transaction server. The transaction server can receive operations initiated by the owner of the resource to be removed through the aforementioned client, or it can directly receive operations initiated by the owner of the resource to be removed. It can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and intelligent platforms. This document does not impose any restrictions on this.
[0068] Blockchain node 101 is the business node in the aforementioned blockchain network. It receives resource removal transactions sent by the requester, verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and removes the resource from the blockchain network if the ownership verification is successful. The removal result is then sent to the requester so that the requester can display the removal result to the owner of the resource. There can be one or more blockchain nodes; this is not limited here.
[0069] It should be noted that in the specific implementation of this application, if the resource to be removed involves an object, then when the embodiment of this application is applied to a specific product or technology, permission or consent from the object is required, and the collection, use and processing of related data must comply with the relevant regulations and standards of the relevant countries and regions.
[0070] The following details the various implementation details of the technical solutions in the embodiments of this application:
[0071] like Figure 4 As shown, Figure 4 This is a flowchart illustrating a blockchain-based data processing method according to an embodiment of this application. This method can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain-based data processing method, executed by blockchain nodes in the blockchain network shown, may include steps S410 to S430, as detailed below:
[0072] S410. Receive the resource removal transaction sent by the requester. The resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0073] In this embodiment of the application, the requesting party is the party that initiates the resource removal operation in response to the owner of the resource to be removed, that is, the requesting party requests the blockchain node to remove the resource on behalf of the owner of the resource to be removed.
[0074] The resource removal transaction is generated by the requester. That is, the requester responds to the resource owner of the resource to be removed by initiating a resource removal operation. The requester generates the transaction by signing the resource information of the resource to be removed based on the private key of the resource owner. In other words, the requester uses the private key of the resource owner to sign the resource information of the resource to be removed to generate the resource removal transaction, and the resource information of the resource to be removed will be attached with the signature.
[0075] The resources to be removed can be resources designated by the owner of the resources to be removed, or resources that the business needs to reclaim after issuing them. The resource information of the resources to be removed refers to the descriptive characteristics of the resources to be removed, such as the name, quantity and location of the resources to be removed.
[0076] The private key of the owner of the resource to be removed corresponds to the public key. The public key can be seen or shared by any object in a given blockchain network, while the private key is unique and belongs only to the owner of the resource to be removed. The private key can be used to determine that the resource removal transaction was authorized by the owner of the resource to be removed.
[0077] In this embodiment, the resource information of the resource to be removed includes the blockchain address where the resource is located, and the resource removal transaction includes the blockchain address where the resource is located and a signature. The blockchain address where the resource is located indicates the location of the resource in the blockchain network, and the signature indicates that it has been authorized by the owner of the resource.
[0078] Understandably, the resource to be removed can be any resource; for example, it could be the product of a commodity exchange, or it could be data or information. In some scenarios, the resource to be removed could also be a digital collection.
[0079] S420. Verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. If the ownership verification of the resource to be removed is successful, remove the resource to be removed from the blockchain network.
[0080] Understandably, before a blockchain node processes a resource removal, it needs to verify the resource removal transaction sent by the requester to ensure security. Specifically, this verification is based on the signature and the blockchain address where the resource to be removed is located, verifying the ownership of the resource. Ownership refers to the dependency relationship of the resource, i.e., verifying whether the resource belongs to the party whose name is on the blockchain. If the blockchain node successfully verifies the ownership of the resource to be removed, it responds to the resource removal transaction, removes the resource from the blockchain network, and thus the resource no longer exists on the blockchain network.
[0081] In some examples, a blockchain node removes a resource from the blockchain network. This removal can be permanent, meaning the resource no longer exists; or it can be a recoverable resource, meaning the resource can be recovered and stored in the blockchain network again based on a response operation.
[0082] S430. Send the removal result to the requester so that the requester can display the removal result to the owner of the resource to be removed.
[0083] In this embodiment of the application, after the blockchain node performs the resource removal process, a removal result can be generated, which can be either a successful removal or a failed removal. When the removal is successful, the removal result can also include permanent removal or reversible removal. When the removal fails, the removal result can also include a reason for failure, such as a failure to verify the resource removal transaction.
[0084] After generating the removal result, the blockchain node can return the removal result to the requester, who can then display the removal result to the owner of the resource to be removed. The owner of the resource to be removed can then determine whether to perform subsequent operations, such as re-initiating the resource removal operation.
[0085] In this embodiment, the blockchain node receives a resource removal transaction sent by the requester. This transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature. On the one hand, the blockchain node can ensure that the resource removal transaction is authorized by the owner of the resource to be removed through the signature. On the other hand, the blockchain node can verify the ownership of the resource to be removed based on the signature and the blockchain address of the resource to be removed. After successful verification, the blockchain node removes the resource to be removed from the blockchain network, ensuring the security and reliability of the resource removal. Finally, the removal result is sent to the requester, who then displays the removal result to the owner of the resource to be removed. In other words, the blockchain node removes the resource based on the resource removal transaction. For the owner of the resource to be removed, there is no need to actively call relevant standard interfaces during the resource removal process to view the resource removal result. This greatly simplifies the resource removal process in consortium blockchain scenarios.
[0086] In one embodiment of this application, another blockchain-based data processing method is provided, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain nodes shown are used to execute, such as Figure 5 As shown, this blockchain-based data processing method... Figure 4 Based on this, step S420 is extended to S510 to S530.
[0087] Steps S510 to S530 are described in detail below:
[0088] S510. Locate the on-chain address of the owner of the resource to be removed based on the signature.
[0089] In this embodiment of the application, since the signature can indicate who authorized it, the blockchain node can find the corresponding on-chain address through the signature. That is, the blockchain node determines the owner of the resource to be removed through the signature, and then finds the on-chain address of the owner of the resource to be removed. The on-chain address is the address of the owner of the resource to be removed on the blockchain.
[0090] S520. If the blockchain address of the resource to be removed matches the on-chain address of the owner of the resource to be removed, then the ownership verification of the resource to be removed is successful.
[0091] After locating the on-chain address of the owner of the resource to be removed, the blockchain node matches the blockchain address containing the resource removal transaction with the on-chain address of the owner of the resource to be removed to verify whether the resource to be removed belongs to the found owner. Understandably, if the resource to be removed belongs to the found owner, it should be stored at the owner's on-chain address, meaning the blockchain address containing the resource and the owner's on-chain address should be the same. This indicates successful verification of ownership of the resource to be removed.
[0092] In some examples, if the blockchain address of the resource to be removed is different from the on-chain address of the owner of the resource to be removed, the ownership verification of the resource to be removed will fail.
[0093] S530: Remove the resource to be removed from the blockchain network.
[0094] For the process of step S530, please refer to the process of removing resources in step S420, which will not be repeated here.
[0095] It should be noted that, Figure 5 For further details on steps S410 and S430 shown, please refer to [link / reference]. Figure 4 Steps S410 and S430 shown will not be repeated here.
[0096] This application embodiment finds the on-chain address of the owner of the resource to be removed based on the signature, and then matches the blockchain address of the resource to be removed with the on-chain address of the owner of the resource to be removed to determine whether the ownership of the resource to be removed is correct, thus ensuring the reliability of resource removal.
[0097] This application provides another blockchain-based data processing method, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain nodes shown are used to execute, such as Figure 6 As shown, this blockchain-based data processing method... Figure 4 Based on this, step S420 is extended to S610 to S620.
[0098] The resource removal transaction in step S410 also includes the identifier and quantity of the resource to be removed. The identifier of the resource to be removed is used to uniquely identify the resource to be removed. For example, the identifier of the resource to be removed is a token id. It can be understood that there may be multiple instances of the same resource to be removed in the blockchain network. The quantity of the resource to be removed indicates how many resources to be removed.
[0099] Steps S610 to S620 are described in detail below:
[0100] S610. Verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located.
[0101] For details of step S610, please refer to Figure S420, which will not be repeated here.
[0102] S620. If the ownership of the resource to be removed is successfully verified, the resource to be removed is transferred from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address according to the identifier and quantity of the resource to be removed, so as to remove the resource to be removed.
[0103] In this embodiment of the application, if the ownership of the resource to be removed is successfully verified, the corresponding number of resources to be removed is determined according to the identifier and quantity of the resources to be removed contained in the resource removal exchange, and the resources to be removed are transferred from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address, so as to permanently remove the resources to be removed from the blockchain network. Here, the black hole address refers to the address where the private key cannot be found or the private key cannot be determined, just like a black hole in the universe, where objects cannot come out after entering.
[0104] For example, the address of a black hole is an all-zero address "0x00000000000000000000000000000000000000000".
[0105] For example, if the identifier of the resource to be removed is 1 and the quantity is 2, then two resources A corresponding to the identifier 1 are determined from the on-chain address of the owner of the resource to be removed, and then the two resources to be removed are transferred to an all-zero address.
[0106] It should be noted that, Figure 6 For detailed information on steps S410 and S430 shown, please refer to [link / reference]. Figure 4 Steps S410 and S430 shown will not be repeated here.
[0107] In this embodiment of the application, the resource to be removed can be one or more. By determining the identifier and quantity of the resource to be removed, the resource to be removed on the blockchain can be accurately determined, and then the resource to be removed can be transferred from the on-chain address of the owner of the resource to be removed to the black hole address, thereby effectively removing the resource to be removed from the blockchain network.
[0108] This application also provides another blockchain-based data processing method, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain nodes shown are used to execute, such as Figure 7 As shown, this blockchain-based data processing method... Figure 4 Based on the example shown, S410 is extended to S710.
[0109] Step S710 is described in detail below:
[0110] S710 Receive a resource removal transaction sent by the client corresponding to the owner of the resource to be removed. The resource removal transaction is generated by the client signing the resource information of the resource to be removed specified by the owner of the resource to be removed based on the private key from the owner of the resource to be removed.
[0111] In this embodiment of the application, the requester is the client corresponding to the owner of the resource to be removed, and then the blockchain node receives the resource removal transaction sent by the client corresponding to the owner of the resource to be removed. The client corresponding to the owner of the resource to be removed runs a transaction application.
[0112] In this embodiment of the application, the resource removal transaction is generated by the client signing the resource information of the resource to be removed specified by the owner of the resource to be removed based on the private key from the owner of the resource to be removed. The owner of the resource to be removed can specify the resource to be removed and the resource information through the transaction application to obtain the resource information of the resource to be removed.
[0113] Since the private key of the owner of the resource to be removed can be non-custodial, meaning it can be stored by the owner of the resource to be removed themselves, stored in the owner's wallet, or physically stored, the client can display a private key retrieval message. After the owner of the resource to be removed receives this message, the client can directly obtain the private key authorized by the owner of the resource to be removed. Alternatively, the client can obtain the private key authorized by the owner of the resource to be removed through the wallet or the physical storage.
[0114] It should be noted that, Figure 7 For further details on steps S420 to S430 shown, please refer to [link to relevant documentation]. Figure 4 Steps S420 to S430 shown in the diagram will not be repeated here.
[0115] In this embodiment, the private key is managed by the owner of the resource to be removed, and the client corresponding to the owner of the resource to be removed generates the resource removal transaction, thereby realizing the removal of resources on the blockchain in the case of non-key escrow.
[0116] In one embodiment of this application, another blockchain-based data processing method is also provided, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain nodes shown are used to execute, such as Figure 8 As shown, this blockchain-based data processing method... Figure 4 Based on the example shown, S410 is extended to S810.
[0117] Step S810 is described in detail below:
[0118] S810. Receive a resource removal transaction sent by the transaction server. The resource removal transaction is generated by the transaction server after receiving a removal request sent by the client corresponding to the owner of the resource to be removed, finding the private key of the owner of the resource to be removed from the key escrow server, and signing the resource information of the resource to be removed carried in the removal request based on the found private key.
[0119] In this embodiment of the application, the requester is the transaction server, which can be the server side of the transaction application running on the client corresponding to the owner of the resource to be removed, and then the blockchain node receives the resource removal transaction sent by the transaction server.
[0120] It should be noted that the private key of the owner of the resource to be removed can be escrowed, i.e., held in custody by a third-party institution, such as a key escrow server. This key escrow server can manage the private key on behalf of the owner of the resource to be removed. In this embodiment, for the escrowed private key, the transaction server needs to retrieve the private key of the owner of the resource to be removed from the key escrow server, and then sign the resource information of the resource to be removed carried in the removal request based on the retrieved private key to generate a resource removal transaction. Optionally, the transaction server retrieves the private key of the owner of the resource to be removed from the key escrow server based on the decentralized identity of the owner of the resource to be removed.
[0121] The transaction server retrieves the private key after receiving a removal request from the client corresponding to the owner of the resource to be removed; the removal request carries the resource information of the resource to be removed as specified by the owner of the resource to be removed.
[0122] In one example of an embodiment of this application, the removal request sent by the client may also carry indication information, which indicates whether private key escrow has been performed, and if so, the address of the key escrow server, so that the transaction server can look up the private key from the key escrow server after receiving the removal request.
[0123] It should be noted that, Figure 8 For further details on steps S420 to S430 shown, please refer to [link to relevant documentation]. Figure 4 Steps S420 to S430 shown will not be repeated here.
[0124] In this embodiment of the application, the private key is entrusted to a key custody server. The transaction server retrieves the private key from the key custody server and generates a resource removal transaction, thereby realizing the removal of resources on the blockchain under the condition of key custody.
[0125] This application provides another blockchain-based data processing method, which includes methods applicable to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The blockchain network nodes shown are used to execute this blockchain-based data processing method. Figures 4 to 8 Based on the example shown, steps S910 to S920 are added before step S410. For example... Figure 9 As shown, in Figure 4 Based on this, steps S910 to S920 have been added for explanation, which is the process of putting the resource to be removed onto the chain.
[0126] Steps S910 to S920 are described in detail below:
[0127] S910: Receive a resource on-chain request sent by the transaction server, which contains the resource to be on-chain. The resource on-chain request is obtained by signing the resource acquisition request generated by the client corresponding to the owner of the resource to be removed using the private key of the owner of the resource to be removed.
[0128] It should be understood that the prerequisite for removing a resource from the blockchain network is that the resource to be removed is stored in the blockchain network. In this embodiment of the application, the blockchain node receives a resource-to-chain request sent by the transaction server based on a request to add the resource to be removed to the chain.
[0129] In one example, for the case of key escrow, the resource on-chain request is obtained by the transaction server when it receives a resource acquisition request from the client corresponding to the owner of the resource to be removed. In addition to the resource to be on-chain, the resource acquisition request also carries the decentralized identity identifier of the owner of the resource to be removed. Then, based on the decentralized identity identifier, the private key of the owner of the resource to be removed is found from the key escrow server, and the resource acquisition request is signed based on the private key.
[0130] In another example, for cases where the key is not escrow, the resource on-chain request is received by the transaction server from the client corresponding to the owner of the resource to be removed. The client generates a resource acquisition request containing the specified resource to be on-chain based on the decentralized identity, and signs the resource acquisition request according to the private key from the owner of the resource to be removed to obtain the resource on-chain request.
[0131] Among them, the resource acquisition request is a request triggered when the owner of the resource to be removed obtains a certain resource and needs to store the obtained resource in the blockchain network. Therefore, the resource acquisition request carries the resource to be uploaded to the blockchain. Since the resource upload request is obtained by signing the resource acquisition request with the private key, the resource upload request also carries the resource to be uploaded to the blockchain.
[0132] S920: Transfer the resource to be added to the blockchain to the on-chain address of the owner of the resource to be removed in the blockchain network, and send the transfer result to the transaction server.
[0133] After receiving a request to add a resource to the blockchain, a blockchain node determines the on-chain address of the owner of the resource to be removed in the blockchain network based on the signature. Then, it transfers (stores) the resource to be added to the blockchain at that address, thus realizing the resource being added to the blockchain. After transferring the resource to the blockchain address, the node sends the transfer result to the transaction server. The transaction server can then directly inform the owner of the resource to be removed of the transfer result, or the transaction server can send the transfer result to the client, which will then display it to the owner of the resource to be removed.
[0134] It should be noted that, Figure 9 For further details on steps S410 to S430 shown, please refer to [link to relevant documentation]. Figure 4 Steps S410 to S430 shown in the diagram will not be repeated here.
[0135] In this embodiment of the application, the blockchain node receives a resource upload request sent by the transaction server to upload the resource to the blockchain. The resource upload request is obtained by signing the resource acquisition request generated by the client corresponding to the owner of the resource to be removed using the private key of the owner of the resource to be removed. That is, the resource upload request is authorized by the owner of the resource to be removed to ensure the reliability of the resource upload process.
[0136] Figures 4 to 9 The illustrated embodiment is presented from the perspective of a blockchain node. The following is combined with... Figures 10 to 14 The implementation details of the technical solutions in the embodiments of this application are described in detail from the perspective of the transaction server:
[0137] This application provides another blockchain-based data processing method, which includes methods applicable to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The transaction server shown is used to execute, as... Figure 10 As shown, the blockchain-based data processing method includes steps S1010 to S1040. Steps S1010 to S1040 are described in detail below:
[0138] S1010: Obtain the resource information of the resource to be removed and the private key of the owner of the resource to be removed.
[0139] In this embodiment of the application, the transaction server does not store information related to the resource to be removed, and the resource information of the resource to be removed needs to be obtained from the client corresponding to the owner of the resource to be removed; while the private key of the owner of the resource to be removed needs to be obtained from the key escrow server.
[0140] S1020. Based on the private key of the owner of the resource to be removed, a resource removal transaction is generated by signing the resource information of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0141] After obtaining the resource information of the resource to be removed and the private key of the owner of the resource to be removed, the transaction server signs the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. Thus, the resource information of the resource to be removed is attached with the signature, and a resource removal transaction is generated based on the signature and the resource information of the resource to be removed.
[0142] In one example, the resource information of the resource to be removed, along with the signature, is used as the resource removal transaction. For example, the resource removal transaction includes the signature, the identifier of the resource to be removed, the quantity, and the address.
[0143] S1030. Send the resource removal transaction to the blockchain node in the blockchain network so that the blockchain node can verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and remove the resource to be removed from the blockchain network after the ownership of the resource to be removed is successfully verified.
[0144] For details regarding the blockchain node verification process in step S1030, please refer to [link / reference needed]. Figure 4 I will not go into details here.
[0145] S1040: Receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
[0146] Understandably, the transaction server can receive removal results sent by blockchain nodes. In one example, the removal results are displayed to the owner of the resource to be removed through a visual interface so that the owner can view the removal results. In another example, after receiving the removal results, the transaction server forwards the removal results to the client corresponding to the owner of the resource to be removed, and the client displays the removal results.
[0147] In this embodiment, for the owner of the resource to be removed, the resource removal process can be completed without actively calling relevant standard interfaces. This greatly simplifies the process of removing resources in consortium blockchain scenarios.
[0148] This application provides another blockchain-based data processing method, which includes methods applicable to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The transaction server shown is used to execute, as... Figure 11 As shown, this blockchain-based data processing method... Figure 10 Based on the above, S1010 is extended to steps S1110 to S1140.
[0149] Steps S1110 to S1140 are described in detail below:
[0150] S1110. Receive a removal request sent by the client corresponding to the owner of the resource to be removed. The removal request includes the decentralized identity of the owner of the resource to be removed, as well as the identifier and quantity of the resource to be removed.
[0151] In this embodiment, the transaction server itself does not store the corresponding data and needs to perform corresponding operations based on requests. Specifically, the transaction server receives a removal request sent by the client corresponding to the owner of the resource to be removed. This removal request is generated by the client in response to the resource removal operation of the owner of the resource to be removed, and is used to indicate that the resource needs to be removed.
[0152] The removal request includes the decentralized identity (DID) of the owner of the resource to be removed. The DID is used to prove the identity of the owner of the resource to be removed, and will be required for all subsequent blockchain operations. The removal request also includes the identifier and quantity of the resources to be removed, which determines which resources need to be removed.
[0153] S1120. Based on the decentralized identity identifier, find the blockchain address of the owner of the resource to be removed from the decentralized identity server, and use the found blockchain address as the blockchain address of the resource to be removed.
[0154] In this embodiment of the application, the DID server is used to authenticate identity information. After successful authentication, the DID server generates a DID identifier, a blockchain address in the blockchain network, and a pair of keys, namely a public key and a private key. The DID identifier is associated with the blockchain address and the private key.
[0155] Therefore, based on the DID identifier in the removal request, the blockchain node searches the DID server for the blockchain address of the owner of the resource to be removed corresponding to the DID identifier, and uses the found blockchain address as the current blockchain address of the resource to be removed.
[0156] S1130. Generate resource information for the resource to be removed based on the identifier, quantity, and blockchain address of the resource to be removed.
[0157] In the example of Embodiment 1 of this application, the blockchain node can assemble the identifier, quantity, and blockchain address of the resource to be removed to generate resource information of the resource to be removed.
[0158] In another example, a blockchain node can associate the identifier, quantity, and blockchain address of the resource to be removed, and use the associated information as the resource information of the resource to be removed.
[0159] S1140. Obtain the private key of the owner of the resource to be removed.
[0160] It should be noted that, Figure 11 For a detailed description of steps S1020 to S1040 shown, please refer to [link to relevant documentation]. Figure 10 Steps S1020 to S1040 shown in the diagram will not be repeated here.
[0161] In this embodiment of the application, the transaction server extracts the identifier and quantity of the resource to be removed from the removal request sent by the client corresponding to the owner of the resource to be removed, and generates the resource information of the resource to be removed from the blockchain address of the resource to be removed from the DID server, so as to ensure that the resource information is consistent with the owner of the resource to be removed.
[0162] It is worth noting that this application embodiment provides another blockchain-based data processing method, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The transaction server shown is used to execute, as... Figure 12As shown, this blockchain-based data processing method... Figure 10 Based on the above, S1010 is extended to steps S1210 to S1230. Steps S1210 to S1230 are described in detail below:
[0163] S1210. Receive a removal request sent by the client corresponding to the owner of the resource to be removed. The removal request includes the decentralized identity identifier of the owner of the resource to be removed.
[0164] In this embodiment of the application, the transaction server performs corresponding operations based on the request. The transaction server receives a removal request sent by the client corresponding to the owner of the resource to be removed. The removal request is generated by the client in response to the resource removal operation of the owner of the resource to be removed, and is used to indicate that the resource needs to be removed. The removal request includes the DID identifier of the owner of the resource to be removed.
[0165] S1220. Based on the decentralized identity identifier, find the private key of the owner of the resource to be removed from the key escrow server; the private key is generated by the decentralized identity server and the private key of the owner of the resource to be removed, and then stored in the key escrow server based on the key escrow instruction information.
[0166] It should be noted that the DID server in this embodiment can generate a DID identifier and a private key for the owner of the resource to be removed. Then, based on the indication information of the resource to be removed, it can determine whether key escrow is required. If the indication information indicates key escrow is required, the DID server will associate and store the private key and DID identifier in the key escrow server. If the indication information indicates no key escrow is required, the DID server can send the private key to the client of the owner of the resource to be removed.
[0167] In one example, the DID server receives a registration request that carries the identity information of the owner of the resource to be removed and an indication of whether key escrow is required. After verifying the identity information, a decentralized identity identifier and the private key of the owner of the resource to be removed are generated.
[0168] As can be seen, after receiving a removal request, the transaction server can use the DID identifier in the removal request to find the private key of the owner of the resource to be removed associated with that DID identifier from the key escrow server.
[0169] S1230. Obtain resource information for the resource to be removed.
[0170] It should be noted that, Figure 12 For a detailed description of steps S1020 to S1040 shown, please refer to [link to relevant documentation]. Figure 10Steps S1020 to S1040 shown in the diagram will not be repeated here.
[0171] In this embodiment of the application, the owner of the resource to be removed can entrust the key to a escrow service. Then, the transaction server can find the private key from the key escrow server by using the DID identifier of the owner of the resource to be removed in the removal request, thus ensuring the accuracy and security of the private key search.
[0172] This application provides another blockchain-based data processing method, which includes methods applicable to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The transaction server shown is used to execute this blockchain-based data processing method. Figures 10 to 12 Based on the example shown, steps S1310 to S1340 are added before step S1010. For example... Figure 13 As shown, in Figure 10 Based on this, steps S1310 to S1340 are added for explanation, which is the process of putting the resource to be removed onto the chain.
[0173] Steps S1310 to S1340 are described in detail below:
[0174] S1310. Receive a resource acquisition request sent by the client corresponding to the owner of the resource to be removed. The resource acquisition request carries the decentralized identity identifier of the specified resource to be added to the chain and the owner of the resource to be removed.
[0175] A resource acquisition request is a request triggered when the owner of a resource to be removed obtains a certain resource and needs to store the obtained resource in the blockchain network. The owner of the resource to be removed sends a resource acquisition request through a client. The resource acquisition request carries the specified resource to be put on the chain and a DID identifier that represents the identity of the owner of the resource to be removed. The resource to be put on the chain can be specified by the owner of the resource to be removed or by the business party that issues the resource.
[0176] S1320. Locate the private key of the owner of the resource to be removed from the key hosting server based on the decentralized identity.
[0177] In this embodiment, the key escrow server stores the DID identifier and the private key together. Therefore, the transaction server can retrieve the private key of the owner of the resource to be removed from the key escrow server based on the DID identifier.
[0178] In one example, the resource acquisition request can also carry the address of the key escrow server, so that the transaction server can look up the corresponding private key from the key escrow server based on the address of the key escrow server.
[0179] S1330. Sign the resource acquisition request based on the private key to obtain the resource on-chain request.
[0180] After obtaining the private key, the transaction server can use the private key to sign the resource acquisition request to obtain the resource on-chain request. Since the resource acquisition request carries the resource to be on-chain, the resource on-chain request also carries the resource to be on-chain.
[0181] S1340, Send the resource upload request to the blockchain node in the blockchain network.
[0182] The transaction server sends a resource upload request to a blockchain node in the blockchain network, so that the blockchain node stores the resource to be uploaded to the blockchain network.
[0183] In one example, the resource upload request also carries the address where the resource to be uploaded needs to be stored, i.e., the blockchain address of the party to which the resource to be removed belongs. Then, the blockchain node can store the resource to be uploaded in the blockchain address of the party to which the resource to be removed belongs.
[0184] It should be noted that, Figure 13 For a detailed description of steps S1010 to S1040 shown, please refer to [link / reference]. Figure 10 Steps S1010 to S1040 shown in the diagram will not be repeated here.
[0185] In this embodiment, after obtaining the resource to be added to the blockchain and its corresponding DID identifier, the transaction server retrieves the private key from the key escrow server using the DID identifier, and then signs the request based on the retrieved private key. The signature indicates that the resource addition request has been authorized by the owner of the resource, making the generated resource addition request more reliable.
[0186] Figures 10 to 13 The illustrated embodiment is described from the perspective of the transaction server. The following is a combination of... Figures 14 to 16 The implementation details of the technical solution in this application embodiment are described in detail from the perspective of the client corresponding to the owner of the resource to be removed:
[0187] Please see Figure 14 , Figure 14 This is a flowchart illustrating a blockchain-based data processing method according to an embodiment of this application. The method can be... Figure 3 The client corresponding to the owner of the resource to be removed, as shown, will execute the action. Figure 14 As shown, the blockchain-based data processing method may include steps S1410 to S1440, which are described in detail below:
[0188] S1410. Obtain resource information for the resource to be removed.
[0189] The client corresponding to the owner of the resource to be removed can trigger the acquisition of the resource information of the resource to be removed based on the operation of the owner of the resource to be removed. For example, the client corresponding to the owner of the resource to be removed displays a removal interface, which includes multiple removal controls. Then, the client corresponding to the owner of the resource to be removed can obtain the resource information of the resource to be removed through the removal controls.
[0190] S1420. Generate a resource removal transaction by signing the resource information of the resource to be removed based on the private key from the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0191] In this embodiment of the application, the private key of the owner of the resource to be removed is managed by the owner of the resource to be removed. After obtaining the resource information of the resource to be removed, the client corresponding to the owner of the resource to be removed can sign the resource information of the resource to be removed based on the private key from the owner of the resource to be removed to generate a resource removal transaction. Since the resource information of the resource to be removed is signed based on the private key of the owner of the resource to be removed, the resource information of the resource to be removed is attached with a signature. The resource information of the resource to be removed includes the blockchain address where the resource to be removed is located. Therefore, the resource removal transaction includes the blockchain address where the resource to be removed is located and the signature.
[0192] In one example, when the removal interface is displayed on the client corresponding to the owner of the resource to be removed, the private key managed by the owner of the resource to be removed can also be obtained through the removal interface.
[0193] It should be noted that, in the embodiments of this application, the private key of the owner of the resource to be removed can be generated by the DID server or by the client corresponding to the owner of the resource to be removed, and there is no limitation here.
[0194] S1430. Send the resource removal transaction to the blockchain node in the blockchain network so that the blockchain node can verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and remove the resource to be removed from the blockchain network after the ownership of the resource to be removed is successfully verified.
[0195] For details regarding the blockchain node verification process in step S1430, please refer to [link / reference needed]. Figure 4 I will not go into details here.
[0196] S1440: Receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
[0197] Understandably, the client corresponding to the owner of the resource to be removed can receive the removal result sent by the blockchain node, for example, by displaying the removal result to the owner of the resource to be removed through a visual interface, so that the owner of the resource to be removed can view the removal result.
[0198] In this embodiment, for the owner of the resource to be removed, the resource removal process can be completed without actively calling relevant standard interfaces. This greatly simplifies the process of removing resources in consortium blockchain scenarios.
[0199] It is worth noting that this application embodiment provides another blockchain-based data processing method, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The client corresponding to the owner of the resource to be removed, as shown, will execute the action. Figure 15 As shown, this blockchain-based data processing method... Figure 14 Based on this, Figure 14 S1420 is extended to S1510 to S1520. The steps S1510 to S1520 are described in detail below:
[0200] S1510. Generate a transaction information request based on the resource information of the resource to be removed, in order to request the private key of the owner of the resource to be removed.
[0201] In this embodiment, the private key of the resource to be removed is managed by the resource owner. Therefore, when a client needs the private key, it needs to generate a transaction information request based on the resource information of the resource to be removed, and then use this transaction information request to request the private key from the resource owner. For example, after generating the transaction information request, the client displays the request through an interface, and the resource owner uses the private key after viewing the request.
[0202] In one example, a transaction information request is generated based on the resource information of the resource to be removed. The transaction information request includes the resource information of the resource to be removed, and the owner of the resource to be removed can also confirm the resource information of the resource to be removed to confirm whether the information is correct.
[0203] S1520. Sign the resource information of the resource to be removed based on the private key from the owner of the resource to be removed, so as to generate a resource removal transaction based on the signature and the resource information of the resource to be removed.
[0204] After requesting the private key of the owner of the resource to be removed, the client uses the private key of the owner of the resource to be removed to sign the resource information of the resource to be removed.
[0205] In this embodiment of the application, the owner of the resource to be removed uses the private key of the owner of the resource to be removed to sign the resource information of the resource to be removed, so that the resource information of the resource to be removed is attached with the signature, and a resource removal transaction is generated based on the signature and the resource information of the resource to be removed.
[0206] In one example, the resource information of the resource to be removed, along with the signature, is used as the resource removal transaction. For example, the resource removal transaction includes the signature, the identifier of the resource to be removed, the quantity, and the address.
[0207] It should be noted that, Figure 15 For a detailed description of steps S1410, S1430 to S1440 shown, please refer to [link / reference]. Figure 14 Steps S1410, S1430 to S1440 shown in the diagram will not be repeated here.
[0208] In this embodiment of the application, the client generates a transaction information request to request the private key of the owner of the resource to be removed, and then uses the resource information of the resource to be removed to sign it. Then, a resource removal transaction is generated based on the signature and the resource information of the resource to be removed. The signature ensures that the resource removal transaction has been authorized by the owner of the resource to be removed.
[0209] It is worth noting that this application embodiment provides another blockchain-based data processing method, which can be applied to... Figure 3 The implementation environment shown indicates that this method can be implemented by Figure 3 The client corresponding to the owner of the resource to be removed, as shown, executes this blockchain-based data processing method. Figure 14 or Figure 15 Based on S1410, steps S1610 to S1620 are added before S1610. For example... Figure 16 As shown, in Figure 14 Steps S1610 to S1620 have been added before S1410, and the details of steps S1610 to S1620 are as follows:
[0210] S1610. Send the registration request of the owner of the resource to be removed to the decentralized identity server. The registration request carries the identity information of the owner of the resource to be removed, so that the decentralized identity server can generate a decentralized identity identifier of the owner of the resource to be removed when the identity information is verified.
[0211] In this embodiment, the client corresponding to the owner of the resource to be removed responds to the registration operation of the owner of the resource to be removed, generates a registration request, and then sends the registration request carrying the identity information of the owner of the resource to be removed to the DID server, whereby the DID server performs identity authentication.
[0212] The DID service verifies identity information and generates a DID identifier for the owner of the resource to be removed when the verification is successful.
[0213] In other embodiments, the registration request also includes indication information, which indicates whether key escrow is performed. If key escrow is performed, the DID server can generate a key pair and entrust the private key to the key escrow server when the verification is successful.
[0214] If key escrow is not performed, the DID server can send the generated private key to the terminal corresponding to the owner of the resource to be removed; the DID server may not generate a key pair, and the client corresponding to the owner of the resource to be removed may generate the public and private keys.
[0215] S1620. Generate a resource acquisition request containing the specified resource to be added to the blockchain based on the decentralized identity identifier, and sign the resource acquisition request according to the private key from the owner of the resource to be removed to obtain the resource on-chain request. Send the resource on-chain request to the transaction server so that the transaction server forwards the resource on-chain request to the blockchain node in the blockchain network.
[0216] The client corresponding to the owner of the resource to be removed responds to the operation triggered by the owner of the resource to be removed, which requires the resource to be put on the blockchain, and generates a resource acquisition request based on the DID identifier of the owner of the resource to be removed. In this embodiment of the application, the resource acquisition request carries the resource to be put on the blockchain specified by the owner of the resource to be removed.
[0217] Understandably, if the owner of the resource to be removed has not escrowed the key, the client corresponding to the owner of the resource to be removed will use the private key from the owner of the resource to be removed to sign the resource acquisition request to obtain the resource on-chain request, and send the resource on-chain request to the transaction server, which will then forward the on-chain request to at least the blockchain nodes in the blockchain network.
[0218] In other embodiments, if the owner of the resource to be removed has implemented key escrow, the client corresponding to the owner of the resource to be removed sends the resource acquisition request to the transaction server. The transaction server needs to find the private key of the owner of the resource to be removed from the key escrow server based on the DID identifier of the owner of the resource to be removed, and then sign the resource acquisition request based on the private key to obtain the resource on-chain request, and then send the resource on-chain request to the blockchain node.
[0219] It should be noted that, Figure 16 For a detailed description of steps S1410 to S1440 shown, please refer to [link to relevant documentation]. Figure 14 Steps S1410 to S1440 shown in the diagram will not be repeated here.
[0220] In this embodiment, the client sends the registration request of the owner of the resource to be removed to the DID server, which performs identity authentication and assigns a DID identifier to the owner of the resource to be removed, so that the owner of the resource to be removed can perform corresponding blockchain-related operations. Then, the client can send the generated resource on-chain request to the transaction server to realize the resource on-chain.
[0221] For ease of understanding, the following is based on Figure 3 The implementation environment shown illustrates the blockchain-based data processing method provided in this application embodiment: This embodiment's blockchain-based data processing method designs an on-chain digital resource removal scheme based on a consortium blockchain, building upon the ERC20 (Etuereum Request for Comment 20), ERC721 (Etuereum Request for Comment 721), and ERC1155 (Etuereum Request for Comment 1155) standards. Using digital collectibles as an example, this scheme aggregates the actions of removing resources from objects in the background, forming on-chain resource removal transactions. This scheme supports the removal of digital collectibles from both custodial and non-custodial object chains, greatly simplifying the removal process of digital resources on the object chain and providing on-chain digital collectible removal capabilities for consortium blockchain digital resource platforms.
[0222] like Figure 17 As shown, the system includes an object (the aforementioned owner of the resource to be removed), a client corresponding to the owner of the resource to be removed, which runs a trading application, a DID server, a digital collectibles server (i.e., the aforementioned trading server), a key escrow server, a first blockchain node running the DID contract, and a second blockchain node running the digital collectibles contract. The blockchain-based data processing method includes:
[0223] S1701. The object is registered with its real name on the trading application running on the client.
[0224] S1702, The DID server receives the registration information forwarded by the transaction application running on the client.
[0225] The registration information includes the object's identity information.
[0226] S1703. The DID server verifies the registration information and generates a DID identifier, a pair of keys, and the blockchain address of the object upon successful verification.
[0227] The DID server verifies the identity information of an object, and the generated DID identifier is used to uniquely prove the object's identity in the blockchain.
[0228] S1704. The DID server stores the private key in the key escrow service according to whether the object is subject to key escrow, and sends the object's DID identifier to the first blockchain node for on-chain storage.
[0229] It should be noted that the object can indicate whether key escrow is required. The registration information also carries indication information, which is used to indicate whether key escrow is required. When key escrow is required, the DID server will entrust the generated private key to the key escrow server. If key escrow is not required, the DID server can send the generated private key to the object, and the object will keep the key itself. The DID server can also choose not to generate the key, and the client can generate the key.
[0230] The DID server also sends the object's DID identifier to the first blockchain node running the DID contract, so that the DID identifier can be used as the object's identity identifier in the blockchain network.
[0231] S1705, The DID server returns the DID identifier of the object.
[0232] In this embodiment of the application, when an object triggers a blockchain-related operation, it needs to be triggered by a DID identifier.
[0233] S1706. When an object acquires a digital collectible through some activity or purchase, it sends a message to the client about acquiring the digital collectible based on the DID identifier.
[0234] S1707. The client generates a request to obtain digital collectibles and sends the request to the digital collectibles server.
[0235] The client extracts the digital collectibles to be uploaded to the blockchain and their DID identifiers from the message received by the digital collectibles, and uses this information to generate a request to obtain digital collectible resources.
[0236] S1708. The digital collection server retrieves the private key of the object from the key escrow server based on the DID identifier, and obtains the resource on-chain request after signing the digital collection acquisition request. The resource on-chain request is then sent to the second blockchain node for on-chain storage.
[0237] S1709. The second blockchain node transfers the digital collection to the object's blockchain address based on the resource on-chain request, and returns the transfer result to the digital collection server.
[0238] It should be noted that S1701 to S1709 are the process of registering the object and putting the resources on the blockchain. After the digital collection is put on the blockchain, the object can see the digital collection it has obtained in the application running on the client.
[0239] S1710, The object is based on the digital collection to be removed as specified by the operation on the client.
[0240] S1711. The client generates a digital collection removal request based on the object's DID identifier and sends it to the digital collection server.
[0241] The object can also specify the identifier and quantity of the digital collectibles to be removed. In this case, the digital collectible removal request includes the identifier and quantity of the digital collectibles.
[0242] S1712. The digital collection server looks up the blockchain address of the object from the DID server based on the object's DID identifier, and looks up the private key from the key escrow server.
[0243] S1713, The digital collection server generates resource removal transactions based on the blockchain address, the found private key, the identifier, and the quantity.
[0244] S1714, The digital collection server sends the resource removal transaction to the second blockchain node for on-chain processing.
[0245] S1715. The second blockchain node verifies the ownership of the digital collectibles and, after successful verification, transfers the digital collectibles to the black hole address.
[0246] S1716, The second blockchain node returns the removal result.
[0247] It should be noted that S1710 to S1716 is the resource removal process in key-hosted mode. After the digital collection is removed, the digital collection server can remove the specified digital collection from the digital collection list in the application running on the client.
[0248] S1717, The object is based on an operation on the client to remove a specified digital collection.
[0249] S1718. The client generates resource removal transactions based on blockchain addresses, private keys, and the identifiers and quantities of digital collectibles.
[0250] In this embodiment of the application, the client can generate a blockchain address and a pair of keys for the object, and the object manages the private key.
[0251] The object can also specify the identifier and quantity of the digital collectibles to be removed. The client can generate a transaction information request, which in turn requests the object's private key. Finally, a resource removal transaction is generated based on the blockchain address, private key, and the identifier and quantity of the digital collectibles specified by the object.
[0252] S1719, The client sends the resource removal transaction to the second blockchain node for on-chain processing.
[0253] S1720: The second blockchain node verifies the ownership of the digital collectibles and, after successful verification, transfers the digital collectibles to the black hole address.
[0254] S1721, The second blockchain node returns the removal result.
[0255] It should be noted that S1717 to S1721 are the resource removal process in non-key-hosted mode. After the digital collection is removed, the client removes the specified digital collection from the digital collection list in the running application.
[0256] The blockchain-based data processing method provided in this application is designed based on the ERC20, ERC721 and ERC1155 standards for removing digital resources on consortium blockchains. It has excellent compatibility with the above-mentioned standards and supports both key-custodial and non-key-custodial scenarios on consortium blockchains, making this solution more suitable for consortium blockchain scenarios and greatly simplifying the process of removing digital collectibles.
[0257] The apparatus embodiments described herein can be used to execute the blockchain-based data processing method in the above embodiments of this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the blockchain-based data processing method described above.
[0258] This application provides a blockchain-based data processing device, such as... Figure 18 As shown, this blockchain-based data processing device can be configured in a blockchain node, and the device includes:
[0259] The first receiving module 1810 is used to receive a resource removal transaction sent by the requester. The resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0260] The removal module 1820 is used to verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. If the ownership of the resource to be removed is successfully verified, the resource to be removed is removed from the blockchain network.
[0261] The first sending module 1830 is used to send the removal result to the requester so that the requester can display the removal result to the owner of the resource to be removed.
[0262] In one embodiment of this application, based on the aforementioned scheme, the removal module 1820 is further configured to find the on-chain address of the owner of the resource to be removed based on the signature; if the blockchain address of the resource to be removed matches the on-chain address of the owner of the resource to be removed, then the ownership verification of the resource to be removed is successful.
[0263] In one embodiment of this application, based on the aforementioned scheme, the resource removal transaction further includes the identifier and quantity of the resource to be removed; the removal module 1820 is further configured to transfer the resource to be removed from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address according to the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network.
[0264] In one embodiment of this application, based on the foregoing scheme, the first receiving module 1810 is further configured to receive a resource removal transaction sent by the client corresponding to the owner of the resource to be removed. The resource removal transaction is generated by the client signing the resource information of the resource to be removed specified by the owner of the resource to be removed based on the private key from the owner of the resource to be removed.
[0265] In one embodiment of this application, based on the foregoing scheme, the first receiving module 1810 is further used to receive a resource removal transaction sent by the transaction server. The resource removal transaction is generated by the transaction server after receiving a removal request sent by the client corresponding to the owner of the resource to be removed, finding the private key of the owner of the resource to be removed from the key escrow server, and signing the resource information of the resource to be removed carried in the removal request according to the found private key.
[0266] In one embodiment of this application, based on the aforementioned scheme, the first receiving module 1810 is further configured to receive a resource on-chain request containing resources to be on-chain sent by the transaction server. The resource on-chain request is obtained by signing the resource acquisition request generated by the client corresponding to the owner of the resource to be removed based on the private key of the owner of the resource to be removed. The device also includes a transfer module, which is configured to transfer the resources to be on-chain to the on-chain address of the owner of the resource to be removed in the blockchain network and send the transfer result to the transaction server.
[0267] This application provides a blockchain-based data processing device, such as... Figure 19 As shown, this blockchain-based data processing device can be configured in a transaction server, and the device includes:
[0268] The first acquisition module 1910 is used to acquire the resource information of the resource to be removed and the private key of the owner of the resource to be removed;
[0269] The first generation module 1920 is used to generate a resource removal transaction by signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0270] The second sending module 1930 is used to send the resource removal transaction to the blockchain node in the blockchain network, so that the blockchain node can verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and remove the resource to be removed from the blockchain network after the ownership of the resource to be removed is successfully verified.
[0271] The second receiving module 1940 is used to receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
[0272] In one embodiment of this application, based on the foregoing scheme, the first acquisition module 1910 is further configured to receive a removal request sent by the client corresponding to the owner of the resource to be removed, the removal request including the decentralized identity identifier of the owner of the resource to be removed, and the identifier and quantity of the resource to be removed; search for the blockchain address of the owner of the resource to be removed from the decentralized identity server based on the decentralized identity identifier, and use the searched blockchain address as the blockchain address where the resource to be removed is located; generate resource information of the resource to be removed according to the identifier, quantity and blockchain address of the resource to be removed.
[0273] In one embodiment of this application, based on the aforementioned scheme, the first acquisition module 1910 further receives a removal request sent by the client corresponding to the owner of the resource to be removed. The removal request includes the decentralized identity identifier of the owner of the resource to be removed. Based on the decentralized identity identifier, the private key of the owner of the resource to be removed is retrieved from the key escrow server. The private key is generated by the decentralized identity server and the private key of the owner of the resource to be removed. Based on the key escrow instruction information, the decentralized identity server associates the private key and the decentralized identity identifier and stores them in the key escrow server.
[0274] In one embodiment of this application, based on the aforementioned scheme, the device further includes a first on-chain module. The on-chain module is used to receive a resource acquisition request sent by a client corresponding to the owner of the resource to be removed. The resource acquisition request carries a specified resource to be on-chain and a decentralized identity identifier of the owner of the resource to be removed. Based on the decentralized identity identifier, the module searches for the private key of the owner of the resource to be removed from the key escrow server. Based on the private key, the module signs the resource acquisition request to obtain a resource on-chain request. The module then sends the resource on-chain request to a blockchain node in the blockchain network.
[0275] This application provides a blockchain-based data processing device, such as... Figure 20 As shown, this blockchain-based data processing device can be configured in the client corresponding to the owner of the resource to be removed. The device includes:
[0276] The second acquisition module 2010 acquires the resource information of the resource to be removed;
[0277] The second generation module 2020 generates a resource removal transaction by signing the resource information of the resource to be removed based on the private key from the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature.
[0278] The third sending module 2030 sends the removal transaction to the blockchain nodes in the blockchain network, so that the blockchain nodes can verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and remove the resource to be removed after the ownership of the resource to be removed is successfully verified.
[0279] The third receiving module 2040 receives the removal result sent by the blockchain node and displays the removal result to the owner of the resource to be removed.
[0280] In one embodiment of this application, based on the foregoing scheme, the second generation module 2020 is further configured to generate a transaction information request based on the resource information of the resource to be removed, so as to request the private key of the owner of the resource to be removed; and to sign the resource information of the resource to be removed based on the private key from the owner of the resource to be removed, so as to generate a resource removal transaction based on the signature and the resource information of the resource to be removed.
[0281] In one embodiment of this application, based on the aforementioned scheme, the device further includes a registration module and a second on-chain module. The registration module is used to send the registration request of the owner of the resource to be removed to the decentralized identity server. The registration request carries the identity information of the owner of the resource to be removed, so that the decentralized identity server generates a decentralized identity identifier of the owner of the resource to be removed when verifying the identity information. The second on-chain module is used to generate a resource acquisition request containing the specified resource to be on-chain based on the decentralized identity identifier, and sign the resource acquisition request according to the private key from the owner of the resource to be removed to obtain a resource on-chain request. The resource on-chain request is sent to the transaction server, so that the transaction server forwards the resource on-chain request to the blockchain node in the blockchain network.
[0282] It should be noted that the apparatus provided in the above embodiments and the method provided in the above embodiments belong to the same concept, and the specific way in which each module and unit performs operations has been described in detail in the method embodiments, and will not be repeated here.
[0283] Embodiments of this application also provide an electronic device, including one or more processors and a storage device, wherein the storage device is used to store one or more computer programs, which, when executed by one or more processors, cause the electronic device to implement the blockchain-based data processing method described above.
[0284] Figure 21 A schematic diagram of the structure of a computer system suitable for implementing the electronic device of the present application is shown.
[0285] It should be noted that, Figure 21 The computer system 2100 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application, wherein the electronic device may be a terminal or a server.
[0286] like Figure 21 As shown, the computer system 2100 includes a central processing unit (CPU) 2101, which can perform various appropriate actions and processes, such as executing the methods described in the above embodiments, based on a program stored in read-only memory (ROM) 2102 or a program loaded from storage portion 2108 into random access memory (RAM) 2103. The RAM 2103 also stores various programs and data required for system operation. The CPU 2101, ROM 2102, and RAM 2103 are interconnected via a bus 2104. An input / output (I / O) interface 2105 is also connected to the bus 2104.
[0287] In some embodiments, the following components are connected to the I / O interface 2105: an input section 2106 including a keyboard, mouse, etc.; an output section 2107 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 2108 including a hard disk, etc.; and a communication section 2109 including a network interface card such as a LAN (Local Area Network) card, modem, etc. The communication section 2109 performs communication processing via a network such as the Internet. A drive 2110 is also connected to the I / O interface 2105 as needed. A removable medium 2111, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 2110 as needed so that computer programs read from it can be installed into the storage section 2108 as needed.
[0288] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program including a computer program for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 2109, and / or installed from removable medium 2111. When the computer program is executed by processor (CPU) 2101, it performs various functions defined in the system of this application.
[0289] It should be noted that the computer-readable medium shown in the embodiments of this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory, flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying a computer-readable computer program. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to wireless, wired, etc., or any suitable combination thereof.
[0290] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. Each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and a computer program.
[0291] The units or modules described in the embodiments of this application can be implemented in software or hardware, and can also be located in a processor. The names of these units or modules do not necessarily limit the specific unit or module itself.
[0292] Another aspect of this application provides a computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the method described above. This computer-readable storage medium may be included in the electronic device described in the above embodiments, or it may exist independently and not assembled into the electronic device.
[0293] Another aspect of this application provides a computer program product comprising a computer program stored in a computer-readable storage medium. A processor of an electronic device reads the computer program from the computer-readable storage medium and executes the computer program, causing the electronic device to perform the methods described above in the various embodiments.
[0294] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of this application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0295] Other embodiments of this application will readily conceive of by considering the specification and practicing the embodiments disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein.
[0296] The above content is merely a preferred exemplary embodiment of this application and is not intended to limit the implementation of this application. Those skilled in the art can easily make corresponding modifications or alterations based on the main concept and spirit of this application. Therefore, the scope of protection of this application should be determined by the scope of protection claimed in the claims.
Claims
1. A data processing method based on blockchain, characterized in that, include: The system receives a resource removal transaction sent by a requester. The resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed, the signature, and the identifier and quantity of the resource to be removed. The ownership of the resource to be removed is verified based on the signature and the blockchain address where the resource to be removed is located. If the ownership of the resource to be removed is successfully verified, the resource to be removed is transferred from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address based on the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. The removal result is sent to the requesting party so that the requesting party can display the removal result to the owner of the resource to be removed.
2. The method according to claim 1, characterized in that, The step of verifying the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located includes: The on-chain address of the owner of the resource to be removed is located based on the signature; If the blockchain address of the resource to be removed matches the on-chain address of the party to which the resource to be removed belongs, then the ownership verification of the resource to be removed is successful.
3. The method according to claim 1, characterized in that, The resource removal transaction sent by the receiving requester includes: The client receives a resource removal transaction from the client corresponding to the owner of the resource to be removed. The resource removal transaction is generated by the client signing the resource information of the resource to be removed specified by the owner of the resource to be removed based on the private key from the owner of the resource to be removed.
4. The method according to claim 1, characterized in that, The resource removal transaction sent by the receiving requester includes: The transaction server receives a resource removal transaction. The resource removal transaction is generated by the transaction server after receiving a removal request from the client corresponding to the owner of the resource to be removed, finding the private key of the owner of the resource to be removed from the key escrow server, and signing the resource information of the resource to be removed carried in the removal request based on the found private key.
5. The method according to any one of claims 1 to 4, characterized in that, Prior to the resource removal transaction sent by the receiving requester, the method further includes: Receive a resource on-chain request sent by the transaction server, which contains the resource to be on-chain. The resource on-chain request is obtained by signing the resource acquisition request generated by the client corresponding to the owner of the resource to be removed based on the private key of the owner of the resource to be removed. The resource to be added to the blockchain is transferred to the on-chain address of the party to which the resource to be removed belongs in the blockchain network, and the transfer result is sent to the transaction server.
6. A data processing method based on blockchain, characterized in that, include: Obtain the resource information of the resource to be removed and the private key of the owner of the resource to be removed; Based on the private key of the owner of the resource to be removed, the resource information of the resource to be removed is signed to generate a resource removal transaction. The resource removal transaction includes the blockchain address where the resource to be removed is located, the signature, and the identifier and quantity of the resource to be removed. The resource removal transaction is sent to a blockchain node in the blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. After the ownership of the resource to be removed is successfully verified, the resource to be removed is transferred from the on-chain address of the owner of the resource to be removed to the black hole address according to the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. Receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
7. The method according to claim 6, characterized in that, The process of obtaining the resource information of the resource to be removed and the private key of the owner of the resource to be removed includes: Receive a removal request sent by the client corresponding to the owner of the resource to be removed. The removal request includes the decentralized identity identifier of the owner of the resource to be removed, as well as the identifier and quantity of the resource to be removed. Based on the decentralized identity identifier, the blockchain address of the party to which the resource to be removed belongs is found in the decentralized identity server, and the found blockchain address is used as the blockchain address of the resource to be removed; Resource information of the resource to be removed is generated based on the identifier, quantity, and blockchain address of the resource to be removed.
8. The method according to claim 6, characterized in that, The process of obtaining the resource information of the resource to be removed and the private key of the owner of the resource to be removed includes: Receive a removal request sent by the client corresponding to the owner of the resource to be removed, wherein the removal request includes the decentralized identity identifier of the owner of the resource to be removed; Based on the decentralized identity identifier, the private key of the owner of the resource to be removed is retrieved from the key escrow server; the private key is generated by the decentralized identity server after generating the decentralized identity identifier and the private key of the owner of the resource to be removed, and then stored in the key escrow server based on the key escrow instruction information.
9. The method according to any one of claims 6 to 8, characterized in that, Before obtaining the resource information of the resource to be removed and the private key of the owner of the resource to be removed, the method further includes: Receive a resource acquisition request sent by the client corresponding to the owner of the resource to be removed, wherein the resource acquisition request carries the specified resource to be put on the chain and the decentralized identity identifier of the owner of the resource to be removed; Based on the decentralized identity, retrieve the private key of the owner of the resource to be removed from the key hosting server; The resource acquisition request is signed based on the private key to obtain the resource on-chain request. The request to upload the resource to the blockchain is sent to a blockchain node in the blockchain network.
10. A data processing method based on blockchain, characterized in that, include: Get the resource information of the resource to be removed; A resource removal transaction is generated by signing the resource information of the resource to be removed based on the private key from the owner of the resource to be removed. The resource removal transaction includes the blockchain address where the resource to be removed is located, the signature, and the identifier and quantity of the resource to be removed. The resource removal transaction is sent to a blockchain node in the blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. After the ownership of the resource to be removed is successfully verified, the resource to be removed is transferred from the on-chain address of the owner of the resource to be removed to the black hole address according to the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. Receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
11. The method according to claim 10, characterized in that, The step of signing the resource information of the resource to be removed based on the private key from the owner of the resource to be removed to generate a resource removal transaction includes: A transaction information request is generated based on the resource information of the resource to be removed, in order to request the private key of the owner of the resource to be removed. The resource information of the resource to be removed is signed based on the private key from the owner of the resource to be removed, so as to generate the resource removal transaction based on the signature and the resource information of the resource to be removed.
12. The method according to any one of claims 10 to 11, characterized in that, Before obtaining the resource information of the resource to be removed, the method further includes: The registration request of the owner of the resource to be removed is sent to the decentralized identity server. The registration request carries the identity information of the owner of the resource to be removed, so that the decentralized identity server generates a decentralized identity identifier of the owner of the resource to be removed when the identity information is verified. Based on the decentralized identity, a resource acquisition request containing the specified resource to be added to the blockchain is generated. The resource acquisition request is then signed using the private key from the owner of the resource to be removed to obtain a resource on-chain request. The resource on-chain request is then sent to the transaction server, which forwards the resource on-chain request to the blockchain nodes in the blockchain network.
13. A data processing device based on blockchain nodes, characterized in that, include: The first receiving module is used to receive a resource removal transaction sent by the requester. The resource removal transaction is generated by the requester signing the resource information of the resource to be removed based on the private key of the owner of the resource to be removed. The resource removal transaction includes the blockchain address of the resource to be removed and the signature, as well as the identifier and quantity of the resource to be removed. The removal module is used to verify the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. If the ownership verification of the resource to be removed is successful, the resource to be removed is transferred from the on-chain address of the owner of the resource to be removed on the blockchain network to the black hole address based on the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. The first sending module is used to send the removal result to the requesting party so that the requesting party can display the removal result to the party that owns the resource to be removed.
14. A data processing device based on blockchain nodes, characterized in that, include: The first acquisition module is used to acquire the resource information of the resource to be removed and the private key of the owner of the resource to be removed; The first generation module is used to sign the resource information of the resource to be removed based on the private key of the owner of the resource to be removed to generate a resource removal transaction. The resource removal transaction includes the blockchain address where the resource to be removed is located, the signature, and the identifier and quantity of the resource to be removed. The second sending module is used to send the resource removal transaction to a blockchain node in the blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located, and after the ownership of the resource to be removed is successfully verified, the module transfers the resource to be removed from the on-chain address of the owner of the resource to be removed to the black hole address based on the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. The second receiving module is used to receive the removal result sent by the blockchain node and display the removal result to the owner of the resource to be removed.
15. A data processing device based on blockchain nodes, characterized in that, include: The second acquisition module acquires the resource information of the resource to be removed; The second generation module generates a resource removal transaction by signing the resource information of the resource to be removed based on the private key from the owner of the resource to be removed. The resource removal transaction includes the blockchain address where the resource to be removed is located, the signature, and the identifier and quantity of the resource to be removed. The third sending module sends the resource removal transaction to a blockchain node in the blockchain network, so that the blockchain node verifies the ownership of the resource to be removed based on the signature and the blockchain address where the resource to be removed is located. After the ownership of the resource to be removed is successfully verified, the module transfers the resource to be removed from the on-chain address of the owner of the resource to be removed to the black hole address based on the identifier and quantity of the resource to be removed, so as to remove the resource to be removed from the blockchain network. The third receiving module receives the removal result sent by the blockchain node and displays the removal result to the owner of the resource to be removed.
16. An electronic device, characterized in that, include: One or more processors; A storage device for storing one or more programs, which, when executed by the one or more processors, cause the electronic device to perform the method of any one of claims 1 to 5, or the method of any one of claims 6 to 9, or the method of any one of claims 10 to 12.
17. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by the processor of the electronic device, causes the electronic device to perform the method of any one of claims 1 to 5, or the method of any one of claims 6 to 9, or the method of any one of claims 10 to 12.
18. A computer program product, characterized in that, The computer program product includes a computer program stored in a computer-readable storage medium, wherein a processor of an electronic device reads from the computer-readable storage medium and executes the computer program to cause the electronic device to perform the method of any one of claims 1 to 5, or the method of any one of claims 6 to 9, or the method of any one of claims 10 to 12.