Supplemental digital content access control using non-fungible tokens (NFTs)

By using NFTs that record the characteristics of digital content on the blockchain, the problem of digital content loss between devices and accounts is solved, and access control and function retention are achieved in different environments.

CN115730277BActive Publication Date: 2026-06-12EBAY INC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
EBAY INC
Filing Date
2022-08-23
Publication Date
2026-06-12

Smart Images

  • Figure CN115730277B_ABST
    Figure CN115730277B_ABST
Patent Text Reader

Abstract

Techniques are described for controlling access to digital content using non-fungible tokens (NFTs) implemented by a computing device. This is performed by leveraging a blockchain such that digital content associated with an item is made available to supplement use of the item (e.g., supplement use of a physical item, digital content, etc.) or make other functionality available based on a user's ownership of the item.
Need to check novelty before this filing date? Find Prior Art

Description

Background Technology

[0001] Digital content has become a primary mechanism for maintaining, organizing, and sharing information among users. As a result, even ordinary users are exposed to an increasing variety of digital content every day. For example, digital content can be configured to focus on items that a user is most interested in, such as digital images, digital movies, and so on. Supplementary digital content is also configurable to support these most interesting items; examples of supplementary digital content include owner manuals, digital receipts, sales invoices, product keys, and shipping information.

[0002] Therefore, even a single digital content item that a user is most interested in may have multiple associated supplementary digital content items configured to support the use of that single item. Consequently, the user's task is to maintain and organize a large amount of digital content, which may be lost over time as the user changes between computing devices, online accounts, etc. Consequently, the functionality provided by this supplementary digital content is also lost. Summary of the Invention

[0003] This describes a technology implemented by computing devices that controls access to digital content through the use of non-fungible tokens (NFTs). This is executed by leveraging blockchain technology, enabling digital content associated with a project to be used to supplement the project's use (e.g., supplementing the use of physical projects, digital content, etc.) or to make other functions available based on user ownership of the project.

[0004] This invention presents a series of concepts in a simplified form, which are further described below in the detailed description. Therefore, this invention is not intended to identify essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter. Attached Figure Description

[0005] Specific embodiments are described with reference to the accompanying drawings. Entities shown in the drawings indicate one or more entities, and therefore the singular or plural forms of entities may be referred to interchangeably in the discussion.

[0006] Figure 1 This is a diagram of an environment in the example implementation that is operable to employ supplemental digital content access control techniques using NFTs as described in this article.

[0007] Figure 2 The system in the example implementation is depicted, showing in more detail... Figure 1 The service provider system's service platform operates when enabling transactions between client devices.

[0008] Figure 3 Depicting the response to Figure 2The system in the example implementation is a transaction initiated by a service provider system to mint NFTs.

[0009] Figure 4 The image depicts a casting process. Figure 3 The system is an example implementation of the generation of NFT data for NFTs.

[0010] Figure 5 Depicting the response to Figure 2 The system is an example implementation of an application that initiates transactions by a service provider system.

[0011] Figure 6 It depicts in more detail Figure 5 The system is generated as an example implementation of the application.

[0012] Figure 7 The system in an example implementation of supplementary content generation is described.

[0013] Figure 8 The system in the example implementation is described, in which the execution of the application is controlled by a distributed state machine of the blockchain system to control access to supplementary digital content based on ownership of NFTs.

[0014] Figure 9 This is a flowchart depicting the process in an example implementation of supplemental digital content access control using non-fungible tokens.

[0015] Figure 10 This is a flowchart depicting the process in an example implementation that generates and outputs visual indications in response to the successful verification of a non-fungible token describing the characteristics of a project listed using digital content.

[0016] Figure 11 An example system is shown, comprising various components of an example device, which can be implemented as described in reference. Figures 1 to 11 The computing devices described and / or utilized are of any type that implement the techniques described herein. Detailed Implementation

[0017] Overview

[0018] This describes a technology implemented by computing devices that controls access to digital content through the use of non-fungible tokens (NFTs). This is executed by leveraging blockchain technology, enabling digital content associated with a project to be used to supplement the project's use (e.g., supplementing the use of physical projects, digital content, etc.) or to make other functions available based on user ownership of the project.

[0019] In one example, transactions involving a project are processed by a service provider system. This project can be configured as a physical item (e.g., a physical object such as a watch, clothing, or product component) or digital content, such as digital images, digital audio, digital media, digital artwork, etc. Data is generated by the service provider system describing the project itself. If the project is a physical item, the data describes the physical characteristics of the physical item; for example, by scanning the project in two or three dimensions using a physical scanner to generate a "fingerprint" of the project. If the project is digital content, the data is generated from the data that forms the content itself; for example, the data is the data that forms the digital content, a hash of the data as digital content, and so on.

[0020] The service provider system then uses this data to initiate the minting of non-fungible tokens (NFTs) onto the blockchain. For example, the data generated above is "signed" with a private key associated with the blockchain account to, for instance, verify the authenticity of the data for the recipient of the item involved in the transaction. Other operations, such as approving "gasoline fees," may also be involved as part of the NFT minting process. The data is then minted by the nodes of the blockchain system and is thus merged into a block on the blockchain. At this point, the NFT is recorded irreversibly and tamper-proof as a description of the item's characteristics and the transactions involving it.

[0021] The service provider system is also configured to generate applications that control access to supplemental digital content associated with a project based on ownership of the NFT. In this example, the NFT corresponds to and describes the project (e.g., a physical project or digital content). Therefore, the NFT serves as a "twin" of the project, and ownership of it can be traced using blockchain. To utilize this "twin," the application is configured to control access to the supplemental digital content based on ownership of the NFT that can be verified via blockchain.

