WO2023216532A1 - 一种数字资产的管理方法及相关装置 - Google Patents
一种数字资产的管理方法及相关装置 Download PDFInfo
- Publication number
- WO2023216532A1 WO2023216532A1 PCT/CN2022/130459 CN2022130459W WO2023216532A1 WO 2023216532 A1 WO2023216532 A1 WO 2023216532A1 CN 2022130459 W CN2022130459 W CN 2022130459W WO 2023216532 A1 WO2023216532 A1 WO 2023216532A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- digital asset
- peer node
- digital
- asset
- target
- Prior art date
Links
- 238000007726 management method Methods 0.000 title claims abstract description 136
- 238000012545 processing Methods 0.000 claims abstract description 87
- 238000000034 method Methods 0.000 claims abstract description 69
- 230000008569 process Effects 0.000 claims abstract description 23
- 238000003860 storage Methods 0.000 claims description 39
- 238000013475 authorization Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 16
- 230000006378 damage Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 241000282376 Panthera tigris Species 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000008520 organization Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 235000006679 Mentha X verticillata Nutrition 0.000 description 2
- 235000002899 Mentha suaveolens Nutrition 0.000 description 2
- 235000001636 Mentha x rotundifolia Nutrition 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
Definitions
- This application relates to the field of blockchain technology, and in particular to a digital asset management method, device, first peer node, digital asset management system, computer-readable storage medium, and computer program product.
- Blockchain technology uses block chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, uses cryptography to ensure the security of data transmission and access, and utilizes automated A new distributed infrastructure and computing paradigm that uses smart contracts composed of script code to program and manipulate data.
- the digital asset can be a non-fungible token (NFT).
- NFT non-fungible token
- non-fungibility means that the tokens recorded on the blockchain are unique, unique and indivisible.
- the digital assets can correspond to different types of resources, such as different types of rich media resources, including but not limited to pictures, videos, and audios.
- the address is a string sequence corresponding to the public key one-to-one, and the address can be obtained by encoding the public key. Digital assets can be transferred from one address to another.
- addresses contain less information, resulting in limited use of digital assets in the blockchain, poor scalability, and difficulty in supporting complex businesses.
- This application provides a management method for digital assets. By introducing distributed identities and managing digital assets based on distributed identities, this method can realize cross-chain or cross-business management of digital assets and solve the problem of block
- This application also provides a digital asset management device, a first peer node, a digital asset management system, a computer-readable storage medium, and a computer program product.
- this application provides a management method for digital assets.
- This approach can be applied to consortiums that include multiple blockchain networks.
- different blockchain networks among the multiple blockchain networks are respectively referred to as the first blockchain network and the second blockchain network.
- the first peer node in the first blockchain network receives a digital asset processing request sent by the management client.
- the digital asset processing request includes a distributed identity, and then the first peer node performs the processing according to the distributed identity.
- the target digital asset is identified and processed, and then the first peer node instructs the second peer node in the second blockchain network to synchronize the processing results of the target digital asset.
- this method can realize cross-chain or cross-business management of digital assets and solve the limitations and expansion of the use of digital assets in blockchain networks.
- the problem of poor performance enables digital assets to support more business scenarios, expand the scope of use of blockchain networks, and improve usability.
- the first peer node when the first peer node processes the target digital asset based on the distributed identity, the first peer node may perform one or more of the following operations on the target digital asset based on the distributed identity: create , authorization, query, transaction or destruction. This can expand the usage scenarios of digital assets in the blockchain and support complex businesses.
- the management client is provided with an asset processing interface
- the asset processing interface may be in the form of an application programming interface.
- the asset processing interface may include a digital asset creation interface, a digital asset authorization interface, a digital asset query interface, a digital asset transaction interface or a digital asset destruction interface.
- the management client may generate the digital asset processing request according to the asset processing interface.
- the first peer node can process the target digital asset based on the distributed identity in the digital asset processing request, thereby supporting complex services.
- the target digital asset corresponds to a digital resource
- the digital resource is stored in any of the following ways: stored in the same blockchain (also called the same chain) as the target digital asset. Storage); stored in a different blockchain (also called off-chain storage) from the target digital asset; storing the storage address of the digital resource in the blockchain, and the storage address is used to access the digital resource ( Also called off-chain storage).
- This method supports multiple ways of storing digital resources and makes full use of various storage resources to meet the needs of different businesses.
- the first peer node can also create a digital asset set.
- the digital asset set can be created before creating the target digital asset, and the target digital asset belongs to the digital asset set.
- the first peer node can batch process multiple target digital assets in the digital asset set based on the distributed identification. This simplifies the management operations of digital assets and improves the management efficiency of digital assets.
- the first peer node can also connect digital asset management with other businesses.
- the first peer node can connect digital asset management with e-commerce business.
- the first peer node can receive the service request of the application, where the application can be a standardized application that supports distributed identity identification, and then the first peer node can use the processing result of the target digital asset to execute the application. Business request.
- the first peer node effectively solves the limitations of the use of digital assets in the blockchain and the problem of poor scalability by connecting digital asset management with business, so that digital assets can support more business scenarios.
- distributed identities can be associated with accounts of the same user in different applications.
- the first peer node can trade the target digital assets in the accounts of the different applications according to the distributed identity. This enables management or trading of digital assets across application platforms.
- this application provides a digital asset management device.
- the device includes:
- a communication module configured to receive a digital asset processing request sent by the management client, where the digital asset processing request includes a distributed identity
- An asset processing module used to process target digital assets according to the distributed identity
- a synchronization management module used to instruct the second peer node in the second blockchain network to synchronize the processing results of the target digital assets.
- the asset processing module is specifically used to:
- the distributed identity perform one or more of the following operations on the target digital asset: creation, authorization, query, transaction or destruction.
- the management client is provided with an asset processing interface, and the digital asset processing request is generated by the management client according to the asset processing interface.
- the target digital asset corresponds to a digital resource
- the digital resource is stored in any of the following ways:
- the storage address of the digital resource is stored in the blockchain, and the storage address is used to access the digital resource.
- the asset processing module is also used to:
- the asset processing module is specifically used for:
- multiple target digital assets in the digital asset set are processed in batches.
- the communication module is also used to:
- the device also includes:
- An execution module configured to use the processing result of the target digital asset to execute the service request of the application.
- the distributed identity is associated with accounts of the same user in different applications
- the asset processing module is specifically used for:
- the target digital assets are traded in the accounts of the different applications.
- this application provides a first peer node.
- the first peer node belongs to the first blockchain network, the first peer node includes a processor and a memory, and the at least one processor and the at least one memory communicate with each other.
- Computer-readable instructions are stored in the memory; the processor executes the computer-readable instructions, so that the first peer node performs the first aspect of this application or any implementation of the first aspect.
- the management method of digital assets are stored in the memory; the processor executes the computer-readable instructions, so that the first peer node performs the first aspect of this application or any implementation of the first aspect.
- this application provides a digital asset management system.
- the system includes a first peer node in a first blockchain network and a second peer node in a second blockchain network, the first peer node being configured to perform as described in the first aspect of this application method to achieve the management of digital assets.
- the present application provides a computer-readable storage medium in which instructions are stored, and the instructions instruct the first peer node to execute the above-mentioned first aspect or any implementation of the first aspect.
- the present application provides a computer program product containing instructions that, when run on a first peer node, cause the first peer node to execute the above first aspect or any implementation of the first aspect.
- the management method of digital assets
- Figure 1 is a system architecture diagram of a digital asset management system provided by an embodiment of the present application
- Figure 2 is a schematic diagram of a configuration file provided by an embodiment of the present application.
- Figure 3 is a schematic diagram of a distributed identity document provided by an embodiment of the present application.
- Figure 4 is a flow chart of a digital asset management method provided by an embodiment of the present application.
- Figure 5 is a schematic structural diagram of a digital asset management device provided by an embodiment of the present application.
- Figure 6 is a hardware structure diagram of a first peer node provided by an embodiment of the present application.
- first and second in the embodiments of this application are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as “first” and “second” may explicitly or implicitly include one or more of these features.
- the blockchain network is a decentralized network formed by multiple nodes. Nodes in the blockchain network are connected through point-to-point connections, forming a Peer-to-Peer (P2P) network. In this point-to-point network, there is no centralized service and hierarchical structure for the nodes, and each node is peer-to-peer. Therefore, the nodes in this network are also called peer nodes, that is, peer nodes.
- P2P Peer-to-Peer
- Blockchain networks are used to provide ledger and smart contract services for applications.
- transaction logic is defined in the smart contract.
- Smart contracts are used to generate transactions, which are distributed to each peer node in the blockchain network. Each peer node records these transactions on its own copy of the ledger, and the copy of the ledger cannot be tampered with.
- Smart contracts can also be called chaincodes. Chaincode is a piece of code that can access the ledger. Peer nodes can access their own copies of the ledger through the chaincode.
- transactions can usually be recorded in the form of blocks. Different transactions can be recorded in different blocks, and different blocks can be connected to form a blockchain. Therefore, a copy of the ledger can be a blockchain.
- Digital assets refer to non-monetary assets that are owned or controlled by enterprises or individuals, exist in the form of electronic data, and are held for sale or in the production process in daily activities. Digital assets can be traded between different users relying on the blockchain network. Digital assets can include fungible tokens (FT) and non-fungible tokens (NFT). Non-fungibility means that the tokens recorded on the blockchain are unique, unique and indivisible. For ease of description, NFT is used as an example below.
- FT fungible tokens
- NFT non-fungible tokens
- NFT can be a unit of data on a blockchain (ledger). Each NFT can represent a unique digital material and serve as an electronic certification or certificate of ownership of a virtual good. Due to their non-interchangeable nature, NFTs can represent digital assets such as pictures, sounds, videos, in-game items, or other forms of creative works. Although the works themselves can be copied infinitely, these NFTs representing the works (which can usually be identified by numbers such as token IDs) can be completely tracked on their underlying blockchain, so they can provide buyers with proof of ownership.
- the address is a string sequence corresponding to the public key one-to-one, and the address can be obtained by encoding the public key.
- the address can be obtained by encoding the public key using a 256-bit secure hash algorithm (Secure Hash Algorithm 256, SHA256) or a 58-bit base algorithm (Base 58).
- Managing digital assets based on addresses can involve transferring digital assets from one address to another.
- embodiments of the present application provide a digital asset management method.
- This method can be applied to a consortium chain network.
- the consortium chain network includes multiple blockchain networks.
- different blockchain networks among the multiple blockchain networks are respectively recorded as the first blockchain. network and the second blockchain network.
- the peer node in the first blockchain network is called the first peer node, and the peer node in the second blockchain network is also called the second peer node.
- the first peer node can receive a digital asset processing request sent by the management client.
- the digital asset processing request includes distributed identity identifiers (Decentralized Identifiers, DID).
- DID distributed identity identifiers
- the DID is globally unique and can be identified by different businesses.
- a peer node processes the target digital asset based on the distributed identity, and instructs the second peer node in the second blockchain network to synchronize the processing results of the target digital asset.
- this method can realize cross-chain or cross-business management of digital assets, solving the limitations and poor scalability of digital assets such as NFT in the blockchain network. This enables digital assets to support more business scenarios, expands the scope of use of blockchain networks, and improves usability.
- the digital asset management method in the embodiment of the present application can be executed by a digital asset management system.
- the digital asset management system provided by the embodiment of the present application is first introduced below.
- the system 10 includes a first peer node 102 and a second peer node 104.
- the first peer node 102 belongs to the first blockchain network
- the second peer node 104 belongs to the second blockchain network.
- the first blockchain network and the second blockchain network belong to the same alliance.
- the first peer node 102 and the second peer node 104 may be computing devices that maintain a copy of the blockchain, and the computing device may be a server or a terminal. Terminals include but are not limited to lightweight devices such as desktops, laptops, tablets, or smartphones.
- the system 10 may also include a management client 106.
- Management client 106 may be a computer program that provides digital asset management functionality.
- the management client 106 may be a software development kit (SDK). SDK can usually be deployed in devices such as terminals.
- management clients 106 such as SDK can provide identity management and digital asset management functions, and provide supporting components corresponding to the above functions.
- supporting components corresponding to the above functions may include key certificate management components, encrypted communication components, and configuration file parsing components.
- the SDK functions and components are introduced below.
- Identity management can be the management of distributed identities, that is, DID management.
- DID management can generally include DID registration, identification, etc.
- Digital asset management specifically implements digital asset management on the blockchain network based on relevant standards.
- the relevant standards can be several standards in the Ethereum Request for Comments (ERC), including but not limited to ERC-721, ERC-1155 or ERC-165.
- Digital asset management can be the management of digital assets such as NFT in the blockchain network.
- digital asset management can include the issuance (signing and publishing), delegation, and transactions of digital assets such as NFT.
- the SDK can provide an asset processing interface, which can usually be in the form of an application programming interface (API).
- Asset processing interfaces include but are not limited to digital asset creation interfaces, digital asset transaction interfaces (can also be called digital asset circulation interfaces, digital asset transfer interfaces), digital asset query interfaces, digital asset authorization interfaces, and digital asset destruction interfaces.
- digital assets can belong to a certain digital asset collection (collection), and the asset processing interface can also include an asset collection creation interface.
- This asset collection creation interface is used to create digital asset collections.
- the digital asset set includes N digital assets, for example, N NFTs, where N can be a natural number.
- digital asset management can be batch management of digital assets in a digital asset collection, including but not limited to batch creation, batch transactions, batch queries, batch authorization, or batch destruction of digital assets in a digital asset collection.
- Digital assets can correspond to digital resources, for example, digital assets can be linked to digital resources.
- the digital resource may include different types.
- the type of digital resource may include pictures, audio, video or games.
- the digital asset may be a Year of the Tiger souvenir NFT.
- the Year of the Tiger souvenir NFT belongs to a digital asset collection.
- the digital asset collection includes 10,000 Year of the Tiger souvenir NFTs.
- Each Year of the Tiger souvenir NFT corresponds to a tiger image.
- the number of the tiger image corresponding to each Year of the Tiger souvenir NFT is different.
- the tiger images corresponding to 10,000 Year of the Tiger souvenir NFTs can be numbered from 0 to 9999.
- the tiger images can be recorded as Tiger0 to Tiger9999.
- the key certificate management component is used to generate user keys or issue user certificates.
- This user key can be an access key.
- the access key can include an access key ID (access key ID, AK) and a private access key (secret access key, SK). Based on this, the access key can be recorded as AK/SK.
- the access key identifier is a unique identifier associated with the private access key.
- the access key identifier is usually used in conjunction with the private access key to encrypt the signature of the request (such as a digital asset processing request). On the one hand, it can identify the sender On the other hand, it can facilitate the receiving party to detect whether the request has been tampered with.
- the user can configure the private key of the digital certificate certification authority (Certificate Authority, CA) in the configuration file, and the key certificate management component can generate the user key and the corresponding user certificate based on the private key.
- CA digital certificate certification authority
- the encrypted communication component is used to provide Transport Layer Security (TLS) certificates and/or keys.
- TLS Transport Layer Security
- two endpoints of encrypted communication such as the SDK and the first peer node 102, support TLS.
- One of the endpoints (for example, the SDK) can send a TLS certificate to the opposite end (for example, the first peer node 102), and the opposite end verifies the TLS certificate.
- the two endpoints can negotiate to generate a symmetric key based on the TLS key (such as the public key in the TLS certificate), and use the symmetric key as the session key for session encryption to ensure communication security and data integrity. .
- the configuration file parsing component is used to parse the SDK configuration file.
- the SDK configuration file can be downloaded and obtained through the SDK management interface.
- Figure 2 shows a schematic diagram of a configuration file.
- the configuration file includes multiple configuration items, such as client configuration items, identity configuration items, service configuration items, digital certificate certification authority configuration items, and blocks. Chain configuration items and node configuration items, each configuration item includes several configuration parameters.
- the above configuration file also includes comments, such as the comment statements starting with "#" in the figure. Each configuration item is introduced below.
- Client configuration items can include client type, TLS information, and default user identity information.
- the client type can be ecdsa_with_sha256, and the TLS information is used for authentication.
- the TLS information may include a TLS key path, a TLS certificate path, and a digital certificate authority path.
- the default user identity information can include the key path and certificate path of the default user when the SDK is started.
- the identity configuration items can include the identity information of each user on the SDK, such as the type of user 1, the key path of user 1, the certificate path of user 1, and the type of user 2, the key path of user 2, and the certificate path of user 2.
- the path in the configuration file is usually an absolute path.
- the absolute path refers to the absolute location under the directory, usually the path starting from the drive letter.
- the identity configuration item can include the distributed identity.
- a distributed identity can correspond to one or more public-private key pairs.
- Distributed identities can be stored in key-value form. Among them, the distributed identity identifier DID can be the key, and the distributed identity document (DID document) can be the value.
- the distributed identity document can be a data exchange format document, such as a JS Object Notation (JSON) document.
- FIG. 3 shows a schematic diagram of a distributed identity document.
- the distributed identity document records a distributed identity identifier, a collection of encryption materials (such as a collection of public keys), a collection of encryption protocols, a collection of service endpoints, and time. Stamped and signed. It should be noted that the above content is optional, and the above optional content does not need to be recorded in the distributed identity document.
- the service configuration item includes the address of the service, specifically the address of the digital asset management service accessed by the SDK.
- the address of the service may include an Internet Protocol (IP) address of a computing device that provides the service, such as a server. Further, the address of the service may also include a port number. This address can be represented by a Uniform Resource Locator (URL). In the example of Figure 2, the service's address could be https://128.46.154.237:30001.
- IP Internet Protocol
- URL Uniform Resource Locator
- the digital certificate certification authority configuration items may include the CA type, the CA's key path, and the CA's certificate path.
- the CA type can be ecdsa_with_sha256
- the CA's key path can be D: ⁇ GoProjects ⁇ TDCSample ⁇ conf ⁇ orgcerts ⁇ organization ⁇ ca.key
- the CA's certificate path can be D: ⁇ GoProjects ⁇ TDCSample ⁇ conf ⁇ orgcerts ⁇ organization ⁇ ca.crt.
- Blockchain configuration items can include chain ID and contract name.
- the chain ID can be xxx-dont-delete and the contract name can be trusted digital chain.
- xxx represents the user name.
- Node configuration items can include attributes of nodes in the organization, such as the node access domain name hostOverride, host address, and port number of node-0 in the organization.
- hostOverride can be configured as node-0.organization.default.svc.cluster.local.
- the host address can be configured as the default address 0.0.0.0.
- the port number can be configured as 3000.
- the first peer node 102 in the first blockchain network is used to audit distributed identities and manage digital assets through smart contracts based on distributed identities.
- the first peer node 102 can receive the distributed identity registration request sent by the management client 106 such as SDK, and review the distributed identity according to the distributed identity registration request, for example, review whether the distributed identity is legal and unique. , when the review is passed, each peer node in the alliance, such as the first peer node 102 and the second peer node 104, can save the distributed identity. Further, the first peer node 102 connected to the management client 106 such as the SDK can also return a registration success notification to the management client 106.
- the management client 106 such as SDK
- the smart contract in the first peer node 102 may include a basic contract and a functional contract.
- the basic contract is the basic contract of digital assets, including but not limited to ERC-20, ERC-165, ERC-721, ERC-1155 and ERC-998.
- Functional contracts include ERC contract collections, such as ERC-20 collection, ERC-721 collection, ERC-1155 collection, and ERC-998 collection.
- ERC contract collection refers to the contract for batch processing of digital assets in the digital asset collection.
- functional contracts can also include contracts for query expansion, which can provide rich transaction, analysis, and query capabilities.
- the first peer node 102 can receive a digital asset processing request sent by the management client 106 such as the SDK.
- the digital asset processing request includes the distributed identity identifier DID, and then the first peer node 102 processes the target digital asset based on the DID.
- the first peer node 102 can perform one or more of the following operations on the target digital asset based on the DID: creation, authorization, query, transaction, or destruction. Then the first peer node 102 can instruct the second peer node 102 in the second blockchain network to synchronize the processing results of the target digital asset.
- the DID can be recognized by peer nodes in different blockchain networks, so that Realize cross-chain management of digital assets, or cross-business management of digital assets, so that digital assets can support more complex business scenarios, such as alliance chain business scenarios.
- the architecture of the digital asset management system 10 is introduced above. Next, the digital asset management method according to the embodiment of the present application is introduced.
- the method includes:
- the first peer node 102 receives the digital asset collection creation request sent by the management client 106.
- the management client 106 (such as SDK) is provided with a digital asset collection creation interface.
- the digital asset collection creation interface encapsulates the digital asset collection creation method.
- the digital assets may be NFTs, and the digital asset collection creation interface may be expressed as CreateNFTCollection(collectionindex string)(string, error).
- CreateNFTCollection(collectionindex string)(string, error) the content in the first bracket describes the input parameters
- the content in the second bracket describes the return value.
- the parameter collectionindex is used to characterize the collection identity.
- the type of parameter collectionindex is string. This parameter collectionindex is usually unique.
- collectionindex may be the collection name (noted name). Among them, collectionindex can start with a letter, and further, collectionindex can include numbers and/letters.
- the length of collectionindex can be set from 3 bits to 10 bits.
- the return value includes the on-chain transaction number and error object.
- the on-chain transaction number can be recorded as txid, and the on-chain transaction number can be represented by string.
- the error object can be recorded as error, and the error object can include the cause of the error, which can be represented by an error code. It should be noted that the error object can also be empty. When the error object is empty, it means that the digital asset collection is successfully created.
- the management client 106 may generate a digital asset set creation request according to the above-mentioned digital asset combination creation interface, and send the digital asset set creation request to the first peer node 102 .
- the first peer node 102 is connected to a management client 106.
- the first peer node 102 may be a peer node controlled by the organization to which the user belongs.
- the management client 106 sends a digital asset collection creation request, it can use a remote procedure call (Remote Procedure Call, RPC) to send the digital asset collection creation request, and then obtain a response (response) corresponding to the request.
- RPC Remote Procedure Call
- S404 The first peer node 102 creates a digital asset set according to the digital asset set creation request.
- the first peer node 102 can call the corresponding digital asset set creation method based on the parameters in the digital asset set creation request to create a digital asset set. For example, the first peer node 102 can call the following method createNFTCollection(collectionindex string)(string, error) according to the parameter collectionindex, thereby creating a corresponding digital asset collection.
- the collection identifier of the digital asset collection is the parameter value of the parameter collectionindex.
- the collection identifier may also include an abbreviation of the collection name.
- the abbreviation of the collection name can be represented by symbol.
- the management client 106 such as SDK can also provide a collection ID query interface and a collection ID modification interface.
- the collection identification query interface may include a collection name query interface and a collection name abbreviation query interface.
- the collection name query interface may be expressed as Name(collectionIndex string)(string, error).
- the collectionIndex in the first bracket is the input parameter
- string represents the parameter type of the parameter.
- the content in the second bracket is used to identify the return value, which includes the collection name and error object.
- the string in the second bracket represents the type of the returned collection name
- the error in the second bracket is the error object, which includes the cause of the error.
- the error object may also be empty. When the error object is empty, it indicates that the query is successful.
- the collection name abbreviation query interface can be expressed as Symbol(collectionIndex string)(string error). Similar to Name(collectionIndex string)(string, error), the content in the first bracket represents the input parameter and its type, and the content in the second bracket represents the return value.
- the return value includes the abbreviation symbol of the collection name and the error object error. Among them, string represents the data type of the returned symbol.
- the collection identifier modification interface can be expressed as SetOption(collectionIndex, name, symbol string)(string error).
- the content in the first bracket indicates the input parameters and their types
- collectionIndex is the collection ID before modification
- name or symbol indicates the modified collection ID.
- the content in the second bracket represents the return value, which includes the on-chain transaction number txid and the error object error.
- string represents the data type of the returned on-chain transaction number.
- S202 to S204 are optional steps in the embodiment of the present application.
- the above steps may not be performed when performing the digital asset management method in the embodiment of the present application.
- the first peer node 102 may directly create the digital asset without Create a collection of digital assets.
- the first peer node 102 receives the digital asset creation request sent by the management client 106.
- Management client 106 may provide a digital asset creation interface.
- the management client 106 can generate a digital asset creation request according to the digital asset creation interface, and then send the above-mentioned digital asset creation request to the first peer node 102 to create (cast) digital assets for the above-mentioned digital asset set.
- the digital asset creation interface can be expressed as Mint(collectionIndex, tokenId string, tokenURI*Metadata)(*NFT, string, error).
- the content in the first bracket represents the input parameter
- the content in the second bracket represents the return value.
- Input parameters include collectionIndex, tokenId and tokenURI, which respectively represent the collection identifier, digital asset identifier (such as digital asset number), and the Uniform Resource Identifier (URI) of the resource corresponding to the digital asset.
- the parameter types of collectionIndex and tokenID are string, and the tokenID of digital assets within the same digital asset collection is unique.
- tokenID can take a value from the following numerical range [0, 2 ⁇ 64].
- the tokenID of the first digital asset (such as NFT) in the digital asset collection can be 0.
- the parameter type of tokenURI can be metadata *metadata. *metadata can be obtained through the metadata generation method or customized based on the business.
- digital assets can correspond to different types of digital resources, including but not limited to images, audio, video or games.
- digital resources corresponding to the digital assets are used as images for illustration.
- the metadata generation method may include NewImageMetadata.
- the first peer node 102 provides a metadata generation interface such as NewImageMetadata(image[]byte, name, url, description string, category int)(*Metadata, error).
- image, name, and url are required parameters.
- image represents a picture, and its type is a byte array, recorded as []byte.
- name represents the name of the picture, and its type is string.
- url represents the image storage address, and its type is string.
- description represents description information, its type is string, category represents classification, its type is int, which can usually be customized by the user. For example, when category value is 1, it indicates that the image is a collection, and when category value is 2, it indicates that the image is a collection.
- Personal creation when category value is 1, it indicates that the image is a collection, and when category value is 2, it indicates that the image is a collection.
- the return value includes information about the successfully created digital asset, the on-chain transaction number txid and the error object. Among them, the on-chain transaction number and error object can be found in the relevant description above and will not be described again here. The information on digital assets is explained in detail below.
- Digital asset information includes digital asset number (such as tokenID) and owner identity (recorded as owner).
- owner identity can be specifically characterized by the distributed identity DID.
- Digital asset information may also include the identity of the authorized user, which may be a distributed identity.
- digital asset information can also include tokenURI.
- tokenURI can include name, description, category, type, hash, url and properties. For name, description, category, type, and url, please refer to the relevant description above and will not be repeated here.
- tokenURI can also include hash and properties. Hash is specifically the hash value of the digital resource corresponding to the digital asset.
- the data type of hash is string, and properties is an attribute dictionary. Taking the digital resource corresponding to the digital asset as an image as an example, the attribute dictionary can include attributes such as size, format, and label. attribute value.
- tokenURI may also include URI-type, where URI-type is used to describe the storage method of digital resources corresponding to digital assets such as NFT.
- the storage methods of digital resources can include on-chain storage and off-chain storage.
- on-chain storage refers to the storage of digital resources in the blockchain.
- digital resources can be stored in the same blockchain as digital assets. This storage method is also called same-chain storage.
- digital resources can also be stored in different areas from digital assets.
- this storage method is also called off-chain storage.
- Off-chain storage means that digital resources are not stored in the blockchain, for example, stored in a cloud environment.
- the storage address of the digital resources is stored in the blockchain, and the storage address is used to access the digital resources.
- the first peer node 102 creates the target digital asset according to the distributed identity in the digital asset creation request.
- the first peer node 102 can call the digital asset creation method according to the digital asset creation request, such as Mint(collectionIndex, tokenId string, tokenURI*Metadata)(*NFT, string, error), to create the target digital asset.
- the owner of the target digital asset is the user identified by the distributed identity in the digital asset creation request.
- the first peer node 102 can create a target digital asset for the digital asset set.
- the target digital asset can also be numbered based on the existing digital assets in the digital asset collection.
- the management client 106 can provide a user-owned digital asset query interface. The management client 106 can use this interface to generate a query request for digital assets owned by the user, and send the request to the first peer node 102.
- the first peer node 102 can call the corresponding method according to the request to query the digital assets owned by the user.
- the user's digital asset query interface can be expressed as Account(collectionIndex, identity string)([]string, error).
- collectionIndex is the collection identifier
- identity is the user identity, such as distributed identity DID. []string is used to represent the returned list of digital asset identifiers owned by the user.
- error represents an error object.
- the first peer node 102 can query and obtain that the digital asset set includes N digital assets, and the tokenIDs of these N digital assets are respectively 0 to N-1, then the first peer node 102 can number the target digital asset as N, that is, the tokenID of the target digital asset can be N.
- the target digital assets created by the first peer node 102 may be one or more. That is, the first peer node 102 can create a digital asset individually or create digital assets in batches. Taking the digital resource corresponding to the digital asset as a digital album as an example, the first peer node 102 can create 20,000 digital assets, such as 20,000 NFTs. Each NFT has a unique tokenID, and each NFT corresponds to the digital album.
- the first peer node 102 can also query whether the specified digital asset is created.
- the management client 106 can provide a digital asset creation query interface, which can be expressed as IsMinted(collectionIndex, tokenID string)(bool, error).
- the digital asset created by the first peer node 102 can be regarded as a transaction.
- the first peer node 102 can generate a block based on the transaction information such as the information of the target digital asset, and then add the block to the block maintained by the first peer node 102 In the chain copy, the transaction of the first peer node 102 creating the target digital asset is recorded in the blockchain copy of the first peer node 102.
- S410 The first peer node 102 receives the digital asset authorization request sent by the management client 106.
- the management client 106 provides a digital asset authorization interface.
- the digital asset authorization interface is used to authorize digital assets to other users so that other users can use the digital resources corresponding to the digital assets. For example, when the digital resource corresponding to the digital asset is a digital album, the owner of the digital album can authorize the digital album to other users, and other users can play the digital album.
- the digital asset authorization interface can be expressed as Approve(collectionIndex, operator, tokenID string)(string, error).
- the digital asset authorization interface can specify the authorized user of the target digital asset, and the authorized user has the right to transfer the digital asset. Among them, each digital asset corresponds to an authorized user.
- the input parameters and return values of the digital asset authorization interface are introduced below.
- the input parameters of the digital asset authorization interface include collectionIndex, operator and tokenID.
- collectionIndex and tokenID can be found in the relevant descriptions above.
- the operator represents the identity of the authorized user, such as the distributed identity of the authorized user DID.
- the parameter type of the operator can be string.
- the return value of the digital asset authorization interface includes the on-chain transaction number txid and the error object error.
- the data type of the on-chain transaction number txid is string, and error includes the error reason.
- the data type of error can be string or int.
- S412 The first peer node 102 authorizes the target digital asset based on the distributed identity in the digital asset authorization request.
- the digital asset authorization request may include the distributed identity of the owner of the target digital asset and the distributed identity of the authorized user.
- the first peer node 102 may determine the set of digital assets owned by the owner based on the owner's distributed identity. , determine the target digital asset based on the tokenID in the digital asset authorization request, and then call the digital asset authorization method to authorize the target digital asset to the user identified by the operator, that is, the authorized user. In this way, the operator can have the right to transfer digital assets.
- the above-mentioned S406 to S412 are some specific implementation methods for the first peer node 102 to receive the digital asset processing request sent by the management client 106 and process the target digital asset according to the distributed identity in the digital asset processing request.
- the first peer node 102 can also query the number of digital assets owned by the user, query the owner of the target digital asset, query the description information of the target digital asset, query the authorized user of the target digital asset, Trading target digital assets (such as transferring or circulating target digital assets, changing the ownership of target digital assets) or setting up user-level authorized users, querying user-level authorized users, destroying digital assets, etc.
- user-level authorized users refer to authorized users who have operating permissions for all digital assets owned by the user under a specified digital asset collection, and are not limited to a specific digital asset.
- the management client 106 can provide a digital asset quantity query interface, a digital asset owner query interface, a digital asset information query interface, a digital asset authorized user query interface, a digital asset transaction interface (for transferring digital assets), and user-level authorization. interface, user-level authorized user query interface, and digital asset destruction interface.
- the functional contract ERC-721 based on distributed identity defines the above interface. The following is an example of the above interface in conjunction with Table 1.
- each user has rich account management capabilities.
- the owner of the digital asset with digital asset number token1 is the user whose identity is DID A, and its ownership can be owned by the holder of the private key corresponding to DID A.
- the ownership of the digital asset can also be transferred to the user whose identity is DIDB. This enables chain management or networked multi-level management of digital asset owners.
- S414 The first peer node 102 instructs the second peer node 104 in the second blockchain network to synchronize the processing results of the target digital asset.
- the first peer node 102 can broadcast the block generated by the node to the second blockchain network, so that the second peer node 104 (other peer nodes participating in accounting) in the second blockchain network can
- the above blocks are added to the maintained copy of the blockchain to synchronize the processing results of the target digital assets and ensure the consistency of data recorded by different peer nodes.
- the digital asset management method of the embodiment of the present application can be integrated with business applications, for example, it can be integrated with standardized business applications that support distributed identity (including but not limited to trusted data exchange and certificate storage). , effectively solves the limitations of the use of digital assets and poor scalability in blockchain networks, allowing digital assets to support more business scenarios and promote large-scale commercial use of blockchain.
- distributed identity including but not limited to trusted data exchange and certificate storage
- the first peer node 102 can receive the service request of the application, and the first peer node 102 can use the processing result of the target digital asset to execute the service request of the application.
- the business application can be an e-commerce application
- the business request can be a product delivery request.
- the first peer node 102 can mark the status of the product as pending shipment, so that the subsequent logistics system can respond to this status. Sort merchandise and ship.
- distributed identities can be associated with accounts of the same user in different applications.
- the first peer node 102 processes the target digital asset based on the distributed identity, it can trade the target digital asset in the account of the different application based on the distributed identity.
- embodiments of this application provide a digital asset management method.
- this method can realize cross-chain or cross-business management of digital assets, solving the limitations and poor scalability of digital assets such as NFT in the blockchain network. This enables digital assets to support more business scenarios, expands the scope of use of blockchain networks, and improves usability.
- each blockchain network in the alliance can correspond to different organizations or different businesses.
- record companies or individual users can trigger the creation of digital asset collections through the asset collection creation interface provided by the SDK.
- the SDK In response to the operation of creating a digital asset collection, the SDK generates a digital asset collection creation request and sends the digital asset collection creation request to the first peer node 102 .
- the digital asset collection creation request includes the distributed identity DID.
- the first peer node 102 can create a digital asset set for the record company or the above-mentioned individual user according to the digital asset set creation request. This digital asset collection corresponds to DID.
- record companies or individual users can trigger digital asset creation operations through the digital asset creation interface provided by the SDK.
- the first peer node 102 responds to the digital asset creation operation and creates 100,000 NFTs.
- Each NFT has a unique number (the number length is usually 64 bits, so the number can be taken in the interval [0, 2 ⁇ 64-1] value), and each NFT corresponds to the above-mentioned digital album.
- the digital album is stored in the cloud environment using cloud storage.
- This cloud environment can use object storage (OBS).
- OBS object storage
- the first peer node 102 When the first peer node 102 creates an NFT, it can also generate the metadata *Metadata of the NFT.
- metadata includes name, description, classification, hash, url and attribute dictionary properties. The details are as follows:
- the first peer node 102 can also authorize the created NFT to other users, so that other users can use the digital album corresponding to the NFT.
- the first peer node 102 can receive the digital asset authorization request sent by the SDK, and then respond to the digital asset authorization request by authorizing the NFT with tokenID 0 to the specified user (the user specified by the distributed identity in the digital asset authorization request) .
- the first peer node 102 can generate a block based on the information of the above-mentioned transaction (create NFT, authorize NFT), and then add the block to the blockchain copy.
- the on-chain transaction number txid is recorded in the blockchain copy to facilitate subsequent search for relevant transaction information based on the on-chain transaction number.
- the first peer node 102 instructs the second peer node 104 in the second blockchain network to synchronize the processing results of the above-mentioned NFT, specifically to add the block to the copy of the blockchain they maintain, thereby ensuring that each blockchain Copy consistency.
- the embodiment of the present application also provides a digital asset management device.
- the digital asset management device may be a software device, and the software device may be deployed in the first peer node 102.
- the first peer node 102 runs the program code corresponding to the software device, thereby executing the digital asset management method according to the embodiment of the present application.
- the digital asset management device may also be a hardware device, and when the hardware device is running, it can execute the digital asset management method according to the embodiment of the present application.
- the digital asset management device provided by the embodiment of the present application will be introduced below with reference to the accompanying drawings.
- the device 500 includes:
- Communication module 502 configured to receive a digital asset processing request sent by the management client, where the digital asset processing request includes a distributed identity
- Asset processing module 504 used to process target digital assets according to the distributed identity
- the synchronization management module 506 is used to instruct the second peer node in the second blockchain network to synchronize the processing results of the target digital assets.
- the asset processing module 504 is specifically used to:
- the distributed identity perform one or more of the following operations on the target digital asset: creation, authorization, query, transaction or destruction.
- the management client is provided with an asset processing interface, and the digital asset processing request is generated by the management client according to the asset processing interface.
- the target digital asset corresponds to a digital resource
- the digital resource is stored in any of the following ways:
- the storage address of the digital resource is stored in the blockchain, and the storage address is used to access the digital resource.
- the asset processing module 504 is also used to:
- the asset processing module 504 is specifically used to:
- multiple target digital assets in the digital asset set are processed in batches.
- the communication module 502 is also used to:
- the device 500 also includes:
- An execution module configured to use the processing result of the target digital asset to execute the service request of the application.
- the distributed identity is associated with accounts of the same user in different applications
- the asset processing module 504 is specifically used to:
- the target digital assets are traded in the accounts of the different applications.
- the digital asset management device 500 may correspond to performing the method described in the embodiment of the present application, and the above and other operations and/or functions of the various modules/units of the digital asset management device 500 are respectively to implement the figures.
- the corresponding processes of each method in the embodiment shown in 4 are not repeated here for the sake of brevity.
- the first peer node 102 may be a computing device.
- the computing device may come from a cloud environment or an edge environment, for example, the computing device may be a cloud server or an edge server.
- the computing device may also be a terminal device, including but not limited to a desktop computer, a laptop computer, or a smart phone.
- the first peer node 102 is specifically used to implement the functions of the digital asset management device 500 in the embodiment shown in FIG. 5 .
- Figure 6 provides a schematic structural diagram of the first peer node 102.
- the first peer node 102 includes a bus 601, a processor 602, a communication interface 603 and a memory 604.
- the processor 602, the memory 604 and the communication interface 603 communicate through the bus 601.
- the bus 601 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
- PCI peripheral component interconnect
- EISA extended industry standard architecture
- the bus can be divided into address bus, data bus, control bus, etc. For ease of presentation, only one thick line is used in Figure 6, but it does not mean that there is only one bus or one type of bus.
- the processor 602 can be a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP) or a digital signal processor (DSP). any one or more of them.
- CPU central processing unit
- GPU graphics processing unit
- MP microprocessor
- DSP digital signal processor
- the communication interface 603 is used for communicating with the outside.
- the communication interface 603 is used to receive the digital asset processing request sent by the management client 106 and broadcast the block to the second peer node 104 so that the second peer node 104 can synchronize the processing results of the target digital asset.
- Memory 604 may include volatile memory, such as random access memory (RAM). Memory 604 may also include non-volatile memory (non-volatile memory), such as read-only memory (ROM), flash memory, hard disk drive (HDD) or solid state drive (solid state drive) ,SSD).
- RAM random access memory
- ROM read-only memory
- HDD hard disk drive
- SSD solid state drive
- Computer-readable instructions are stored in the memory 604, and the processor 602 executes the computer-readable instructions, so that the first peer node 102 executes the aforementioned digital asset management method (or implements the functions of the aforementioned digital asset management device 500).
- each module of the digital asset management device 500 described in Figure 5 is:
- the software or program code required to perform the functions of each module in FIG. 5 may be stored in at least one memory 604 in the first peer node 102 .
- At least one processor 602 executes the program code stored in the memory 604, so that the first peer node 102 executes the aforementioned digital asset management method.
- the embodiment of the present application also provides a digital asset management system 10 as shown in Figure 1 .
- the system 10 includes a first peer node 102 and a second peer node 104.
- the structure of the second peer node 104 is similar to that of the first peer node 102. Please refer to the relevant content description in Figure 6 and will not be described again here.
- the system 10 may also include a management client 106 .
- the management client 106 is used to generate a digital asset processing request and send the digital asset processing request to the first peer node 102.
- the first peer node is used to process the target digital asset according to the DID in the digital asset processing request and indicate the second block.
- the second peer node 104 in the chain network synchronizes the processing results of the target digital assets.
- An embodiment of the present application also provides a computer-readable storage medium.
- the computer-readable storage medium may be any available medium that a computing device can store or a data storage device such as a data center that contains one or more available media.
- the available media may be magnetic media (eg, floppy disk, hard disk, tape), optical media (eg, DVD), or semiconductor media (eg, solid state drive), etc.
- the computer-readable storage medium includes instructions that instruct the first peer node 102 to execute the above-mentioned management method of digital assets.
- An embodiment of the present application also provides a computer program product.
- the computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computing device, the processes or functions described in accordance with the embodiments of the present application are generated in whole or in part.
- the computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transmitted from a website, computing device, or data center to Transmission to another website site, computing device or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means.
- the computer program product may be a software installation package. If it is necessary to use any of the aforementioned digital asset management methods, the computer program product may be downloaded and executed on the first peer node 102 .
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种数字资产的管理方法,包括:第一区块链网络中的第一对等节点接收管理客户端发送的数字资产处理请求,数字资产处理请求包括分布式身份标识,第一对等节点根据该分布式身份标识,处理目标数字资产,然后第一对等节点指示第二区块链网络中的第二对等节点同步对目标数字资产的处理结果。该方法通过引入分布式身份标识,并基于分布式身份标识对数字资产进行管理,可以实现对数字资产的跨链或跨业务管理,解决了区块链网络中数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,扩大区块链网络的使用范围,提高了可用性。
Description
本申请要求于2022年05月10日提交中国国家知识产权局、申请号为202210504338.5、发明名称为“一种数字资产的管理方法及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及区块链技术领域,尤其涉及一种数字资产的管理方法、装置、第一对等节点、数字资产的管理系统、计算机可读存储介质、计算机程序产品。
区块链(block chain)技术是利用块链式数据结构来验证和存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全性、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
其中,区块链中还定义有数字资产。该数字资产可以是非同质化代币(Non-fungible token,NFT)。其中,非同质化是指记录在区块链上的代币具有独特性、唯一性和不可分割性。该数字资产可以对应不同类型的资源,例如是不同类型的富媒体资源,包括但不限于图片、视频、音频。
目前,区块链中的数字资产通常是基于地址进行管理。其中,地址是与公钥一一对应的一个字符串序列,地址可以通过对公钥进行编码处理得到。数字资产可以由一个地址转移到另一个地址。
然而,地址包括的信息较少,导致区块链中的数字资产使用比较受限,扩展性较差,难以支撑复杂业务。
发明内容
本申请提供了一种数字资产的管理方法,该方法通过引入分布式身份标识,并基于分布式身份标识对数字资产进行管理,可以实现对数字资产的跨链或跨业务管理,解决了区块链网络中数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,扩大区块链网络的使用范围,提高了可用性。本申请还提供了一种数字资产的管理装置、第一对等节点、数字资产的管理系统、计算机可读存储介质、计算机程序产品。
第一方面,本申请提供了一种数字资产的管理方法。该方法可以应用于包括多个区块链网络的联盟。为了便于描述,本申请实施例将多个区块链网络中的不同区块链网络分别记作第一区块链网络和第二区块链网络。
具体地,第一区块链网络中的第一对等节点接收管理客户端发送的数字资产处理请求,该数字资产处理请求包括分布式身份标识,然后第一对等节点根据所述分布式身份标识,处理目标数字资产,接着第一对等节点指示第二区块链网络中的第二对等节点同步对所述目标数字资产的处理结果。
该方法通过引入分布式身份标识,并基于分布式身份标识对数字资产进行管理,可以 实现对数字资产的跨链或跨业务管理,解决了区块链网络中数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,扩大区块链网络的使用范围,提高了可用性。
在一些可能的实现方式中,第一对等节点在基于分布式身份标识,处理目标数字资产时,可以是根据所述分布式身份标识,对目标数字资产进行如下一种或多种操作:创建、授权、查询、交易或销毁。如此可以扩展区块链中的数字资产使用场景,能够支撑复杂业务。
在一些可能的实现方式中,所述管理客户端提供有资产处理接口,该资产处理接口可以是应用程序编程接口形式。该资产处理接口可以包括数字资产创建接口、数字资产授权接口、数字资产查询接口、数字资产交易接口或数字资产销毁接口。
管理客户端可以根据所述资产处理接口生成所述数字资产处理请求。如此,第一对等节点可以根据数字资产处理请求中的分布式身份标识,处理目标数字资产,从而实现支撑复杂业务。
在一些可能的实现方式中,所述目标数字资产对应数字资源,所述数字资源采用如下方式中的任意一种方式存储:与所述目标数字资产存储在同一区块链(也称作同链存储);与所述目标数字资产存储在不同区块链(也称作异链存储);在区块链中存储所述数字资源的存储地址,所述存储地址用于访问所述数字资源(也称作链下存储)。
该方法通过支持多种存储数字资源的方式,充分利用各种存储资源,从而满足不同业务的需求。
在一些可能的实现方式中,第一对等节点还可以创建数字资产集合,例如可以在创建目标数字资产之前创建数字资产集合,该目标数字资产归属于所述数字资产集合。相应地,第一对等节点在进行数字资产管理时,可以根据所述分布式标识,批量处理所述数字资产集合中的多个目标数字资产。如此简化了数字资产的管理操作,提高了数字资产的管理效率。
在一些可能的实现方式中,第一对等节点还可以将数字资产管理与其他业务对接。例如,第一对等节点可以将数字资产管理与电商业务对接。具体地,第一对等节点可以接收应用的业务请求,其中,应用可以是支持分布式身份标识的标准化应用,然后第一对等节点可以使用所述目标数字资产的处理结果执行所述应用的业务请求。
在该方法中,第一对等节点通过将数字资产管理与业务对接,从而有效解决区块链中数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景。
在一些可能的实现方式中,分布式身份标识可以关联同一用户在不同应用的账户。第一对等节点可以根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。如此可以实现跨应用平台管理或交易数字资产。
第二方面,本申请提供了一种数字资产的管理装置。所述装置包括:
通信模块,用于接收管理客户端发送的数字资产处理请求,所述数字资产处理请求包括分布式身份标识;
资产处理模块,用于根据所述分布式身份标识,处理目标数字资产;
同步管理模块,用于指示第二区块链网络中的第二对等节点同步对所述目标数字资产 的处理结果。
在一些可能的实现方式中,所述资产处理模块具体用于:
根据所述分布式身份标识,对目标数字资产进行如下一种或多种操作:创建、授权、查询、交易或销毁。
在一些可能的实现方式中,所述管理客户端提供有资产处理接口,所述数字资产处理请求由所述管理客户端根据所述资产处理接口生成。
在一些可能的实现方式中,所述目标数字资产对应数字资源,所述数字资源采用如下方式中的任意一种方式存储:
与所述目标数字资产存储在同一区块链;或者,
与所述目标数字资产存储在不同区块链;或者,
在区块链中存储所述数字资源的存储地址,所述存储地址用于访问所述数字资源。
在一些可能的实现方式中,所述资产处理模块还用于:
创建数字资产集合,所述目标数字资产归属于所述数字资产集合;
所述资产处理模块具体用于:
根据所述分布式标识,批量处理所述数字资产集合中的多个目标数字资产。
在一些可能的实现方式中,所述通信模块还用于:
接收应用的业务请求;
所述装置还包括:
执行模块,用于使用所述目标数字资产的处理结果执行所述应用的业务请求。
在一些可能的实现方式中,所述分布式身份标识关联同一用户在不同应用的账户;
所述资产处理模块具体用于:
根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。
第三方面,本申请提供了一种第一对等节点。所述第一对等节点属于第一区块链网络,所述第一对等节点包括处理器和存储器,所述至少一个处理器、所述至少一个存储器进行相互的通信。所述存储器中存储有计算机可读指令;所述处理器执行所述计算机可读指令,以使得所述第一对等节点执行如本申请第一方面或第一方面的任一种实现方式中所述的数字资产的管理方法。
第四方法,本申请提供了一种数字资产的管理系统。所述系统包括第一区块链网络中的第一对等节点和第二区块链网络中的第二对等节点,所述第一对等节点用于执行如本申请第一方面所述的方法,以实现数字资产的管理。
第五方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令指示第一对等节点执行上述第一方面或第一方面的任一种实现方式所述的数字资产的管理方法。
第六方面,本申请提供了一种包含指令的计算机程序产品,当其在第一对等节点上运行时,使得第一对等节点执行上述第一方面或第一方面的任一种实现方式所述的数字资产的管理方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
为了更清楚地说明本申请实施例的技术方法,下面将对实施例中所需使用的附图作以简单地介绍。
图1为本申请实施例提供的一种数字资产的管理系统的系统架构图;
图2为本申请实施例提供的一种配置文件的示意图;
图3为本申请实施例提供的一种分布式身份文档的示意图;
图4为本申请实施例提供的一种数字资产的管理方法的流程图;
图5为本申请实施例提供的一种数字资产的管理装置的结构示意图;
图6为本申请实施例提供的一种第一peer节点的硬件结构图。
本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
首先对本申请实施例中所涉及到的一些技术术语进行介绍。
区块链网络是一种由多个节点形成的去中心化网络。区块链网络中的节点通过点对点连接,形成点对点(Peer-to-Peer,P2P)网络。在该点对点网络中,节点不存在中央化的服务和层级结构,各节点是对等的,因此该网络中的节点也称作对等节点,即peer节点。
区块链网络用于为应用程序提供账本及智能合约(smart contract)服务。其中,智能合约中定义有交易逻辑。智能合约被用来生成交易,这些交易会被分发至区块链网络中的每个peer节点,每个peer节点在各自的账本副本上记录这些交易,并且账本副本不可篡改。智能合约也可以称作链码(chaincode),链码是一段可以访问账本的代码,peer节点可以通过链码访问各自的账本副本。此外,交易通常可以以区块的形式记录,不同交易可以记录在不同区块中,不同区块可以连接形成区块链,因此,账本副本可以是区块链。
数字资产是(digital assets)是指企业或个人拥有或控制的,以电子数据形式存在的,在日常活动中持有以备出售或处于生产过程中的非货币性资产。数字资产可以依附于区块链网络在不同用户之间进行交易。数字资产可以包括同质化代币(fungible token,FT)和非同质化代币(non-fungible token,NFT)。非同质化是指记录在区块链上的代币具有独特性、唯一性和不可分割性。为了便于描述,下文以NFT进行示例说明。
NFT可以是一种区块链(账本)上的数据单位。每个NFT可以代表一个独特的数字资料,作为虚拟商品所有权的电子认证或证书。由于其不能互换的特行,NFT可以代表数字资产,如图片、声音、视频、游戏中的项目或其他形式的创意作品。虽然作品本身是可以无限复制的,但这些代表作品的NFT(通常可以通过编号如token ID进行标识)在其底层区块链上能被完整追踪,故能为买家提供所有权证明。
目前,区块链中的NFT等数字资产通常是基于地址进行管理。其中,地址是与公钥一一对应的一个字符串序列,地址可以通过对公钥进行编码处理得到。例如,地址可以是采用256位安全散列算法(Secure Hash Algorithm 256,SHA256)或者58位基础算法(Base 58) 对公钥进行编码处理得到。基于地址对数字资产进行管理可以是将数字资产由一个地址转移到另一个地址。
然而,地址包括的信息较少,导致区块链网络中的数字资产使用比较受限,扩展性较差,难以支撑复杂业务。有鉴于此,本申请实施例提供了一种数字资产的管理方法。该方法可以应用于联盟链网络,联盟链网络包括多个区块链网络,为了便于描述,本申请实施例将多个区块链网络中的不同区块链网络分别记作第一区块链网络和第二区块链网络。第一区块链网络中的peer节点称作第一peer节点,第二区块链网络中的peer节点也称作第二peer节点。
具体地,第一peer节点可以接收管理客户端发送的数字资产处理请求,该数字资产处理请求包括分布式身份标识(Decentralized Identifiers,DID),该DID具有全局唯一性,能够被不同业务识别,第一peer节点根据该分布式身份标识处理目标数字资产,并指示第二区块链网络中的第二peer节点对目标数字资产的处理结果进行同步。
该方法通过引入DID,并基于DID对数字资产进行管理,可以实现对数字资产的跨链或跨业务管理,解决了区块链网络中NFT等数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,扩大区块链网络的使用范围,提高了可用性。
本申请实施例的数字资产的管理方法可以由数字资产的管理系统执行。为了便于理解,下面先对本申请实施例提供的数字资产的管理系统进行介绍。
参见图1所示的数字资产的管理系统的系统架构图,该系统10包括第一peer节点102和第二peer节点104。其中,第一peer节点102属于第一区块链网络,第二peer节点104属于第二区块链网络。第一区块链网络和第二区块链网络属于同一联盟。第一peer节点102、第二peer节点104可以是维护区块链副本的计算设备,该计算设备可以是服务器,或者是终端。终端包括但不限于台式机、笔记本电脑、平板电脑或者智能手机等轻量级设备。
进一步的,该系统10还可以包括管理客户端106。管理客户端106可以是提供数字资产管理功能的计算机程序。在一些实施例中,管理客户端106可以是软件开发套件(software development kit,SDK)。SDK通常可以部署在终端等设备中。
如图1所示,SDK等管理客户端106可以提供身份管理和数字资产管理功能,并提供与上述功能对应的配套组件。其中,与上述功能对应的配套组件可以包括密钥证书管理组件、加密通信组件、配置文件解析组件。下面对SDK功能及组件进行介绍。
身份管理可以是分布式身份标识的管理,即DID管理。DID管理一般可以包括DID注册、识别等。数字资产管理具体是基于相关标准实现区块链网络上的数字资产管理。相关标准可以为以太坊意见征求(Ethereum Request for Comments,ERC)中的若干标准,包括但不限于ERC-721、ERC-1155或者ERC-165。
数字资产管理可以是对区块链网络中NFT等数字资产的管理。例如数字资产管理可以包括对NFT等数字资产的签发(签名并发布)、委托、交易。其中,SDK可以提供资产处理接口,该资产处理接口通常可以为应用程序编程接口(application programming interface,API)形式。资产处理接口包括但不限于数字资产创建接口、数字资产交易接口(也可以称作数字资产流转接口、数字资产转移接口)、数字资产查询接口、数字资产授权接口、数字 资产销毁接口。
进一步地,数字资产可以归属于某一数字资产集合(collection),资产处理接口还可以包括资产集合创建接口。该资产集合创建接口用于创建数字资产集合。数字资产集合中包括N个数字资产,例如包括N个NFT,其中,N可以为自然数。相应地,数字资产管理可以是对数字资产集合中的数字资产进行批量管理,包括但不限于对数字资产集合中数字资产的批量创建、批量交易、批量查询、批量授权或批量销毁。
数字资产可以对应数字资源,例如数字资产可以与数字资源挂钩。该数字资源可以包括不同类型,例如数字资源的类型可以包括图片、音频、视频或游戏。在一些实施例中,数字资产可以为虎年纪念品NFT,该虎年纪念品NFT归属于一个数字资产集合,该数字资产集合包括10000个虎年纪念品NFT,每个虎年纪念品NFT对应一张老虎图像,并且每个虎年纪念品NFT对应的老虎图像的编号不同。例如,10000个虎年纪念品NFT对应的老虎图像可以由0编号至9999,相应地,老虎图像可以记作Tiger0至Tiger9999。
密钥证书管理组件用于生成用户密钥或签发用户证书。该用户密钥可以是访问密钥。该访问密钥可以包括访问密钥标识(access key ID,AK)和私有访问密钥(secret access key,SK),基于此,访问密钥可以记作AK/SK。其中,访问密钥标识是与私有访问密钥关联的唯一标识符,访问密钥标识通常和私有访问密钥结合使用,对请求(如数字资产处理请求)进行加密签名,如此一方面可以标识发送方,另一方面可以方便接收方检测请求是否被篡改。具体地,用户可以在配置文件中配置数字证书认证机构(Certificate Authority,CA)的私钥,密钥证书管理组件即可根据该私钥,生成用户密钥以及对应的用户证书。
加密通信组件用于提供传输层安全性协定(Transport Layer Security,TLS)证书和/或密钥。其中,TLS是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。具体地,加密通信的两个端点如SDK和第一peer节点102支持TLS,其中一个端点(例如是SDK)可以向对端(例如为第一peer节点102)发送TLS证书,对端验证该TLS证书有效后,两个端点可以基于TLS密钥(如TLS证书中的公钥)协商生成对称密钥,将该对称密钥作为会话密钥,用于会话加密,从而保障通信安全以及数据完整性。
配置文件解析组件用于解析SDK的配置文件。其中,SDK的配置文件可以通过SDK的管理界面下载获取。图2示出了一种配置文件的示意图,如图2所示,配置文件中包括多个配置项,例如客户端配置项、身份配置项、服务配置项、数字证书认证机构配置项、区块链配置项、节点配置项,每个配置项包括若干配置参数。为了便于理解,上述配置文件中还包括注释,如图中以“#”开头的注释语句。下面对各个配置项进行介绍。
客户端配置项可以包括客户端类型、TLS信息、默认用户身份信息。在该示例中,客户端类型(client type)可以为ecdsa_with_sha256,TLS信息用于认证时使用。在该示例中,TLS信息可以包括TLS密钥路径、TLS证书路径和数字证书认证机构路径。默认用户身份信息可以包括SDK启动时默认用户的密钥路径和证书路径。
身份配置项可以包括该SDK上各用户的身份信息,如用户1的类型、用户1的密钥路径、用户1的证书路径和用户2的类型、用户2的密钥路径、用户2的证书路径。需要说明的是,配置文件中的路径通常为绝对路径。绝对路径是指目录下的绝对位置,通常是从盘符开始的路径。
当用户注册分布式身份(根据密钥如公私钥对生成的一种身份信息)时,身份配置项可以包括分布式身份。一个分布式身份可以对应一个或多个公私钥对。分布式身份可以通过键值形式存储。其中,分布式身份标识DID可以为键,分布式身份文档(DID document)可以为值。分布式身份文档可以是数据交换格式文档,如JS对象简谱(JavaScript Object Notation,JSON)文档。
图3示出了一种分布式身份文档的示意图,该分布式身份文档中记录有分布式身份标识、加密材料的集合(如公钥的集合)、加密协议的集合、服务端点的集合、时间戳、签名。需要说明的是,上述内容为可选项,分布式身份文档中也可以不记录上述可选项。
服务配置项包括服务的地址,具体是SDK访问的数字资产的管理服务的地址。服务的地址可以包括提供该服务的计算设备如服务器的网际协议(Internet Protocol,IP)地址,进一步地,服务的地址还可以包括端口号。该地址可以通过统一资源定位符(Uniform Resource Locator,URL)表示。在图2的示例中,服务的地址可以为https://128.46.154.237:30001。
数字证书认证机构配置项可以包括CA类型、CA的密钥路径和CA的证书路径。在该示例中,CA类型可以为ecdsa_with_sha256,CA的密钥路径可以为D:\GoProjects\TDCSample\conf\orgcerts\organization\ca.key,CA的证书路径可以为D:\GoProjects\TDCSample\conf\orgcerts\organization\ca.crt。
区块链配置项可以包括链标识(chain ID)和合约名称(contract name)。在该示例中,chain ID可以为xxx-dont-delete,合约名称可以为trusted digital chain。其中,xxx表示用户名。
节点配置项可以包括组织中节点的属性,如组织中node-0的节点访问域名hostOverride和主机地址、端口号。在图2的示例中,hostOverride可以配置为node-0.organization.default.svc.cluster.local。主机地址可以配置为缺省地址0.0.0.0。端口号可以配置为3000。
第一区块链网络中的第一peer节点102用于对分布式身份标识进行审核以及基于分布式身份标识,通过智能合约对数字资产进行管理。
其中,第一peer节点102可以接收管理客户端106如SDK发送的分布式身份注册请求,根据分布式身份注册请求对分布式身份标识进行审核,例如审核分布式身份标识是否合法,是否具有唯一性,当审核通过后,联盟中的各peer节点如第一peer节点102、第二peer节点104可以保存该分布式身份标识。进一步地,与管理客户端106如SDK连接的第一peer节点102还可以向该管理客户端106返回注册成功通知。
第一peer节点102中的智能合约可以包括基础合约和功能合约。其中,基础合约为数字资产的基础合约,包括但不限于ERC-20、ERC-165、ERC-721、ERC-1155和ERC-998。功能合约包括ERC合约集合,如ERC-20 collection、ERC-721 collection、ERC-1155 collection、ERC-998 collection。ERC合约集合是指对数字资产集合中的数字资产进行批量处理的合约。此外,功能合约还可以包括用于查询扩展的合约,该合约能够提供丰富的交易、分析、查询能力。
具体实现时,第一peer节点102可以接收管理客户端106如SDK发送的数字资产处理请求,该数字资产处理请求包括分布式身份标识DID,然后第一peer节点102根据该 DID,处理目标数字资产,例如第一peer节点102可以根据该DID,对目标数字资产进行如下操作中的一种或多种:创建、授权、查询、交易或销毁。接着第一peer节点102可以指示第二区块链网络中的第二peer节点102同步目标数字资产的处理结果。
在该架构中,即使第一peer节点102和第二peer节点104归属于不同的区块链网络,或者应用于不同的业务场景,DID也能够被不同区块链网络中的peer节点识别,从而实现跨链管理数字资产,或者跨业务管理数字资产,使得数字资产可支撑更多复杂业务场景,例如联盟链业务场景。
上文对数字资产的管理系统10的架构进行了介绍,接下来对本申请实施例的数字资产的管理方法进行介绍。
参见图4所示的数字资产的管理方法的流程图,该方法包括:
S402:第一peer节点102接收管理客户端106发送的数字资产集合创建请求。
具体地,管理客户端106(如SDK)提供有数字资产集合创建接口。该数字资产集合创建接口封装有数字资产集合创建方法。在一些实施例中,数字资产可以为NFT,该数字资产集合创建接口可以表示为CreateNFTCollection(collectionindex string)(string,error)。其中,第一个括号中的内容描述输入参数,第二个括号中的内容描述返回值。
参数collectionindex用于表征集合标识。参数collectionindex的类型为string。该参数collectionindex通常具有唯一性。在一些实施例中,collectionindex可以是集合名称(记作name)。其中,collectionindex可以以字母开头,进一步地,collectionindex可以包括数字和/字母。collectionindex的长度可以设置为3比特到10比特。
返回值包括上链交易编号和错误对象。其中,上链交易编号可以记作txid,该上链交易编号可以通过string表示。错误对象可以记作error,错误对象可以包括错误原因,该错误原因可以通过错误代码表示。需要说明的是,错误对象也可以为空,当错误对象为空时,表征该数字资产集合创建成功。
管理客户端106可以根据上述数字资产结合创建接口生成数字资产集合创建请求,并向第一peer节点102发送该数字资产集合创建请求。如图1所示,第一peer节点102连接有管理客户端106。该第一peer节点102可以是用户所属组织控制的peer节点。其中,管理客户端106在发送数字资产集合创建请求时,可以采用远程过程调用(Remote Procedure Call,RPC)方式发送数字资产集合创建请求,进而获得该请求对应的响应(response)。
S404:第一peer节点102根据所述数字资产集合创建请求,创建数字资产集合。
第一peer节点102可以基于数字资产集合创建请求中的参数,调用相应的数字资产集合创建方法,创建数字资产集合。例如,第一peer节点102可以根据参数collectionindex,调用如下方法createNFTCollection(collectionindex string)(string,error),从而创建相应的数字资产集合,该数字资产集合的集合标识为参数collectionindex的参数值。
在一些可能的实现方式中,集合标识还可以包括集合名称的缩写。集合名称的缩写可以采用symbol表征。管理客户端106如SDK还可以提供集合标识查询接口、集合标识修改接口。其中,集合标识查询接口可以包括集合名称查询接口、集合名称缩写查询接口。
在一些实施例中,集合名称查询接口可以表示为Name(collectionIndex string)(string, error)。其中,第一个括号中的collectionIndex为输入参数,string表示该参数的参数类型。第二个括号中的内容用于标识返回值,返回值包括集合名称和错误对象。第二个括号中的string表示返回的集合名称的类型,第二个括号中的error为错误对象,该错误对象包括错误原因。在一些实施例中,错误对象也可以为空,当错误对象为空时表示查询成功。
集合名称缩写查询接口可以表示为Symbol(collectionIndex string)(string error)。与Name(collectionIndex string)(string,error)类似,第一个括号中内容表示输入参数及其类型,第二个括号中内容表示返回值,返回值包括集合名称的缩写symbol和错误对象error。其中,string表示返回的symbol的数据类型。
集合标识修改接口可以表示为SetOption(collectionIndex,name,symbol string)(string error)。其中,第一个括号中内容表示输入参数及其类型,collectionIndex为修改前的集合标识,name或symbol表示修改后的集合标识。第二个括号中内容表示返回值,返回值包括上链交易编号txid和错误对象error。其中,string表示返回的上链交易编号的数据类型。
需要说明的是,上述S202至S204为本申请实施例的可选步骤,执行本申请实施例的数字资产的管理方法也可以不执行上述步骤,例如第一peer节点102可以直接创建数字资产,无需创建数字资产集合。
S406:第一peer节点102接收管理客户端106发送的数字资产创建请求。
管理客户端106可以提供数字资产创建接口。管理客户端106可以根据该数字资产创建接口生成数字资产创建请求,然后向第一peer节点102发送上述数字资产创建请求,以为上述数字资产集合创建(铸造)数字资产。
具体地,数字资产创建接口可以表示为Mint(collectionIndex,tokenId string,tokenURI*Metadata)(*NFT,string,error)。其中,第一个括号中内容表示输入参数,第二个括号中内容表示返回值。下面对输入参数和返回值分别进行说明。
输入参数包括collectionIndex、tokenId和tokenURI,分别表示集合标识、数字资产标识(如数字资产编号)、数字资产对应资源的统一资源标识符(Uniform Resource Identifier,URI)。其中,collectionIndex和tokenID的参数类型为string,并且同一数字资产集合内的数字资产的tokenID具有唯一性。在一些实施例中,tokenID可以从如下数值范围[0,2^64]内取值。例如数字资产集合内的第一个数字资产(如NFT)的tokenID可以为0。tokenURI的参数类型可以为元数据*metadata,*metadata可以通过元数据生成方法得到,或者基于业务自定义得到。
其中,数字资产可以对应不同类型的数字资源,包括但不限于图像、音频、视频或游戏等类型的数字资源。为了便于理解,以数字资产对应的数字资源为图像进行示例说明。在该示例中,元数据生成方法可以包括NewImageMetadata。
第一peer节点102提供有元数据生成接口如NewImageMetadata(image[]byte,name,url,description string,category int)(*Metadata,error)。其中,image、name、url为必选参数,image表示图片,其类型为字节数组,记作[]byte,name表示图片名称,其类型为string,url表示图片存储地址,其类型为string。description表示描述信息,其类型为string,category表示分类,其类型为int,通常可以由用户自定义,例如category取值为1时,表征该图像为藏品,category取值为2时表征该图像为个人创作。
返回值包括创建成功的数字资产的信息、上链交易编号txid和错误对象。其中,上链交易编号和错误对象可以参见上文相关内容描述,在此不再赘述。下面对数字资产的信息进行详细说明。
数字资产为NFT时,数字资产的信息可以记作*NFT。数字资产的信息包括数字资产编号(如tokenID)和所有者身份标识(记作owner)。所有者身份标识具体可以通过分布式身份标识DID表征。数字资产的信息还可以包括授权用户的身份标识,该身份标识可以为分布式身份标识。
此外,数字资产的信息还可以包括tokenURI。tokenURI可以包括name、description、category、type、hash、url和properties。name、description、category、type、url可以参见上文相关内容描述,在此不再赘述。tokenURI还可以包括hash和properties。hash具体为数字资产对应的数字资源的哈希值,hash的数据类型为string,properties为属性字典,以数字资产对应的数字资源为图片为例,属性字典可以包括大小、格式、标签等属性的属性值。
在一些可能的实现方式中,tokenURI还可以包括URI-type,其中,URI-type用于描述NFT等数字资产对应的数字资源的存储方式。数字资源的存储方式可以包括链上存储和链下存储。其中,链上存储是指数字资源存储在区块链中。在一些实施例中,数字资源可以是与数字资产存储在相同区块链中,该存储方式也称作同链存储;在另一些实施例中,数字资源也可以是与数字资产存储在不同区块链中,该存储方式也称作异链存储。链下存储是指数字资源不存储在区块链中,例如存储在云环境中,区块链中存储数字资源的存储地址,该存储地址用于访问数字资源。
S408:第一peer节点102根据数字资产创建请求中的分布式身份标识,创建目标数字资产。
具体地,第一peer节点102可以根据数字资产创建请求,调用数字资产创建方法,如Mint(collectionIndex,tokenId string,tokenURI*Metadata)(*NFT,string,error),创建得到目标数字资产。该目标数字资产的所有者为数字资产创建请求中的分布式身份标识所标识的用户。
其中,第一peer节点102可以为数字资产集合创建目标数字资产。在创建该目标数字资产时,还可以根据数字资产集合中已有数字资产,为目标数字资产编号。其中,管理客户端106可以提供用户拥有数字资产查询接口。管理客户端106可以使用该接口生成用户拥有数字资产查询请求,并向第一peer节点102发送该请求,第一peer节点102可以根据该请求,调用相应的方法,查询用户拥有的数字资产。其中,用户拥有数字资产查询接口可以表示为Account(collectionIndex,identity string)([]string,error)。collectionIndex为集合标识,identity为用户身份标识,例如是分布式身份标识DID。[]string用于表示返回的用户拥有的数字资产标识列表。error表示错误对象。
例如,第一peer节点102可以查询得到数字资产集合中包括N个数字资产,且这N个数字资产的tokenID分别为0至N-1时,则第一peer节点102可以将目标数字资产编号为N,也即目标数字资产的tokenID可以为N。
第一peer节点102创建的目标数字资产可以为一个或者多个。也即第一peer节点102 可以单独创建一个数字资产,也可以批量地创建数字资产。以数字资产对应的数字资源为数字专辑为例,第一peer节点102可以创建20000个数字资产,如20000个NFT,每个NFT具有唯一的tokenID,且每个NFT对应该数字专辑。
在一些可能的实现方式中,第一peer节点102还可以查询指定的数字资产是否创建。具体地,管理客户端106可以提供数字资产创建查询接口,该接口可以表示为IsMinted(collectionIndex,tokenID string)(bool,error)。
第一peer节点102创建数字资产可以视为一笔交易,第一peer节点102可以根据交易信息如目标数字资产的信息,生成区块,然后将区块添加至第一peer节点102维护的区块链副本中,从而在第一peer节点102的区块链副本中记录第一peer节点102创建目标数字资产的交易。
S410:第一peer节点102接收管理客户端106发送的数字资产授权请求。
管理客户端106提供有数字资产授权接口。数字资产授权接口用于将数字资产授权给其他用户,以便其他用户使用该数字资产对应的数字资源。例如,数字资产对应的数字资源为数字专辑时,数字专辑的所有者可以将数字专辑授权给其他用户使用,其他用户可以播放该数字专辑。
其中,数字资产授权接口可以表示为Approve(collectionIndex,operator,tokenID string)(string,error)。该数字资产授权接口可以指定目标数字资产的授权用户,授权用户拥有转移数字资产的权利。其中,每个数字资产对应一个授权用户。下面对数字资产授权接口的输入参数和返回值进行介绍。
数字资产授权接口的输入参数包括collectionIndex、operator和tokenID。其中,collectionIndex和tokenID可以参见上文相关内容描述,operator表示授权用户的身份标识,如授权用户的分布式身份标识DID,其中,operator的参数类型可以为string。
数字资产授权接口的返回值包括上链交易编号txid和错误对象error。其中,上链交易编号txid的数据类型为string,error包括错误原因,error的数据类型可以为string或int。
S412:第一peer节点102根据数字资产授权请求中的分布式身份标识,授权目标数字资产。
数字资产授权请求中可以包括目标数字资产的所有者的分布式身份标识和授权用户的分布式身份标识,第一peer节点102可以根据所有者的分布式身份标识确定该所有者拥有的数字资产集合,根据数字资产授权请求中的tokenID确定目标数字资产,然后调用数字资产授权方法,将目标数字资产授权给operator所标识的用户即授权用户。如此,operator可以拥有转移数字资产的权利。
上述S406至S412为第一peer节点102接收管理客户端106发送的数字资产处理请求,根据数字资产处理请求中的分布式身份标识,处理目标数字资产的一些具体实现方式。在本申请实施例其他可能的实现方式中,第一peer节点102还可以查询用户拥有数字资产数量、查询目标数字资产的所有者、查询目标数字资产的描述信息、查询目标数字资产的授权用户、交易目标数字资产(例如对目标数字资产进行转移或流转,变更目标数字资产的所有权)或者是设置用户级授权用户、查询用户级授权用户、销毁数字资产等等。其中,用户级授权用户是指在指定数字资产集合下,对用户拥有的所有数字资产具有操作权限的 授权用户,并不局限于某一特定数字资产。
具体地,管理客户端106可以提供数字资产数量查询接口、数字资产所有者查询接口、数字资产信息查询接口、数字资产授权用户查询接口、数字资产交易接口(用于转移数字资产)、用户级授权接口、用户级授权用户查询接口、数字资产销毁接口。基于分布式身份的功能合约ERC-721定义了上述接口,下面结合表1对上述接口进行示例说明。
表1 SDK提供的数据资产处理接口说明
在该方法中,每个用户都具备丰富的账户管理能力。例如,数字资产编号为token1的数字资产的所有者是身份标识为DID A的用户,其所有权可以是DID A对应的私钥持有者拥有。该数字资产的所有权也可以转移至身份标识为DID B的用户。如此可以实现数字资 产的所有者的链式管理或网状多层级管理。
S414:第一peer节点102指示第二区块链网络中的第二peer节点104同步对所述目标数字资产的处理结果。
具体地,第一peer节点102可以向第二区块链网络广播该节点生成的区块,以使第二区块链网络中的第二peer节点104(其他参与记账的peer节点)在各自维护的区块链副本中添加上述区块,从而实现同步对目标数字资产的处理结果,保障不同peer节点记录数据的一致性。
在一些可能的实现方式中,本申请实施例的数字资产的管理方法可以与业务应用集成,例如可以与支持分布式身份标识的标准化业务应用(包括但不限于可信数据交换、存证)集成,有效解决区块链网络中数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,促进区块链大规模商用。
具体地,第一peer节点102可以接收应用的业务请求,第一peer节点102可以使用目标数字资产的处理结果执行所述应用的业务请求。例如,业务应用可以是电子商务应用,业务请求可以是商品发货请求,当目标数字资产交易完成,第一peer节点102可以将商品的状态标记为待发货状态,以便后续物流系统根据该状态分拣商品并发货。
进一步地,分布式身份标识可以关联同一用户在不同应用的账户。第一peer节点102在根据所述分布式身份标识,处理目标数字资产时,可以根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。
基于上述内容描述,本申请实施例提供了一种数字资产的管理方法。该方法通过引入DID,并基于DID对数字资产进行管理,可以实现对数字资产的跨链或跨业务管理,解决了区块链网络中NFT等数字资产使用的局限性问题和扩展性差的问题,使得数字资产可支撑更多业务场景,扩大区块链网络的使用范围,提高了可用性。
为了便于理解,下面结合发行数字专辑对数字资产的管理方法进行说明。
在发行数字专辑时,唱片公司或者个人用户可以注册分布式身份,然后将分布式身份发送至联盟中的各区块链网络进行审核。联盟中的各区块链网络可以对应不同组织或不同业务。
然后,唱片公司或者个人用户可以通过SDK提供的资产集合创建接口,触发创建数字资产集合的操作。SDK响应于创建数字资产集合的操作,生成数字资产集合创建请求,并向第一peer节点102发送该数字资产集合创建请求。该数字资产集合创建请求中包括分布式身份标识DID。第一peer节点102可以根据数字资产集合创建请求,为唱片公司或者上述个人用户创建数字资产集合。该数字资产集合与DID对应。接着,唱片公司或者个人用户可以通过SDK提供的数字资产创建接口,触发数字资产创建操作。第一peer节点102响应于该数字资产创建操作,创建10万个NFT,每个NFT具有唯一编号(编号长度通常为64比特,因此,编号可以在区间[0,2^64-1]中取值),并且每个NFT对应上述数字专辑。其中,数字专辑采用云存储方式存储在云环境中。该云环境可以采用对象存储(object storage,OBS)。
第一peer节点102在创建NFT时,还可以生成该NFT的元数据*Metadata。其中,元 数据中包括名称、描述、分类、哈希、url和属性字典properties。具体如下所示:
进一步地,第一peer节点102还可以将创建好的NFT授权给其他用户,以便于其他用户使用NFT对应的数字专辑。例如,第一peer节点102可以接收SDK发送的数字资产授权请求,然后响应于数字资产授权请求,将tokenID为0的NFT授权给指定用户(数字资产授权请求中通过分布式身份标识指定的用户)。
第一peer节点102可以根据上述交易(创建NFT、授权NFT)的信息生成区块,然后将区块添加至区块链副本中。区块链副本中记录上链交易编号txid,以便于后续基于上链交易编号查找相关交易的信息。此外,第一peer节点102指示第二区块链网络中的第二peer节点104同步对上述NFT的处理结果,具体是将区块添加至各自维护的区块链副本中,从而保障各区块链副本的一致性。
基于本申请实施例提供的数字资产的管理方法,本申请实施例还提供了一种的数字资产的管理装置。数字资产的管理装置可以为软件装置,该软件装置可以部署在第一peer节点102中,第一peer节点102运行软件装置对应的程序代码,从而执行本申请实施例的数字资产的管理方法。数字资产的管理装置也可以为硬件装置,该硬件装置运行时可以执行本申请实施例的数字资产的管理方法。下面将结合附图对本申请实施例提供的数字资产的 管理装置进行介绍。
参见图5所示的数字资产的管理装置的结构示意图,该装置500包括:
通信模块502,用于接收管理客户端发送的数字资产处理请求,所述数字资产处理请求包括分布式身份标识;
资产处理模块504,用于根据所述分布式身份标识,处理目标数字资产;
同步管理模块506,用于指示第二区块链网络中的第二对等节点同步对所述目标数字资产的处理结果。
在一些可能的实现方式中,所述资产处理模块504具体用于:
根据所述分布式身份标识,对目标数字资产进行如下一种或多种操作:创建、授权、查询、交易或销毁。
在一些可能的实现方式中,所述管理客户端提供有资产处理接口,所述数字资产处理请求由所述管理客户端根据所述资产处理接口生成。
在一些可能的实现方式中,所述目标数字资产对应数字资源,所述数字资源采用如下方式中的任意一种方式存储:
与所述目标数字资产存储在同一区块链;或者,
与所述目标数字资产存储在不同区块链;或者,
在区块链中存储所述数字资源的存储地址,所述存储地址用于访问所述数字资源。
在一些可能的实现方式中,所述资产处理模块504还用于:
创建数字资产集合,所述目标数字资产归属于所述数字资产集合;
所述资产处理模块504具体用于:
根据所述分布式标识,批量处理所述数字资产集合中的多个目标数字资产。
在一些可能的实现方式中,所述通信模块502还用于:
接收应用的业务请求;
所述装置500还包括:
执行模块,用于使用所述目标数字资产的处理结果执行所述应用的业务请求。
在一些可能的实现方式中,所述分布式身份标识关联同一用户在不同应用的账户;
所述资产处理模块504具体用于:
根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。
根据本申请实施例的数字资产的管理装置500可对应于执行本申请实施例中描述的方法,并且数字资产的管理装置500的各个模块/单元的上述和其它操作和/或功能分别为了实现图4所示实施例中的各个方法的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供一种第一peer节点102。该第一peer节点102可以为计算设备。在一些实施例中,该计算设备可以来自云环境或者边缘环境,例如该计算设备可以为云服务器或边缘服务器。在另一些实施例中,该计算设备也可以是终端设备,终端设备包括但不限于台式机、笔记本电脑或智能手机。该第一peer节点102具体用于实现如图5所示实施例中数字资产的管理装置500的功能。
图6提供了一种第一peer节点102的结构示意图,如图6所示,第一peer节点102包 括总线601、处理器602、通信接口603和存储器604。处理器602、存储器604和通信接口603之间通过总线601通信。
总线601可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器602可以为中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
通信接口603用于与外部通信。例如,通信接口603用于接收管理客户端106发送的数字资产处理请求,向第二peer节点104广播区块,以便于第二peer节点104同步对目标数字资产的处理结果。
存储器604可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器604还可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器,硬盘驱动器(hard disk drive,HDD)或固态驱动器(solid state drive,SSD)。
存储器604中存储有计算机可读指令,处理器602执行该计算机可读指令,以使得第一peer节点102执行前述数字资产的管理方法(或实现前述数字资产的管理装置500的功能)。
具体地,在实现图5所示装置的实施例的情况下,且图5中所描述的数字资产的管理装置500的各模块如通信模块502、资产处理模块504、同步管理模块506的功能为通过软件实现的情况下,执行图5中各模块的功能所需的软件或程序代码可以存储在第一peer节点102中的至少一个存储器604中。至少一个处理器602执行存储器604中存储的程序代码,以使得第一peer节点102执行前述数字资产的管理方法。
本申请实施例还提供了一种如图1所示的数字资产的管理系统10。该系统10包括第一peer节点102和第二peer节点104。其中,第二peer节点104的结构与第一peer节点102类似,可以参见图6相关内容描述,在此不再赘述。在一些可能的实现方式中,该系统10还可以包括管理客户端106。管理客户端106用于生成数字资产处理请求,并向第一peer节点102发送数字资产处理请求,第一peer节点用于根据数字资产处理请求中的DID,处理目标数字资产,指示第二区块链网络中的第二peer节点104同步对目标数字资产的处理结果。
本申请实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质可以是计算设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,所述指令指示第一peer节点102执行上述数字资产的管理方法。
本申请实施例还提供了一种计算机程序产品。所述计算机程序产品包括一个或多个计算机指令。在计算设备上加载和执行所述计算机指令时,全部或部分地产生按照本申请实 施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算设备或数据中心进行传输。所述计算机程序产品可以为一个软件安装包,在需要使用前述数字资产的管理方法的任一方法的情况下,可以下载该计算机程序产品并在第一peer节点102上执行该计算机程序产品。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
Claims (18)
- 一种数字资产的管理方法,其特征在于,所述方法包括:第一区块链网络中的第一对等节点接收管理客户端发送的数字资产处理请求,所述数字资产处理请求包括分布式身份标识;所述第一对等节点根据所述分布式身份标识,处理目标数字资产;所述第一对等节点指示第二区块链网络中的第二对等节点同步对所述目标数字资产的处理结果。
- 根据权利要求1所述的方法,其特征在于,所述第一对等节点根据所述分布式身份标识,处理目标数字资产,包括:所述第一对等节点根据所述分布式身份标识,对目标数字资产进行如下一种或多种操作:创建、授权、查询、交易或销毁。
- 根据权利要求1或2所述的方法,其特征在于,所述管理客户端提供有资产处理接口,所述方法还包括:所述管理客户端根据所述资产处理接口生成所述数字资产处理请求。
- 根据权利要求1至3任一项所述的方法,其特征在于,所述目标数字资产对应数字资源,所述数字资源采用如下方式中的任意一种方式存储:与所述目标数字资产存储在同一区块链;或者,与所述目标数字资产存储在不同区块链;或者,在区块链中存储所述数字资源的存储地址,所述存储地址用于访问所述数字资源。
- 根据权利要求1至4任一项所述的方法,其特征在于,所述第一对等节点根据所述分布式身份标识,处理目标数字资产之前,所述方法还包括:所述第一对等节点创建数字资产集合,所述目标数字资产归属于所述数字资产集合;所述第一对等节点根据所述分布式身份标识,处理目标数字资产,包括:所述第一对等节点根据所述分布式标识,批量处理所述数字资产集合中的多个目标数字资产。
- 根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:所述第一对等节点接收应用的业务请求;所述第一对等节点使用所述目标数字资产的处理结果执行所述应用的业务请求。
- 根据权利要求1至6任一项所述的方法,其特征在于,所述分布式身份标识关联同一用户在不同应用的账户;所述第一对等节点根据所述分布式身份标识,处理目标数字资产,包括:所述第一对等节点根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。
- 一种数字资产的管理装置,其特征在于,所述装置包括:通信模块,用于接收管理客户端发送的数字资产处理请求,所述数字资产处理请求包括分布式身份标识;资产处理模块,用于根据所述分布式身份标识,处理目标数字资产;同步管理模块,用于指示第二区块链网络中的第二对等节点同步对所述目标数字资产 的处理结果。
- 根据权利要求8所述的装置,其特征在于,所述资产处理模块具体用于:根据所述分布式身份标识,对目标数字资产进行如下一种或多种操作:创建、授权、查询、交易或销毁。
- 根据权利要求8或9所述的装置,其特征在于,所述管理客户端提供有资产处理接口,所述数字资产处理请求由所述管理客户端根据所述资产处理接口生成。
- 根据权利要求8至10任一项所述的装置,其特征在于,所述目标数字资产对应数字资源,所述数字资源采用如下方式中的任意一种方式存储:与所述目标数字资产存储在同一区块链;或者,与所述目标数字资产存储在不同区块链;或者,在区块链中存储所述数字资源的存储地址,所述存储地址用于访问所述数字资源。
- 根据权利要求8至11任一项所述的装置,其特征在于,所述资产处理模块还用于:创建数字资产集合,所述目标数字资产归属于所述数字资产集合;所述资产处理模块具体用于:根据所述分布式标识,批量处理所述数字资产集合中的多个目标数字资产。
- 根据权利要求8至12任一项所述的装置,其特征在于,所述通信模块还用于:接收应用的业务请求;所述装置还包括:执行模块,用于使用所述目标数字资产的处理结果执行所述应用的业务请求。
- 根据权利要求8至13任一项所述的装置,其特征在于,所述分布式身份标识关联同一用户在不同应用的账户;所述资产处理模块具体用于:根据所述分布式身份标识,在所述不同应用的账户交易所述目标数字资产。
- 一种第一对等节点,其特征在于,所述第一对等节点属于第一区块链网络,所述第一对等节点包括处理器和存储器,所述存储器中存储有计算机可读指令;所述处理器执行所述计算机可读指令,以使得所述第一对等节点执行如权利要求1至7中任一项所述的方法。
- 一种数字资产的管理系统,其特征在于,所述系统包括第一区块链网络中的第一对等节点和第二区块链网络中的第二对等节点;所述第一对等节点,用于接收管理客户端发送的数字资产处理请求,所述数字资产处理请求包括分布式身份标识;所述第一对等节点,用于根据所述分布式身份标识,处理目标数字资产;所述第一对等节点,用于指示所述第二对等节点同步对所述目标数字资产的处理结果。
- 一种计算机可读存储介质,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至7任一项所述的方法。
- 一种计算机程序产品,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至7任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210504338.5 | 2022-05-10 | ||
CN202210504338.5A CN117082026A (zh) | 2022-05-10 | 2022-05-10 | 一种数字资产的管理方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023216532A1 true WO2023216532A1 (zh) | 2023-11-16 |
Family
ID=88714021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/130459 WO2023216532A1 (zh) | 2022-05-10 | 2022-11-08 | 一种数字资产的管理方法及相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117082026A (zh) |
WO (1) | WO2023216532A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689227A (zh) * | 2023-12-11 | 2024-03-12 | 广州智业节能科技有限公司 | 一种数字化运营管理平台、数据标准化方法及装置 |
CN117710112A (zh) * | 2024-02-02 | 2024-03-15 | 湖南马兰数字教育科技有限公司 | 一种基于区块链的nft生成方法及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114707973A (zh) * | 2022-03-08 | 2022-07-05 | 中科计算技术创新研究院 | 面向元宇宙应用的链上链下协同数字资产管理方法、协议 |
CN117911160B (zh) * | 2024-01-19 | 2024-06-21 | 江苏小微云链金融科技有限公司 | 基于边缘计算的分布式资产管控方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101032A1 (en) * | 2012-10-09 | 2014-04-10 | Red.Com, Inc. | Rights Management and Content Distribution Platform |
CN111527489A (zh) * | 2020-03-13 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 基于去中心化标识的数据授权 |
CN111859422A (zh) * | 2020-07-10 | 2020-10-30 | 郑州信大先进技术研究院 | 一种基于区块链的数字资产存证系统 |
CN113095913A (zh) * | 2021-04-29 | 2021-07-09 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链的抢购方法 |
US20210318996A1 (en) * | 2020-09-15 | 2021-10-14 | Alipay (Hangzhou) Information Technology Co., Ltd. | Methods, apparatuses, and devices for transferring data assets based on blockchain |
US20220044316A1 (en) * | 2020-08-04 | 2022-02-10 | International Business Machines Corporation | Blockchain implemented transfer of multi-asset digital wallets |
-
2022
- 2022-05-10 CN CN202210504338.5A patent/CN117082026A/zh active Pending
- 2022-11-08 WO PCT/CN2022/130459 patent/WO2023216532A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101032A1 (en) * | 2012-10-09 | 2014-04-10 | Red.Com, Inc. | Rights Management and Content Distribution Platform |
CN111527489A (zh) * | 2020-03-13 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 基于去中心化标识的数据授权 |
CN111859422A (zh) * | 2020-07-10 | 2020-10-30 | 郑州信大先进技术研究院 | 一种基于区块链的数字资产存证系统 |
US20220044316A1 (en) * | 2020-08-04 | 2022-02-10 | International Business Machines Corporation | Blockchain implemented transfer of multi-asset digital wallets |
US20210318996A1 (en) * | 2020-09-15 | 2021-10-14 | Alipay (Hangzhou) Information Technology Co., Ltd. | Methods, apparatuses, and devices for transferring data assets based on blockchain |
CN113095913A (zh) * | 2021-04-29 | 2021-07-09 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链的抢购方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689227A (zh) * | 2023-12-11 | 2024-03-12 | 广州智业节能科技有限公司 | 一种数字化运营管理平台、数据标准化方法及装置 |
CN117689227B (zh) * | 2023-12-11 | 2024-06-04 | 广州智业节能科技有限公司 | 一种数字化运营管理平台、数据标准化方法及装置 |
CN117710112A (zh) * | 2024-02-02 | 2024-03-15 | 湖南马兰数字教育科技有限公司 | 一种基于区块链的nft生成方法及系统 |
CN117710112B (zh) * | 2024-02-02 | 2024-06-04 | 湖南马兰数字科技有限公司 | 一种基于区块链的nft生成方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117082026A (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023216532A1 (zh) | 一种数字资产的管理方法及相关装置 | |
CN113711536B (zh) | 从区块链网络中提取数据 | |
US11194837B2 (en) | Blockchain implementing cross-chain transactions | |
TWI707245B (zh) | 使用高可用性的可信執行環境檢索區塊鏈網路的存取資料 | |
US10623272B2 (en) | Authenticating connections and program identity in a messaging system | |
US11159307B2 (en) | Ad-hoc trusted groups on a blockchain | |
US20190340266A1 (en) | Blockchain implementing cross-chain transactions | |
WO2019085699A1 (zh) | 数据共享方法、客户端、服务器、计算设备及存储介质 | |
US10079880B2 (en) | Automatic identification of invalid participants in a secure synchronization system | |
EP3404891A1 (en) | Method and system for distributing digital content in peer-to-peer network | |
US20120005159A1 (en) | System and method for cloud file management | |
WO2022121538A1 (zh) | 基于区块链的数据同步方法、系统及相关设备 | |
US20230104103A1 (en) | Custodial systems for non-fungible tokens | |
US11057368B2 (en) | Issuing a certificate based on an identification of an application | |
US20240289179A1 (en) | Blockchain-based data processing method and apparatus | |
US11418342B2 (en) | System and methods for data exchange using a distributed ledger | |
WO2016091067A1 (zh) | 一种数据操作方法及装置 | |
US12081653B2 (en) | Systems and methods for providing secure, encrypted communications across distributed computer networks by coordinating cryptography-based digital repositories in order to perform blockchain operations in decentralized applications | |
US20230246817A1 (en) | Systems and methods for generating secure, encrypted communications across distributed computer networks for authorizing use of cryptography-based digital repositories in order to perform blockchain operations in decentralized applications | |
WO2023207529A1 (zh) | 数据处理方法、装置及设备、介质、产品 | |
WO2020010270A1 (en) | Dynamic routing using a distributed hash table | |
US20230245111A1 (en) | Systems and methods for requesting secure, encrypted communications across distributed computer networks for authorizing use of cryptography-based digital repositories in order to perform blockchain operations in decentralized applications | |
TW201933224A (zh) | 基於區塊鏈的交易紀錄方法與系統 | |
US20240106657A1 (en) | Method and apparatus for posting a user message of a user in an internet forum | |
CN114650183B (zh) | 资源管理方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22941467 Country of ref document: EP Kind code of ref document: A1 |