Implementing non-fungible tokens using bitcoin
OwnerAlexei Dulubinventor
Life of this patent
Estimating the term…
Abstract
A novel method and instruction set for storing and trading Non-Fungible Tokens (NFTs), on Bitcoin blockchain. As proof of NFT ownership, proposed methods allow a user to perform the following operations with an NFT: (1) store NFT token on Bitcoin blockchain; (2) securely associate NFT data unit with digital assets (photos, video, audio, digital documents, etc.); (3) grouping many NFT tokens together to a collection with a single unique identifier; (4) safely sell and buy an NFT using Bitcoin ecosystem. These actions and validation of the transactions are performed using Bitcoin transactions.
Claims21
A method of implementing Non-Fungible Tokens (NFTs) using Bitcoin, the method comprising:
- creating a set of metadata describing a collection of NFTs;
- loading the metadata into a Content Addressable Storage;
- receiving a first cryptographic hash representing an address of the set of the metadata in the Content Addressable Storage;
- generating a GENESIS COLLECTION transaction that includes the first cryptographic hash and a first UTXO, wherein the first UTXO is associated with metadata of the GENESIS COLLECTION,
- wherein the GENESIS COLLECTION transaction is a Bitcoin transaction where a first output of the GENESIS COLLECTION transaction contains OP_RETURN opcode with metadata corresponding to GENESIS COLLECTION transaction type, a second output of the GENESIS COLLECTION transaction is a UTXO bounded with the OP_RETURN, and
- wherein the metadata that follows the OP_RETURN opcode includes the first cryptographic hash, the number of digital assets in the collection;
- sending the GENESIS COLLECTION transaction to a Bitcoin blockchain;
- generating a COLLECTION MINT transaction that includes multiple UTXOs created using the first UTXO;
- defining a digital asset to be associated with an NFT from the collection of NFTs;
- loading the digital asset into the Content Addressable Storage;
- receiving a second cryptographic hash representing an address of the digital asset in the Content Addressable Storage;
- using one of the multiple UTXOs, generating a GENESIS NFT transaction that includes the second cryptographic hash and corresponding UTXO, and sending the GENESIS NFT transaction to the Bitcoin blockchain;
- using the UTXO from the GENESIS NFT transaction to change owner of the NFT for the first time by generating a NFT SEND transaction with a corresponding UTXO, and sending the NFT SEND transaction to the Bitcoin blockchain;
- and
- using the UTXO from the NFT SEND transaction to change the owner of the NFT by generating an NFT SEND transaction with a corresponding UTXO, and sending the NFT SEND transaction to the Bitcoin blockchain.
A system for implementing Non-Fungible Tokens (NFTs) using Bitcoin, the system comprising a server configured to perform the following:
- creating a set of metadata describing a collection of NFTs;
- loading the metadata into a Content Addressable Storage;
- receiving a first cryptographic hash representing an address of the set of the metadata in the Content Addressable Storage;
- generating a GENESIS COLLECTION transaction that includes the first cryptographic hash and a first unspendable transaction output (UTXO), wherein the first UTXO is associated with metadata of the GENESIS COLLECTION, and
- wherein the GENESIS COLLECTION transaction is a Bitcoin transaction where a first output of the GENESIS COLLECTION transaction contains OP_RETURN opcode with metadata corresponding to GENESIS COLLECTION transaction type, a second output of the GENESIS COLLECTION transaction is a UTXO bounded with the OP_RETURN, and
- wherein the metadata that follows the OP_RETURN opcode includes the first cryptographic hash, the number of digital assets in the collection;
- sending the GENESIS COLLECTION transaction to a Bitcoin blockchain;
- generating a COLLECTION MINT transaction that includes multiple unspendable transaction outputs (UTXOs) created using the first UTXO;
- defining a digital asset to be associated with an NFT from the collection of NFTs;
- loading the digital asset into the Content Addressable Storage;
- receiving a second cryptographic hash representing an address of the digital asset in the Content Addressable Storage;
- using one of the multiple unspendable transaction outputs (UTXOs), generating a GENESIS NFT transaction that includes the second cryptographic hash;
- and
- sending the GENESIS NFT transaction to the Bitcoin blockchain.
A method of implementing Non-Fungible Tokens (NFTs) using Bitcoin, the method comprising:
- creating a set of metadata describing a collection of NFTs;
- loading the metadata into a Content Addressable Storage;
- receiving a first cryptographic hash representing an address of the set of the metadata in the Content Addressable Storage;
- generating a GENESIS COLLECTION transaction that includes the first cryptographic hash and a first UTXO, wherein the first UTXO is associated with metadata of the GENESIS COLLECTION;
- sending the GENESIS COLLECTION transaction to a Bitcoin blockchain;
- generating a COLLECTION MINT transaction that includes multiple UTXOs created using the first UTXO,
- wherein the COLLECTION MINT transaction is a Bitcoin transaction where a first output of the COLLECTION MINT transaction contains OP_RETURN opcode with metadata corresponding to COLLECTION MINT transaction type, and UTXOs bounded with the OP_RETURN, wherein a number of bounded UTXOs is defined by a collection issuer, and stated in the OP_RETURN metadata, and does not exceed a collection size defined in GENESIS COLLECTION metadata;
- defining a digital asset to be associated with an NFT from the collection of NFTs;
- loading the digital asset into the Content Addressable Storage;
- receiving a second cryptographic hash representing an address of the digital asset in the Content Addressable Storage;
- using one of the multiple UTXOs, generating a GENESIS NFT transaction that includes the second cryptographic hash and corresponding UTXO, and sending the GENESIS NFT transaction to the Bitcoin blockchain;
- using the UTXO from the GENESIS NFT transaction to change owner of the NFT for the first time by generating a NFT SEND transaction with a corresponding UTXO, and sending the NFT SEND transaction to the Bitcoin blockchain;
- and
- using the UTXO from the NFT SEND transaction to change the owner of the NFT by generating an NFT SEND transaction with a corresponding UTXO, and sending the NFT SEND transaction to the Bitcoin blockchain.
Dependencies are inferred from the claim text.