[0022] For example, once ownership of an NFT is verified, an application is created to control access to supplemental digital content (e.g., provided by a service provider system). In one example, the application may execute as part of a distributed state machine implemented by a blockchain system. An application is a collection of code and other data deployed by nodes of the blockchain system implementing the distributed state machine using cryptographically signed transactions. Once deployed, the application is configured to automatically execute its conditions as part of the blockchain.

[0023] In this scenario, the application is configured to provide access to supplemental digital content offered by the service provider system. Furthermore, this access is based on ownership of the NFT. Continuing the example above, the service provider system's service platform mints NFTs based on the occurrence of transactions involving the item. The supplemental digital content provides the service provider system with the ability to further communicate with the entity owning the NFT using an application executed by a distributed state machine “outside” the service provider system.

[0024] For example, supplemental digital content may include offers redeemable by the service provider system, such as discounts on subsequent transactions involving the project or different projects via the service platform, thereby reducing transaction costs. This digital content is provided by the service provider system to applications executed by a distributed state machine, for example via a network address, application programming interface (API), etc. Access to the supplemental digital content is controlled separately and distinctly by the application using NFT verification from the service provider system.

[0025] Subsequent exploitation of the supplementary digital content itself can be performed by an application executed by a distributed state machine and / or by a service provider system. In the first example, the digital content is accessed and exploited through application execution using a distributed state machine. In the second example, the application allows access to the supplementary digital content, which can then be cashed out at the service provider system via execution at the service provider system. Various types of supplementary digital content can be provided via these techniques, such as offers involving subsequent transactions at the service provider system, updates regarding whether an item's NFT is a twin, verification of the item's authenticity, and so on. Further discussion of these and other examples is included in the following sections and illustrated in the corresponding figures.

[0026] The following discussion describes an example blockchain environment employing the techniques described herein. Example processes that can be executed in the example environment as well as in other environments are also described. Therefore, the execution of the example processes is not limited to the example environment, and the example environment is not limited to the execution of the example processes.

[0027] Example Environment

[0028] Figure 1 This is an illustration of a blockchain environment 100 operable in an example implementation employing the techniques described herein. The blockchain environment 100 includes a blockchain system 102, a service provider system 104, and a plurality of client devices (represented as client devices 106, ..., 108) communicatively coupled to each other via a network 110.

[0029] Computing devices for implementing a blockchain environment 100 can be configured in various ways. For example, computing devices can be configured as desktop computers, laptops, mobile devices (e.g., handheld configurations such as tablets or mobile phones), IoT devices, wearable devices, AR / VR devices, servers, etc. Therefore, the range of computing devices extends from fully-resourced devices with abundant memory and processor resources to low-resource devices with limited memory and / or processing resources. Furthermore, although the term "computing device" is used in the singular in the examples discussed below, it also refers to several different devices, such as multiple servers in a server cluster used to perform operations "in the cloud," as in the context of... Figure 11 Further description.

[0030] The blockchain system 102 is implemented by multiple nodes 112. Each node 112 is a runtime system implemented using the processing, memory, and network resources of a corresponding computing device 114 that operates as the infrastructure of the blockchain 116. As part of this system, nodes 112 store, transmit, process, and manage the data constituting the blockchain 116. Figure 1 As shown, nodes 112 are interconnected to exchange data via network 110, such as a distributed and decentralized peer-to-peer network.

[0031] Blockchain 116 is formed using multiple blocks 120, and these multiple blocks 120 are... Figure 1 The block 120 is shown as including its respective block identifier (ID) 122 and transaction data 124. The transaction data 124 of block 120 includes multiple batches of confirmed transactions that have been hashed and encoded. Each block 120 includes a cryptographic hash of the previous block 120 in blockchain 116, thereby linking blocks 120 to each other to form blockchain 116. Therefore, block 120 cannot be retroactively altered without changing each subsequent block 120 in blockchain 116, and is thus protected from attacks by malicious parties.

[0032] To generate block 120 for addition to blockchain 116, node 112 is implemented as a "miner" to add the block of transactions to blockchain 116. Other nodes 112 in blockchain system 102 then check the validity of the transaction block and, based on this, determine whether to accept or reject the data. If valid, the transaction block, along with the block ID 122 of the corresponding block 120, is stored as transaction data 124, for example, along with the hash of the previous block in the chain, and is stored at the "last" or "top" of blockchain 116. Node 112 then broadcasts this transaction history via network 110 to share with other nodes 112. This distributed architecture across blockchain system 102 synchronizes block 120 of blockchain 116. Other types of nodes 112 are also included as part of blockchain system 102. In one such example, a full node is a node that stores the entire blockchain 116, for example, locally on a computer-readable storage medium of a corresponding storage device 118. Other types of nodes are also used to implement additional functions such as managing voting events, executing protocol operations, and enforcing rules.

[0033] Blockchain system 102 implements virtual machine 126, which represents various functionalities made possible by utilizing blockchain 116. In a first such example, virtual machine 126 implements a distributed ledger 128 for accounts 130 and the associated balances 132 of these accounts 130. Distributed ledger 128 supports the secure transfer of digital assets (e.g., cryptocurrency tokens or coins) between accounts 130 without being managed by a central authority as part of transaction data 124 stored as part of blockchain 116. Through the synchronous and distributed access supported by blockchain 116 as described above, changes to balances 132 (e.g., multiple tokens) are visible to any entity capable of accessing blockchain 116. Techniques supporting the management of balances 132 across accounts 130 are also implemented, for example, by enforcing rules that a corresponding account 130 will not transfer more coins than are available based on the balance 132 specified for that account 130.

[0034] In another example, virtual machine 126 implements a distributed state machine 134 that enables the execution of application 136. Distributed state machine 134 is implemented together with transaction data 124 within blocks 120 of blockchain 116, such that these blocks describe the accounts and balances of distributed ledger 128 as described above. Transaction data 124 also supports machine state, which can change from block to block in blockchain 116. In one example, application 136 may be executed as part of a “Turing-complete” decentralized virtual machine distributed across nodes 112 of blockchain system 102. Due to its Turing completeness, application 136 is computationally general to perform computing device operations, such as logical or computational functions. Therefore, application 136 can be executed by the processing system of a computing device as software that can be stored in a computer-readable storage medium on node 112 to perform various operations.

