A method for management and verification of non-fungible tokens for data provenance and data provenancing
By deploying NFT management smart contracts and blockchain technology, the registration, minting, transfer, destruction, and cancellation of NFTs are realized, solving the problem of standardized management of data ownership confirmation and traceability, improving data security and credibility, and promoting the effective circulation and sharing of data.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- UNIV OF ELECTRONICS SCI & TECH OF CHINA
- Filing Date
- 2023-04-27
- Publication Date
- 2026-06-19
AI Technical Summary
Existing technologies lack standardized methods for managing and verifying NFTs, including data ownership confirmation and data traceability, resulting in insufficient data security and credibility, and making it difficult to effectively prevent data leakage, theft, and tampering.
It adopts a non-fungible token (NFT) management and verification method, and realizes the registration, minting, transfer, destruction and cancellation of NFTs by deploying NFT management smart contracts. It combines P2P and private storage methods to manage metadata, and uses blockchain technology to ensure the irreversibility and traceability of transactions.
This provides an effective method for NFT management and verification, ensuring the uniqueness, credibility, and immutability of data, enhancing data value and trustworthiness, and promoting the effective circulation and sharing of data.
Smart Images

Figure CN116488825B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of blockchain, specifically relating to a management and verification method for non-fungible tokens used for data ownership confirmation and data traceability. Background Technology
[0002] Non-fungible tokens (NFTs) are data units existing on the blockchain that can record and process complex attributes. Their indivisibility, non-fungibility, and uniqueness allow NFTs to represent unique digital assets, such as paintings, videos, and dynamic tweets, serving as trusted digital credentials of ownership. Data ownership verification refers to using blockchain and other technologies to tightly link data and data credentials before putting them on the chain, ensuring the uniqueness, credibility, and immutability of the data. Data traceability refers to determining the authenticity, integrity, and responsibility of data by recording, tracking, and analyzing its source, flow, and changes. Data ownership verification and traceability can effectively prevent security risks such as data leakage, theft, and tampering, protect the rights of data owners, increase the value and trustworthiness of data, and promote the effective circulation and sharing of data. However, currently, there is a lack of standardized methods for NFT management and verification for data ownership verification and traceability. Therefore, to address this issue, this invention proposes a management and verification method for non-fungible tokens (NFTs) used for data ownership confirmation and data traceability, which facilitates the management and operation of NFTs. Summary of the Invention
[0003] The purpose of this invention is to propose a management and verification method for non-fungible tokens used for data ownership confirmation and data traceability.
[0004] The technical solution of this invention is: a management and verification method for non-fungible tokens used for data ownership confirmation and data traceability, comprising the following steps:
[0005] S1. NFT management organizations or institutions deploy NFT management smart contracts using their external accounts on the corresponding blockchain and publish interface code standards corresponding to the NFT management smart contracts (external accounts refer to user accounts controlled by a public-private key pair, through which users can create transactions and deploy smart contracts in the blockchain); a smart contract is a computer protocol designed to disseminate, verify, or execute contracts in an informational manner, allowing trusted transactions without a third party, which are traceable and irreversible. An NFT management smart contract is a smart contract that can register and deregister other NFT smart contracts and mint NFTs (referring to generating unique NFTs within an NFT smart contract); an NFT smart contract refers to a smart contract deployed by the owner of an NFT smart contract that can perform operations such as transferring and destroying the corresponding NFTs; an interface code standard refers to the rules for writing code that NFT smart contracts should follow when inheriting interfaces;
[0006] S2. The NFT smart contract owner implements and deploys the corresponding specific NFT smart contract according to this interface standard, and then requests registration with the NFT management smart contract. Registration here means that the NFT smart contract owner submits the address of the deployed NFT smart contract to the NFT management organization or institution, which will assign a unique number, namely TokenId, to the NFT smart contract requesting registration under the NFT management smart contract.
[0007] In S3, NFT smart contract users request to mint NFTs from the NFT smart management contract. The NFT smart management contract calls the secure minting function (denoted as SafeMint()) to mint the NFT. Simultaneously, the NFT smart contract user needs to provide metadata to the NFT storage location. Metadata can be stored using either P2P or private storage. Metadata, also known as intermediary data or relay data, describes data, primarily information describing data attributes; here, it identifies and describes the NFT data. P2P storage is a network storage method based on peer-to-peer technology, organizing many machines in a peer-to-peer manner to provide users with ultra-large-capacity data storage services. Private storage refers to the method where users store data on private servers.
[0008] S4. NFT users can interact with NFTs through NFT smart contracts, such as transferring and destroying them; transfer refers to transferring NFTs between users, and destruction refers to adding a record to the blockchain that invalidates the NFT;
[0009] S5. When an NFT smart contract encounters an abnormal situation or the NFT management organization or institution ceases to endorse the NFT smart contract, the NFT smart contract owner may request the NFT smart contract management organization to cancel the corresponding NFT smart contract, or the NFT management organization or institution may directly cancel the NFT smart contract. Here, endorsement means that the NFT management organization or institution recognizes the validity and legality of an NFT smart contract; cancellation means that the NFT management organization or institution sets the TokenId of an NFT smart contract to 0 and no longer endorses any NFTs generated thereafter.
[0010] Further, step S2 includes the following sub-steps:
[0011] S21. The owner of the NFT smart contract implements the corresponding specific NFT smart contract according to the published NFT interface code standard, and submits the smart contract code to the NFT management organization or institution for code review.
[0012] S22. After the code review of the NFT smart contract is approved, the NFT smart contract owner uses an external account on the blockchain to deploy the NFT smart contract;
[0013] S23. After the NFT smart contract is deployed and the corresponding smart contract address is obtained, the NFT smart contract owner shall register with the NFT management organization or institution.
[0014] S24. When an NFT management organization or institution calls the registration function (denoted as register()) of the NFT management contract through an external account, the NFT management smart contract will call the set token Id function (denoted as setTokenId()) of the NFT smart contract to register the NFT smart contract and create an event on the blockchain (an event is a data type that is permanently stored on the blockchain) to record the relevant registration information.
[0015] S25. NFT smart contract owners can check the registration status of NFT smart contracts by calling the getTokenId function (denoted as getTokenId()). The returned TokenId value is the unique number of this NFT smart contract under the NFT management smart contract, which, together with the address of the NFT management smart contract, forms a unique number across the entire network.
[0016] Furthermore, step S3 includes the following sub-steps:
[0017] S31. NFT smart contract users can obtain the corresponding TokenId value by calling getTokenId() in the NFT smart contract through their own external accounts;
[0018] S32. Based on the obtained TokenId value, NFT smart contract users call the minting function (denoted as Mint()) in the NFT management smart contract through their own external accounts to mint NFTs.
[0019] S33. The NFT management smart contract calls the SafeMint() function of the NFT smart contract to mint NFTs. At the same time, the NFT smart contract creates an event on the blockchain to record relevant information about the minting and returns the result to the user.
[0020] The return results of S34 and SafeMint() are stored in the corresponding event on the blockchain, and NFT smart contract users can view them through their external accounts;
[0021] S35. NFT smart contract users can use their external accounts to call the getBalance() function in the NFT smart contract to obtain the quantity and information of NFTs in their own accounts.
[0022] Further, step S4 includes the following sub-steps:
[0023] S41. NFT smart contract users can obtain the balance of NFTs in their own account by calling getBalance() in the NFT smart contract through their own external account.
[0024] S42. When an NFT smart contract user calls the transfer function (denoted as transfer()) in the NFT smart contract through their external account to transfer an NFT or calls the burn function (denoted as burn()) in the contract to destroy an NFT, the NFT smart contract will create an event on the blockchain to record the relevant information of the transfer or destruction.
[0025] Further, step S5 includes the following sub-steps:
[0026] S51. The NFT management organization or institution calls the cancellation function (denoted as deregister()) of the NFT management smart contract through the corresponding external account. The NFT management smart contract sets the TokenId of the NFT smart contract to 0 by calling the zeroing tokenId function of the corresponding NFT (denoted as unsetTokenId()) and creates an event on the blockchain to record the cancellation information.
[0027] S52. The NFT smart contract owner can call getTokenId() through their external account to query the TokenId of the NFT smart contract. If the returned TokenId is 0, it means that this NFT smart contract has been cancelled in the NFT management smart contract;
[0028] After an S53 NFT smart contract is cancelled, NFTs that have already been created can still be transferred and destroyed, but users can no longer create corresponding NFTs through this NFT management smart contract. Attached Figure Description
[0029] Figure 1 This is a flowchart of the method of the present invention.
[0030] Figure 2 This is a structural diagram of the method of the present invention.
[0031] Figure 3 Diagram of the NFT smart contract registration process
[0032] Figure 4 NFT casting process diagram
[0033] Figure 5 Diagram of NFT transfer process
[0034] Figure 6 Diagram of the NFT destruction process
[0035] Figure 7 Diagram of the NFT smart contract cancellation process Detailed Implementation
[0036] The embodiments of the present invention will be further described below with reference to the accompanying drawings.
[0037] like Figure 1 , Figure 2 As shown, this invention provides a management and verification method for non-fungible tokens used for data ownership confirmation and data traceability, comprising the following steps:
[0038] S1. NFT management organizations or institutions deploy NFT management smart contracts using their external accounts on the corresponding blockchain and publish interface code standards corresponding to the NFT management smart contracts (external accounts refer to user accounts controlled by a public-private key pair, through which users can create transactions and deploy smart contracts in the blockchain); a smart contract is a computer protocol designed to disseminate, verify, or execute contracts in an informational manner, allowing trusted transactions without a third party, which are traceable and irreversible. An NFT management smart contract is a smart contract that can register and deregister other NFT smart contracts and mint NFTs (referring to generating unique NFTs within an NFT smart contract); an NFT smart contract refers to a smart contract deployed by the owner of an NFT smart contract that can perform operations such as transferring and destroying the corresponding NFTs; an interface code standard refers to the rules for writing code that NFT smart contracts should follow when inheriting interfaces;
[0039] S2. The NFT smart contract owner implements and deploys the corresponding specific NFT smart contract according to this interface standard, and then requests registration with the NFT management smart contract. Registration here means that the NFT smart contract owner submits the address of the deployed NFT smart contract to the NFT management organization or institution, which will assign a unique number, namely TokenId, to the NFT smart contract requesting registration under the NFT management smart contract.
[0040] In S3, NFT smart contract users request to mint NFTs from the NFT smart management contract. The NFT smart management contract calls the secure minting function (denoted as SafeMint()) to mint the NFT. Simultaneously, the NFT smart contract user needs to provide metadata to the NFT storage location. Metadata can be stored using either P2P or private storage. Metadata, also known as intermediary data or relay data, describes data, primarily information describing data attributes; here, it identifies and describes the NFT data. P2P storage is a network storage method based on peer-to-peer technology, organizing many machines in a peer-to-peer manner to provide users with ultra-large-capacity data storage services. Private storage refers to the method where users store data on private servers.
[0041] S4. NFT users can interact with NFTs through NFT smart contracts, such as transferring and destroying them; transfer refers to transferring NFTs between users, and destruction refers to adding a record to the blockchain that invalidates the NFT;
[0042] S5. When an NFT smart contract encounters an abnormal situation or the NFT management organization or institution ceases to endorse the NFT smart contract, the NFT smart contract owner may request the NFT smart contract management organization to cancel the corresponding NFT smart contract, or the NFT management organization or institution may directly cancel the NFT smart contract. Here, endorsement means that the NFT management organization or institution recognizes the validity and legality of an NFT smart contract; cancellation means that the NFT management organization or institution sets the TokenId of an NFT smart contract to 0 and no longer endorses any NFTs generated thereafter.
[0043] Further, step S2 includes the following sub-steps:
[0044] S21. The owner of the NFT smart contract implements the corresponding specific NFT smart contract according to the published NFT interface code standard, and submits the smart contract code to the NFT management organization or institution for code review.
[0045] S22. After the code review of the NFT smart contract is approved, the NFT smart contract owner uses an external account on the blockchain to deploy the NFT smart contract;
[0046] S23. After the NFT smart contract is deployed and the corresponding smart contract address is obtained, the NFT smart contract owner shall register with the NFT management organization or institution.
[0047] S24. When an NFT management organization or institution calls the registration function (denoted as register()) of the NFT management contract through an external account, the NFT management smart contract will call the set token Id function (denoted as setTokenId()) of the NFT smart contract to register the NFT smart contract and create an event on the blockchain (an event is a data type that is permanently stored on the blockchain) to record the relevant registration information.
[0048] S25. The NFT smart contract owner can check the registration status of the NFT smart contract by calling the getTokenId function (denoted as getTokenId()). The returned TokenId value is the unique number of this NFT smart contract under the NFT management smart contract, which, together with the address of the NFT management smart contract, forms a globally unique number. Further, step S3 includes the following sub-steps:
[0049] S31. NFT smart contract users can obtain the corresponding TokenId value by calling getTokenId() in the NFT smart contract through their own external accounts;
[0050] S32. Based on the obtained TokenId value, NFT smart contract users call the minting function (denoted as Mint()) in the NFT management smart contract through their own external accounts to mint NFTs.
[0051] S33. The NFT management smart contract calls the SafeMint() function of the NFT smart contract to mint NFTs. At the same time, the NFT smart contract creates an event on the blockchain to record relevant information about the minting and returns the result to the user.
[0052] The return results of S34 and SafeMint() are stored in the corresponding event on the blockchain, and NFT smart contract users can view them through their external accounts;
[0053] S35. NFT smart contract users can use their external accounts to call the getBalance() function in the NFT smart contract to obtain the quantity and information of NFTs in their own accounts.
[0054] Further, step S4 includes the following sub-steps:
[0055] S41. NFT smart contract users can obtain the balance of NFTs in their own account by calling getBalance() in the NFT smart contract through their own external account.
[0056] S42. When an NFT smart contract user calls the transfer function (denoted as transfer()) in the NFT smart contract through their external account to transfer an NFT or calls the burn function (denoted as burn()) in the contract to destroy an NFT, the NFT smart contract will create an event on the blockchain to record the relevant information of the transfer or destruction.
[0057] Further, step S5 includes the following sub-steps:
[0058] S51. The NFT management organization or institution calls the cancellation function (denoted as deregister()) of the NFT management smart contract through the corresponding external account. The NFT management smart contract sets the TokenId of the NFT smart contract to 0 by calling the zeroing tokenId function of the corresponding NFT (denoted as unsetTokenId()) and creates an event on the blockchain to record the cancellation information.
[0059] S52. The NFT smart contract owner can call getTokenId() through their external account to query the TokenId of the NFT smart contract. If the returned TokenId is 0, it means that this NFT smart contract has been cancelled in the NFT management smart contract;
[0060] After an S53 NFT smart contract is cancelled, NFTs that have already been created can still be transferred and destroyed, but users can no longer create corresponding NFTs through this NFT management smart contract.
[0061] The working principle and process of this invention are as follows: First, the NFT management organization or institution deploys an NFT management smart contract on the blockchain through an external account and publishes the corresponding NFT interface code standard. Then, the NFT smart contract owner implements and deploys the corresponding specific NFT smart contract according to this interface code standard through their own external account, and then requests registration with the NFT management smart contract. After successful registration, the NFT smart contract user can call the NFT management smart contract through their own external account to mint NFTs, and can also call the NFT smart contract to transfer and destroy NFTs. Finally, when the NFT smart contract encounters an abnormal situation or the NFT management organization or institution no longer endorses the NFT smart contract, the NFT smart contract owner can request the NFT smart management contract to cancel the corresponding NFT smart contract, or the NFT management organization or institution can directly cancel the NFT smart contract.
[0062] The beneficial effects of this invention are: it provides an effective method for managing and verifying non-fungible tokens, which enables convenient operation of NFTs from registration, transfer, destruction, and cancellation.
[0063] Those skilled in the art will recognize that the embodiments described herein are intended to help the reader understand the principles of the invention, and should be understood that the scope of protection of the invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific modifications and combinations based on the technical teachings disclosed in this invention without departing from the spirit of the invention, and these modifications and combinations are still within the scope of protection of this invention.
Claims
1. A method for managing and verifying non-fungible tokens (NFTs) for data ownership confirmation and data traceability, wherein the NFT is characterized in that, Includes the following steps: S1. An NFT management organization or institution uses its own external account on the corresponding blockchain to deploy an NFT management smart contract and publishes an NFT interface code standard corresponding to the NFT management smart contract; the external account is a user account in the blockchain that can generate transactions and deploy smart contracts. S2. The NFT smart contract owner implements and deploys the corresponding specific NFT smart contract according to this code standard, and then requests registration with the NFT management smart contract; S3. The NFT smart contract user requests the NFT management smart contract to mint an NFT to generate a unique NFT in the NFT smart contract. The NFT management smart contract calls the SafeMint function in the NFT smart contract to mint the NFT. At the same time as minting, the NFT smart contract user needs to provide metadata to the NFT smart contract. The metadata is the relevant data contained in the NFT. The metadata is stored in a peer-to-peer network storage method or a private storage method. S4 and NFT users can interact with NFTs through NFT smart contracts, including transfer and destruction operations; S5. When an NFT smart contract encounters an abnormal situation or the NFT management organization or institution no longer endorses the NFT smart contract, the NFT smart contract owner may request the NFT management smart contract to cancel the corresponding NFT smart contract, or the NFT management organization or institution may directly cancel the NFT smart contract.
2. The method of claim 1, wherein, Step S2 includes the following sub-steps: S21. The owner of the NFT smart contract implements the corresponding specific NFT smart contract according to the published NFT interface code standard, and submits the smart contract code to the NFT management organization or institution for code review. S22. After the code review of the NFT smart contract is approved, the NFT smart contract owner uses an external account on the blockchain to deploy the NFT smart contract; S23. After the NFT smart contract is deployed and the corresponding smart contract address is obtained, the NFT smart contract owner shall register with the NFT management organization or institution. S24. The NFT management organization or institution calls the register function of the NFT management smart contract through an external account. The NFT management smart contract calls the setTokenId function of the NFT smart contract to register the NFT smart contract and creates an event on the blockchain to record the relevant registration information; the event is a data type that is permanently stored on the blockchain. S25. NFT smart contract owners can check the registration status of NFT smart contracts by calling the getTokenId function. The returned token ID value is a unique number for this NFT smart contract under the NFT management smart contract, which, together with the address of the NFT management smart contract, forms a unique number across the entire network.
3. The method of claim 2, wherein, Step S3 includes the following sub-steps: S31. NFT smart contract users can obtain the corresponding token ID value by calling the get token ID function in the NFT smart contract through their own external accounts; S32. NFT smart contract users can use their external accounts to call the minting function Mint in the NFT management smart contract to mint NFTs based on the obtained token ID value. S33. The NFT management smart contract calls the SafeMint function of the NFT smart contract to mint NFTs. At the same time, the NFT smart contract creates an event on the blockchain to record the relevant information of the minting and returns the result to the NFT smart contract user. S34. The return result of the SafeMint function is stored in the corresponding event on the blockchain, and NFT smart contract users can view it through their external accounts. S35. NFT smart contract users can use their external accounts to call the getBalance function in the NFT smart contract to obtain the quantity and information of NFTs in their own accounts.
4. The method for managing and verifying non-fungible tokens according to claim 3, wherein, Step S4 includes the following sub-steps: S41. NFT smart contract users can obtain the balance of NFTs in their own account by calling the getBalance function in the NFT smart contract through their own external account; S42. NFT smart contract users can transfer NFTs by calling the token transfer function in the NFT smart contract through their external accounts, or destroy NFTs by calling the token burn function in the contract. At the same time, the NFT smart contract will create an event on the blockchain to record the relevant information of the transfer or destruction.
5. The method for managing and verifying non-fungible tokens according to claim 2, wherein, Step S5 includes the following sub-steps: S51. The NFT management organization or institution calls the deregister function of the NFT management smart contract through the corresponding external account. The NFT management smart contract sets the token ID of the NFT smart contract to 0 by calling the unsetTokenId function of the corresponding NFT and creates an event on the blockchain to record the relevant information of the deregistration. S52. The owner of an NFT smart contract can call the getTokenId function through their external account to query the token ID of the NFT smart contract. If the returned token ID is 0, it is determined that the NFT smart contract has been cancelled in the NFT management smart contract. S53. After an NFT smart contract is cancelled, NFTs that have already been created can still be transferred and destroyed. However, NFT smart contract users can no longer create related NFTs through this NFT management smart contract.