[0035] An example of an application 136 that can be executed as part of a distributed state machine 134 is a smart contract 138. The smart contract 138 can be executed automatically by node 112 of the distributed state machine 134 without user intervention (or with partial human-computer interaction as input when needed). The execution of the smart contract 138 involves obtaining data from a specified data source (e.g., a device accessible via network 110, an API, etc.) and, based on that data, initiating one or more operations based on conditions described in the smart contract 138. In one example, the smart contract 138 is an account 130 that includes a balance 132 and initiates transactions based on conditions specified by the smart contract 138, for example, to support auto-custody and other functions. Various other examples are also envisioned that support any executable operation implemented by computing devices using software.

[0036] Cryptocurrencies (e.g., cryptocurrency coins) are inherent assets of blockchain 116, and tokens are created "on top" of these blockchains. In the example of tokens, smart contract 138 implements non-fungible tokens (NFTs). NFTs comprise digital assets that are provably unique and therefore cannot be copied or divided. Therefore, NFTs are not exchanged by having the same value as coins in cryptocurrencies, but rather by having identifying information recorded as part of smart contract 138. This identifying information is immutably recorded on the token's blockchain 116, and thus ownership of the token is also recorded and tracked. Various types of information can be stored as part of the digital content represented by the NFT, examples of which include digital images, digital media, digital content, executable instructions of application 136 as described above, secure file links, in-game tokens, digital artwork, etc. Other examples of tokens are also envisioned that are fungible and therefore interchangeable.

[0037] Client devices 106 and 108 include respective client blockchain modules 140 and 142, which represent the functionality for client devices 106 and 108 to interact with the blockchain system 102. Examples of this functionality include, for instance, managing corresponding cryptographic wallets 144 and 146 in local storage devices 148 and 150. In this example, cryptographic wallets 144 and 146 store public and private cryptographic keys used to support interaction with the blockchain system 102 using corresponding user interfaces 152 and 154, and more specifically, interaction with the corresponding account 130 of the blockchain system 102.

[0038] The public key supports transactions to the address of account 130 obtained from the public key. These transactions are stored as part of blockchain 116 to remember the transactions as part of transaction data 124. In one example, the address of account 130 is generated by first generating a private key, for example, using randomization techniques. A corresponding public key is obtained from the private key, and then the address of account 130 is obtained from the public key, for example, as the full public key or as a shortened version of the public key. The private key is used to "unlock" transactions "locked" by the public key and gain access to account 130, for example, access to coins, tokens, or other information maintained as part of the transaction.

[0039] In one example, a transaction is initiated by client device 106 and client device 108. The transaction data is encrypted using a public key. Client device 108 then signs the transaction using a private key indicating that the transaction has not been modified, for example, by encrypting the data being sent in the transaction using the private key. The transaction can then be verified as authentic using the public key included in the data. Node 112 automatically verifies the authenticity of the transaction signed with the private key using the accompanying public key. Transactions that fail authentication are rejected by node 112. Authentic transactions are used as part of transaction data 124 in blocks 120 minted and added to blockchain 116 by node 112, for example, as part of distributed ledger 128. In this way, the virtual machine 126 of blockchain system 102 supports various functions by using distributed ledger 128, distributed state machine 134, and / or other blockchain and cryptographic features.

[0040] The blockchain environment 100 also includes a service provider system 104 that implements a service platform 156 for digital services 158, which are shown as being stored in storage device 160 and executable via a processing system. Digital services 158 relate to the electronic transfer of data and the implementation of data functions by computing devices to support a range of computing device operations. For example, digital services 158 include the creation, management, and distribution of digital content, such as web pages, applications, digital images, digital audio, digital video, etc., via network 110. Digital services 158 are also implemented to control access to and transfer of physical goods and services through corresponding digital content, such as sales, product listings, advertisements, etc. Digital services 158 also relate to the operation of computing resources (e.g., processing, storage, and network resources) of computing devices that support access to and management of digital content by the system.

[0041] The functionality of client devices 106 and 108 to access the digital service 158 of the service provider system 104 is represented by the corresponding client service modules 162 and 164. Client service modules 162 and 164 can be configured to access the digital service 158 via network 110, such as browsers, network-enabled applications, third-party plugins, etc.

[0042] The service provider system 104 also includes a control module 166. The control module 166 is configured to control the output of supplementary digital content 168 using an application 136 generated by the service provider system 104 and executed by a distributed state machine 134. For example, the service platform 156 includes a digital service 158 configured to support transactions of items, such as physical items or digital content, using a service provider account. In response to the transaction, the service platform 156 initiates the minting of an NFT describing the characteristics of the item being traded. For example, the service platform 156 generates data describing the item and provides this data to a blockchain system 102 used to mint NFTs as part of a blockchain 116, whose ownership is associated with the blockchain account 130 of the recipient of the item.

[0043] Service platform 156 is also configured to generate and initiate the minting of application 136, which is executed as part of the distributed state machine 134 of blockchain 116. Application 136 is configured to provide access to supplementary digital content 168 by client device 108 based on ownership of NFTs. In this way, the execution of application 136 and the use of supplementary digital content 168 provide the service provider system with the ability to further communicate with client device 108.

[0044] In the above "twin" example, the NFT corresponds to and describes the item (e.g., a physical item or digital content). Therefore, the NFT is used to verify the item as the object of a transaction, and thus increases the item's value by publicly revealing verifiable ownership of the NFT. To utilize this "twin," supplementary digital content 168 can be configured to encourage the entity that owns the item to retain the NFT. An example of this is configuring supplementary digital content 168 to include an offer. The offer can be redeemed by service provider system 104 to encourage future interactions with service provider system 104, such as by reducing transaction fees for subsequent sales of the item or different items via service platform 156. In this way, supplementary digital content 168 encourages the entity that owns the item to also retain ownership of the NFT, and thus retain the ability to use the NFT to verify the authenticity of the associated item. Further discussion of these and other examples is included in the following sections and is illustrated in the corresponding figures.

[0045] Generally, the functions, features, and concepts described with respect to the examples above and below are used in the context of the example processes described in this section. Furthermore, the functions, features, and concepts described with respect to the different figures and examples in this document are interchangeable with each other and are not limited to implementations in the context of a particular figure or process. Moreover, the boxes associated herein with different representative processes and corresponding figures can be applied together and / or combined in different ways. Therefore, the various functions, features, and concepts described herein with respect to different example environments, devices, components, figures, and processes can be used in any suitable combination and are not limited to the specific combinations represented by the examples listed in this specification.

[0046] Supplemental Digital Content Access Control

[0047] Figure 2 The example implementation of system 200 is depicted, which shows in more detail... Figure 1 The service provider system 104 and the service platform 156 perform operations when implementing transactions between client devices. Figure 3 Depicting the response to Figure 2 The example implementation of system 300 is used to initiate the casting of NFTs by the service provider system through transactions. Figure 4 The image depicts a casting process. Figure 3 The example implementation of generating NFT data for NFTs in System 400. Figure 5 Depicting the response to Figure 2 The example implementation of system 500 is a transaction initiated by the service provider system for casting the application. Figure 6 It depicts in more detail Figure 5 The example implementation of the application generated in System 600. Figure 7System 700 is described in an example implementation of supplementary content generation. Figure 8 System 800 in an example implementation is depicted, in which the execution of the application is controlled by a distributed state machine of the blockchain system to control access to supplementary digital content based on ownership of NFTs. Figure 9 Process 900 is depicted in an example implementation of supplemental digital content access control using non-fungible tokens. Figure 10 A sample implementation of process 1000 is described, which generates and outputs visual indications in response to successful verification of an NFT describing the characteristics of an item listed using digital content.

[0048] The following discussion describes techniques that can be implemented using the aforementioned systems and devices. Each aspect of the process is implemented in hardware, firmware, software, or a combination thereof. These processes are shown as a set of boxes specifying operations performed by one or more devices, and are not necessarily limited to the order in which the operations are performed by the respective boxes. References will be made to the following sections of the discussion. Figures 1 to 10 .

[0049] from Figure 2 Beginning with the example shown, service provider system 104 includes a service platform 156 with a service manager module 202. Service platform 156 is configured, for example, to support transactions between client devices 106, 108 by implementing a digital service 158, which can perform actions to transfer ownership and / or title to item 204 from client device 106 to client device 108. Digital service 158 can be accessed via network 110 using corresponding client service modules 162, 164 (e.g., browsers, web-enabled applications, plug-in modules, etc.) that can be executed by the respective client devices 106, 108.

[0050] An example of a transaction-supporting digital service 158 implemented by service platform 156 is represented as a list module 206, a transaction module 208, and an account manager module 210. List module 206 is configured to generate a digital content list 212 indicating that item 204 is available for purchase / transfer via service platform 156. For example, list module 206 demonstrates the functionality to generate a digital content list 212 indicating the availability of item 204, accessible via network 110 by client device 106. The digital content list 212 is then displayed as a webpage, in a dedicated application, etc., for potential buyers, such as client device 108, to access via network 110.

[0051] Client device 106 sends a request via client service module 162, which is received by list module, to list item 204 using digital content (box 902). The request specifies information describing item 204, such as text description 214 and digital image 216, to be included as part of digital content list 212. Client device 106 also identifies the provider of item 204 as, for example, seller 218. Once generated, digital content list 212 also includes option 220, which a user can select via user interface to initiate a transaction such as “purchase” or otherwise transfer ownership and / or title to item 204. The item is then listed using digital content (box 904).

[0052] The digital content list 212 can be configured to include various other information, such as a token 222 indicating that ownership of the NFT 224 corresponding to item 204 has been verified. For example, the service provider system 104 employs a blockchain interaction module 226 to access functionality available via blockchain 116 implemented through blockchain system 102. An example of this is a blockchain query module 228, configured to verify ownership of the NFT 224 associated with item 204 by querying a distributed ledger 128 maintained as part of blockchain 116, for example, an NFT 224 “twin” of item 204 associated with a specific blockchain account 130.

[0053] exist Figure 2 In the example, NFT 224 is shown as part of the transfer of ownership / ownership of item 204. However, in at least some cases, NFT 224 is not transferred to client device 108, but is minted as part of blockchain 116 and is accessible by client device 108 using a corresponding crypto wallet 146, as described below. Blockchain interaction module 226 also includes functions for managing additional NFT interactions, represented by NFT interaction manager module 230, including the ability to initiate the minting of NFT 224 and its transfer between blockchain accounts 130.

[0054] The account manager module 210 represents the functionality to manage multiple service provider accounts 232 and the information associated with those accounts. Each service provider account 232 is associated with a corresponding user to support transactions and interact with functionality available via the service platform 156. This includes: a service account ID 234 that uniquely identifies the service provider account 232; and transaction history data 236 that identifies transactions executed using each account, for example, from the service provider account associated with client device 106 to the service provider account associated with client device 108. Therefore, the transaction history data 236 is configured to include various information, examples of which include, for example, a blockchain account ID 238 for receiving NFT 224 as part of a transaction for cryptographic purposes, a description item 204 for minting NFT 224, and / or NFT data 240 for the transaction, etc.

[0055] For example, Service Manager Module 202 generates a list of digital content 212 in response to input received from Client Device 106 via Network 110. Another Client Device 108, after viewing the list of digital content 212 via Network 110, initiates a transaction to acquire Item 204, for example, by selecting Option 220. The transaction transfers ownership of Item 204 (e.g., in response to verification of a transfer of funds that may include crypto coins or other traditional financial currencies), which is recorded as part of Transaction History Data 236. Thus, Transaction History Data 236 remembers transactions and can be used as the basis for generating an NFT 224 for controlling supplementary digital content 168 in the discussion below. Therefore, this data (box 906) generated by Transaction Module 208 in response to the completion of the transaction for Item 204 is received by Account Manager Module 210 and stored (box 908) as part of Service Provider Account 232.

[0056] After the transaction is completed, the blockchain interaction module 226 of the service provider system 104 is configured to initiate the minting of NFT 224 through blockchain system 102 (box 910). For example, the account manager module 210 identifies the service provider account 232 associated with client device 108 (and more specifically, the user interacting with that device), in the previous example, client device 108 acquiring ownership of the item. Thus, the account manager module 210 also identifies the blockchain account ID 238 and the associated blockchain system 102 to receive NFT 224. In the implementation, the blockchain interaction module 226 outputs options that the user can choose to specify blockchain system 102 from multiple blockchain systems and associated blockchain accounts 130. This includes specifying a particular blockchain system and / or may include specifying a particular one of multiple NFT systems built "on top of" the respective blockchain system.

[0057] The NFT interaction manager module 230 transmits transaction data 236 to the minting initiation module 302, which is configured to interact with the blockchain system 102 to mint NFT 224 as part of blockchain 116. NFT 224 is minted into blockchain account 130 as part of the distributed ledger 128 using a public key associated with the account (e.g., block account ID 238). NFT 224 can then be accessed using a private key stored in the cryptographic wallet 146 of the owner of NFT 224. Thus, NFT data 240 is "signed" by the private key associated with blockchain account 130. Transaction data 236 is then minted by node 112 of blockchain system 102 and subsequently merged into block 120 of blockchain 116. After minting, NFT 224 is recorded irreversibly and tamper-proofly in the distributed ledger 128, describing the item's characteristics and the transactions involved.

[0058] Figure 4 An example of generating data that describes the item in more detail is depicted, which serves as the basis for casting NFT 224. Item 204 can be configured in several ways. In the first example, item 204 is physical item 402, as shown in... Figure 4 The example shown is a watch. Therefore, in such an example, a physical item scanner 404 is used to generate fingerprint data 406 describing the physical characteristics 408 of the physical item 402. The physical item scanner 404 can be configured in various ways, including digital image scanners, depth sensors, infrared and ultrasonic scanners, X-ray scanners, and any other type of scanner that can be used to determine the physical relationships between the parts of the physical item 402 as, for example, a two-dimensional or three-dimensional map.

[0059] In implementation, fingerprint data 406 is configured to uniquely identify physical item 402, even for physical items with the same brand and model. This is done, for example, by making the resolution of physical item scanner 404 sufficient to identify differences in the manufacturing, assembly, and / or wear of parts of physical item 402. The fingerprint data 406 is then used by NFT data generation module 410 to generate NFT data 240, which may include other data describing the transaction, such as transaction amount, address (e.g., place of shipment and / or place of delivery), etc.

[0060] In the second example of project 204, which is digital content 412, the NFT data generation module 410 generates NFT data 240 from the digital content 412 itself. For example, digital content 412 includes digital images 414, digital audio 416, digital media 418, executable code 420, and so on. Therefore, in this example, based on this data, NFT data 420 is generated as, for example, a hash of data representing digital content 412, the digital content 412 as a whole, etc. Various other examples of NFT data 240 generation as the basis for minting NFT 224 are also envisioned. The NFT data 240 is then transmitted by the service provider system 104 to the blockchain system 102 to be minted as a tamper-proof and verifiable part of the blockchain 116.

[0061] Next, the service provider system 104 generates an application 504 using the application generation module 502. Application 504 can be executed as part of a distributed state machine (DST) 134 implemented by blockchain 116 to allow access to supplementary digital content using NFT 224 (box 912). In the illustrated example, the application generation module 502 includes a user interface 506 that receives user input to specify conditions for defining code that is executed to implement application 504, such as logical operations. This includes the designation of an NFT ID 508, which serves as the basis for controlling access to the supplementary digital content by application 504.

[0062] This also includes specifying location 510, at which supplementary digital content can be retrieved via network 110. For example, location 510 could be specified as a network address (URL), an API of service provider system 104, etc. Therefore, in this example, location 510 is specified, rather than the supplementary digital content 168 itself. This supports the ability of service provider system 104 to dynamically adjust what will be sent as supplementary digital content 168 at future points in time. For example, code executing as part of application 504 can be configured to "check" location 510 at predefined time intervals to check the availability of supplementary digital content 168. If available, application 504 can execute to verify ownership of the NFT identified by NFT ID 508, and once verified, access to supplementary digital content 168 is permitted.

[0063] Once generated, the application is passed to the minting initiation module 302 to generate transaction data 512 for the blockchain system 102 to mint the application 504 to the corresponding blockchain account 516 based on the blockchain account ID 514. Once minted, the application 504 is executed by the node 112 of the blockchain system 102 within the blockchain account 516 of the distributed state machine 134 (box 914), and thus executed separately and distinctly from the service provider system 104 to control access to the supplementary digital content 168.

[0064] Figure 6 An example of the operation of control module 166 is depicted in more detail. In this example, control module 166 is configured to generate and display supplementary digital content 168 (box 916) for access by application 504, which executes as part of the distributed state machine 134 of blockchain system 102. The functionality of control module 166 is represented by generation module 602, configured to generate supplementary digital content 168; transmission module 604, configured to control the transmission of supplementary digital content 168 to application 504; and execution module 606, configured to implement the functionality of supplementary digital content 168.

[0065] like Figure 7 As shown in the example, the generation module 602 includes a recipient determination module 702, which is configured to output a user interface to receive user input to specify the intended recipient of the supplementary digital content 168. Functions assisting in this include a service provider account query module 704 and a blockchain account query module 706, which are configured to utilize information provided via service provider account 232 and blockchain account 130, respectively.

[0066] In one example, the service provider account query module 704 is configured to query service provider accounts 232, and more specifically, to query transaction history data 236 associated with these accounts. This is performed to locate information that can be used to determine "who" will receive the supplementary digital content 168, for example, which accounts are involved in transactions involving specific items 204 and / or NFT 224. For example, this can be used to determine which items 204 and / or NFT 224 are already the subject of transactions using the corresponding accounts, and based on this, to configure supplementary digital content 168 for the corresponding NFTs based on these items.

[0067] This can also be performed to determine "how" the supplementary digital content will be delivered. In one example, it is determined that a transaction involving a specific NFT is associated with service provider account 232. Then, using delivery module 604, the supplementary digital content 168 is sent using the network address associated with service provider account 232. Access to the functionality of the supplementary digital content 168, such as "unlocking" the offer, is controlled by verifying ownership of NFT 224 by application 504.

[0068] The blockchain account query module 706 is configured to utilize information available via blockchain account 130. Continuing the example above, the blockchain account query module 706 queries blockchain 116 to determine whether the corresponding NFT 224 is still owned / owned by blockchain account 130 referenced by service provider account 232. If the corresponding NFT 224 is not owned / owned by blockchain account 130 referenced by service provider account 232, the supplementary digital content 168 is not transmitted, thereby saving computing resources for both service provider system 104 and client device 108. If the corresponding NFT 224 is owned / owned by blockchain account 130 referenced by service provider account 232, the generation and transmission of supplementary digital content 168 continue.

[0069] Content generation module 708 is configured to generate content that is included as part of supplementary digital content 168, and includes an NFT ID 710 referencing NFT 224, which is an object of supplementary digital content 168. The content includes text, images, unique codes, and executable functionality to be included for display to the recipient of supplementary digital content 168 and to provide associated functionality, such as access to a discount offer. The content can be configured in various ways, examples of which include owner's manuals, digital receipts, sales invoices, product keys, shipping information, digital marketing content, offers redeemable by service provider system 104, etc. In some examples, the content is configured to encourage the retention of NFT 224, allowing NFT 224 to be used at a later time, for example, by service provider system 104 to verify the authenticity of item 204. In this way, the recipient of NFT 224 is encouraged to maintain ownership of NFT 224 to utilize this functionality themselves.

[0070] Once deployed and minted into the distributed state machine 134 of the blockchain system 102, application 504 is configured to control access to supplementary digital content 168 in response to verification of NFT 224. Figure 8In the illustrated example, application 504 is configured to query a specified location 510 at service provider system 104 to obtain supplemental digital content 168. This can be performed in response to conditions defined by application 504 being met at predefined intervals, etc. For example, execution module 606 of service provider system 104 can provide application 504 with input that supplemental digital content 168 is available. In these examples, this causes application 504 to obtain supplemental digital content 168 for distribution to client device 108, for example, as specified by service provider system 104 as part of supplemental digital content 168 (e.g., specified by a network address obtained from service provider account 232) and / or specified in the encoding of application 504 itself.

[0071] In response to the verification of ownership of NFT 224, access to supplementary digital content 168 is provided (box 918). In a first example, this is performed by executing application 504 as part of distributed state machine 134 to verify ownership of NFT 224. For example, input received from client device 108 can be used to verify ownership of NFT 224 in blockchain account 130 using a private key stored in cryptographic wallet 146 of client device 108. Access to supplementary digital content 168 is then granted by application 504. In another example, the verification of ownership of NFT 224 is performed at execution module 606 of service provider system 104, for example, as part of communication with client device 108 as described above, to verify that NFT 224 remains in blockchain account 130 associated with client device 108 using cryptographic wallet 146. In this way, the owner / owner of NFT 224 is encouraged to maintain ownership, which can be used to support various functions, examples of which are described below.

[0072] Figure 10 The process 1000 in the example implementation is depicted, where the verification of NFTs describing the characteristics of items is used to control the output as visual indicators of markers in the digital content listing the items. Starting with this example, the listing module 206 of the service manager module 202 receives data from the client device 108 as a request (box 1002) for the service provider system to list items 204 using digital content. As previously described, this request may include text descriptions 214, digital images 216, seller identification 218, service provider accounts 232, and so on.

[0073] In response, the list module 206 employs the blockchain interaction module 226 to use blockchain 116 to verify ownership of the non-fungible token (NFT) 224 associated with item 204 (box 1004). This can be performed in various ways, such as by using the blockchain query module 228 to verify that the NFT 224 is held in the blockchain account 130 associated with the client device 108.

[0074] In response to successful verification of ownership of NFT 224, digital content (box 1006) is generated including a visual indication that NFT 224 has been verified. Continuing with the "twin" example above, NFT 224 is configured to describe characteristics of item 204, such as physical characteristic 408 of physical item 402. Therefore, the visual indication in this example indicates that NFT 224 is available and thus can be used as part of a transaction and for verifying item 204. An example of the visual indication is shown as follows. Figure 2 Marker 222 in the list of digital content 212.

[0075] Other examples are also envisioned, including the use of visual indicators that direct item 204 to which physical features detected in a subsequent "re-scan" by a service provider system using a physical item scanner 404 are also verified as corresponding to NFT 224. The digital content is then output as a list of items and visual indicators (box 1008), for example, for subsequent access by a client device for purchase. Therefore, the techniques described herein control the distribution of supplementary digital content 168 in a manner that encourages the retention of NFT 224, and can be used to support various additional functionalities, including the verification of item 204 described by NFT 224.

[0076] Example systems and devices

[0077] Figure 11 An example system is generally shown at 1100, which includes an example computing device 1102, representing one or more computing systems and / or devices implementing the various technologies described herein. This is illustrated by including a control module 166. For example, computing device 1102 may be configured as a server for a service provider, a device associated with a client (e.g., a client device), a system-on-a-chip, and / or any other suitable computing device or computing system.

[0078] The example computing device 1102 shown includes a processing system 1104 communicatively coupled to each other, one or more computer-readable media 1106, and one or more I / O interfaces 1108. Although not shown, the computing device 1102 also includes a system bus or other data and command transmission system that couples the various components to each other. The system bus may include any one or a combination of different bus architectures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and / or a processor or local bus utilizing any of the various bus architectures. Various other examples are also contemplated, such as control lines and data lines.

[0079] Processing system 1104 represents the functionality of performing one or more operations using hardware. Therefore, processing system 1104 is shown as including hardware elements 1110 configurable as processors, function blocks, etc. This includes other logic devices implemented in hardware as application-specific integrated circuits (ASICs) or formed using one or more semiconductors. Hardware elements 1110 are not limited by the materials forming them or the processing mechanisms employed therein. For example, a processor may be configured as a semiconductor and / or transistor (e.g., an electronic integrated circuit (IC)). In this case, the processor-executable instructions are electronically executable instructions.

[0080] Computer-readable storage medium 1106 is shown as including memory / storage device 1112. Memory / storage device 1112 represents a memory / storage capacity associated with one or more computer-readable media. Memory / storage device 1112 includes volatile media (e.g., random access memory (RAM)) and / or non-volatile media (e.g., read-only memory (ROM), flash memory, optical disk, magnetic disk, etc.). Memory / storage device 1112 includes fixed media (e.g., RAM, ROM, fixed hard disk drive, etc.) and removable media (e.g., flash memory, removable hard disk drive, optical disk, etc.). Computer-readable medium 1106 can be configured in various other ways as further described below.

[0081] Input / output interface 1108 represents a function that allows a user to input commands and information into computing device 1102, and also allows information to be presented to the user and / or other components or devices using various input / output devices. Examples of input devices include a keyboard, cursor control devices (e.g., a mouse), a microphone, a scanner, touch functionality (e.g., a capacitive sensor or other sensors configured to detect physical touch), a camera (e.g., using visible or invisible wavelengths such as infrared frequencies to identify movement as a gesture not involving touch), etc. Examples of output devices include display devices (e.g., a monitor or projector), speakers, a printer, a network interface card (NIC), haptic-responsive devices, etc. Therefore, computing device 1102 can be configured in various ways to support user interaction, as further described below.

[0082] This document describes various technologies within the general context of software, hardware components, or program modules. Typically, such modules include routines, programs, objects, elements, components, data structures, etc., that perform specific tasks or implement specific abstract data types. The terms “module,” “function,” and “component,” as used herein, generally refer to software, firmware, hardware, or a combination thereof. The technologies described herein are characterized as platform-independent, meaning they can be configured on a wide range of commercial computing platforms with various processors.

[0083] The implementation of the modules and technologies is stored on or transmitted across some form of computer-readable medium. Computer-readable medium includes various media accessed by computing device 1102. By way of example and not limitation, computer-readable medium includes "computer-readable storage medium" and "computer-readable signal medium".

[0084] "Computer-readable storage medium" means a medium and / or device that enables the persistent and / or non-transitory storage of information, compared to mere signal transmission, carrier waves, or signals themselves. Therefore, computer-readable storage medium refers to a non-signal-bearing medium. Computer-readable storage media include hardware such as volatile and non-volatile, removable and non-removable media and / or storage devices, implemented in a way or technique suitable for storing information, such as computer-readable instructions, data structures, program modules, logic elements / circuits, or other data. Examples of computer-readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other storage technologies, CD-ROM, Digital Universal Optical Disc (DVD) or other optical storage devices, hard disks, magnetic tape, magnetic tape, disk storage devices or other magnetic storage devices, or other storage devices, tangible media, or articles of art suitable for storing desired information and accessible by a computer.

[0085] "Computer-readable signal medium" refers to a signal-bearing medium configured to transmit instructions to the hardware of computing device 1102, for example, via a network. Signal media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals, such as carrier waves, data signals, or other transmission mechanisms. Signal media also includes any information delivery medium. The term "modulated data signal" refers to a signal whose characteristics are set or altered in a manner that, for example, encodes information in the signal. By way of example and not limitation, communication media include wired media, such as wired networks or direct-line connections, and wireless media, such as acoustic, RF, infrared, and other wireless media.

[0086] As previously described, hardware element 1110 and computer-readable medium 1106 represent modules, programmable device logic, and / or fixed device logic implemented in hardware form, which in some embodiments is used to implement at least some aspects of the techniques described herein, such as executing one or more instructions. The hardware includes components of integrated circuits or systems-on-a-chip, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), and other implementations in silicon or other hardware. In this context, the hardware operates as a processing device for executing program tasks defined by instructions and / or logic embodied in the hardware, and as hardware for storing the execution instructions, such as the previously described computer-readable storage medium.

[0087] The foregoing combinations are also used to implement the various techniques described herein. Therefore, software, hardware, or executable modules are implemented as one or more instructions and / or logic embodied on some form of computer-readable storage medium and / or by one or more hardware elements 1110. Computing device 1102 is configured to implement specific instructions and / or functions corresponding to software and / or hardware modules. Thus, the implementation of modules executable by computing device 1102 as software is at least partially in hardware, for example, by using computer-readable storage media and / or hardware elements 1110 of processing system 1104. Instructions and / or functions may be executed / operated by one or more articles of art (e.g., one or more computing devices 1102 and / or processing system 1104) to implement the techniques, modules, and examples described herein.

[0088] The techniques described herein are supported by various configurations of computing device 1102 and are not limited to specific examples of the techniques described herein. This functionality can also be implemented, in whole or in part, through a distributed system, such as via platform 1116 through the “cloud” 1114, as described below.

[0089] Cloud 1114 includes and / or represents platform 1116, which represents resource 1118. Platform 1116 abstracts the underlying functionality of the hardware (e.g., servers) and software resources of cloud 1114. Resource 1118 includes applications and / or data that can be utilized when computer processing is performed on a server located remotely from computing device 1102. Resource 1118 may also include services provided via the Internet and / or via subscriber networks such as cellular or Wi-Fi networks.

[0090] Platform 1116 abstracts resources and functions to connect computing device 1102 to other computing devices. Platform 1116 also abstracts resource scaling to provide a level of scaling for resources 1118 implemented via platform 1116 corresponding to encountered needs. Therefore, in an interconnect device implementation, the implementation of the functions described herein can be distributed throughout system 1100. For example, functions can be implemented partly on computing device 1102 and partly via platform 1116, which abstracts the functions of cloud 1114.

[0091] in conclusion

[0092] Although the invention has been described in language specific to structural features and / or methodological actions, it should be understood that the invention as defined in the appended claims is not necessarily limited to the specific features or actions described. Rather, the specific features and actions are disclosed as exemplary forms of implementing the claimed invention.

Claims

1. A method implemented by a computing device of a service provider system, the method comprising: The computing device of the service provider system receives transaction data describing the project, and the transaction is implemented via the service platform of the service provider system. In response to the transaction, the computing device of the service provider system initiates the minting of non-fungible tokens describing the project as part of the blockchain associated with the recipient of the project; The computing device of the service provider system generates an application that references the non-fungible token, which can be executed as part of a distributed state machine implemented by the blockchain to allow access to supplemental digital content using the non-fungible token; In response to the verified ownership of the non-fungible token by the blockchain account of the recipient of the project, access to the supplementary digital content is provided; The supplementary digital content is generated by the computing device of the service provider system, and The computing device of the service provider system presents the supplementary digital content in a manner accessible via the network by the application that executes as part of the distributed state machine.

2. The method according to claim 1, wherein, The presentation is performed using the application programming interface of the service provider system.

3. The method according to claim 1, further comprising: The computing device of the service provider system receives a request to list the items using digital content; The computing device of the service provider system uses the digital content to list the items; as well as In response to the completion of the transaction of the project, the data is generated by the computing device of the service provider system, the transaction being initiated via input initiated through the digital content.

4. The method according to claim 1, further comprising: The computing device of the service provider system identifies the service provider account of the service provider system involved in the transaction from the data; as well as Identify a blockchain account associated with the identified service provider account, and wherein the blockchain account is used to initiate the minting of the blockchain.

5. The method according to claim 4, wherein, The blockchain account is associated with the service provider account of the service provider system, and the presentation includes transmitting the supplementary digital content to a network address associated with the service provider account.

6. The method of claim 1, further comprising the minting of the application initiated by the computing device of the service provider system as part of the distributed state machine implemented by the blockchain.

7. The method according to claim 1, wherein, The project is a physical project, and the non-fungible token includes a generated fingerprint describing the physical characteristics of the physical project.

8. The method according to claim 1, wherein, The project in question is digital content.

9. A method implemented by a computing device, the method comprising: The computing device receives a request from the service provider system to list items using digital content; The computing device uses blockchain to verify ownership of non-fungible tokens associated with the project; In response to the computing device's successful verification of ownership of the nonfungible token, the digital content is generated as a visual indication that the nonfungible token has been verified. The computing device outputs the digital content as a list of the items and the visual indications; The computing device receives input via the digital content to initiate a transaction to purchase the item; The computing device receives data describing the transaction; In response to the transaction, the computing device initiates the minting of a second non-fungible token describing the project as part of a blockchain associated with the recipient of the project; The computing device generates an application that references the second non-fungible token, the application being able to execute as part of a distributed state machine implemented by the blockchain, to allow access to supplementary digital content using the second non-fungible token; The supplementary digital content is generated by the computing device, and The computing device presents the supplementary digital content in a manner accessible via a network by the application that executes as part of the distributed state machine.

10. The method according to claim 9, wherein, The visual indication is a marker.

11. The method according to claim 10, wherein, The marker is displayed as part of the digital content along with the identifier of the service provider account in the service provider system, which is associated with the seller of the project.

12. The method according to claim 9, wherein, The digital content includes the ability to initiate transactions to purchase the project via the service provider's system.

13. A system comprising: Processing system; as well as A computer-readable storage medium having instructions stored thereon, the instructions being responsive to execution by the processing system to cause the processing system to perform operations, the operations including: Process transactions for projects implemented through service provider system accounts; Identify the blockchain account referenced by the service provider's system account; Initiate the minting of non-fungible tokens describing the project into the blockchain account that is part of the blockchain associated with the recipient of the project; An application that references the non-fungible token is generated, which can be executed as part of a distributed state machine implemented by the blockchain to allow access to supplemental digital content using the non-fungible token; In response to the verified ownership of the non-fungible token by the blockchain account of the recipient of the project, access to the supplementary digital content is provided; and The supplementary digital content is transmitted to the application, which executes the application as part of the distributed state machine, and the non-fungible token is used to control access to the supplementary digital content.

14. The system according to claim 13, wherein, The project is a physical project, and the non-fungible token includes a fingerprint describing the physical characteristics of the physical project.

15. The system according to claim 13, wherein, The project in question is digital content.

16. The system of claim 13, further comprising initiating the minting of the application as part of the distributed state machine implemented by the blockchain.

17. The system of claim 13, further comprising, in response to verification of ownership of the non-fungible token, using the supplemental digital content to reduce transaction costs for subsequent transactions via the service provider system.

18. The system according to claim 17, wherein, The subsequent transactions involve the project in question.