Advances in digital asset management have resulted in different types of digital assets that may be used by users of computer systems. For example, a digital asset may be leveraged to facilitate tracking distribution of a resource through a supply chain network. Information associated with the distribution of the resource through the supply chain network may be recorded in a distributed ledger (e.g., a blockchain).
The accompanying drawings illustrate various embodiments and are a part of the specification. The illustrated embodiments are merely examples and do not limit the scope of the disclosure. Throughout the drawings, identical or similar reference numbers designate identical or similar elements.
Systems and methods for using a semi-fungible digital asset in a supply chain ecosystem are described herein. In certain examples, for instance, an exemplary method may include assigning, by a resource distribution system, a semi-fungible digital asset to a plurality of resources. The semi-fungible digital asset may include a resource counter. The method may further include setting, by the resource distribution system, a value of the resource counter based on a number of resources in the plurality of resources. The method may further include detecting, by the resource distribution system, a distribution event associated with the plurality of resources. The method may further include adjusting, by the resource distribution system, the value of the resource counter based on the distribution event.
As used herein, a “semi-fungible digital asset” may refer to any suitable type of digital asset (e.g., a semi-fungible token (“SFT”)) that may be configured to be both fungible and non-fungible during its lifecycle and that may be used to track resources. Semi-fungible digital assets such as those described herein may define or otherwise include one or more operating parameters. Such operating parameters of a semi-fungible digital asset may specify any suitable information associated with when and/or where a semi-fungible digital asset may be used, who may access information associated with the semi-fungible digital, when an authorized entity may access information associated with the semi-fungible digital asset, an amount of or how many resources are currently associated with the semi-fungible digital asset, and/or any other suitable parameters. Semi-fungible digital assets such as those described herein may each be unique but may include fungible components. For example, a semi-fungible digital asset may include a resource counter as a parameter that may be considered as a fungible component of the semi-fungible digital asset. While the resource counter has a value greater than zero, the semi-fungible digital asset may be considered as having fungible characteristics. However, when the resource counter has a value of zero, the semi-fungible digital asset may be considered as having non-fungible characteristics. Exemplary semi-fungible digital assets will be described further herein.
Various advantages and benefits are associated with the systems and methods for using a semi-fungible digital asset in a supply chain ecosystem described herein. For example, systems and methods such as those described herein provide a secure and efficient way of tracking/managing end-to-end distribution, custody, and/or use (e.g., consumption) of resources throughout a supply chain ecosystem (e.g., from manufacturer to an end user). In addition, by using a semi-fungible digital asset that includes a resource counter, end-to-end resource inventory controls may be implemented throughout the supply chain ecosystem. For example, semi-fungible digital assets such as those described herein may be used as a flow control mechanism such that, once a resource consumption/resource counter threshold is crossed, flow of a resource is increased, decreased, started/stopped, etc. Further, semi-fungible digital assets such as those described herein may be used to govern or transition between different rates, classes of services/queues, or invoke back off scaling mechanisms/orchestrations. Moreover, systems and methods such as those described herein may facilitate obtaining information during distribution and/or use of resources that may be used to optimize distribution processes, track usage of resources, and/or provide a secure flow of records. These and other benefits that may be provided by systems and methods described herein will be evident from the disclosure that follows.
Memory 102 may maintain (e.g., store) executable data used by processor 104 to perform any of the operations described herein. For example, memory 102 may store instructions 106 that may be executed by processor 104 to perform any of the operations described herein. Instructions 106 may be implemented by any suitable application, software, code, and/or other executable data instance.
Memory 102 may also maintain any data received, generated, managed, used, and/or transmitted by processor 104. Memory 102 may store any other suitable data as may serve a particular implementation. For example, memory 102 may store data representative of semi-fungible digital assets, analytical information associated with distribution and/or use of semi-fungible digital assets, and/or any other suitable data.
Processor 104 may be configured to perform (e.g., execute instructions 106 stored in memory 102 to perform) various processing operations associated with distribution of resources through a supply chain ecosystem. For example, processor 104 may perform one or more operations described herein to use a semi-fungible digital asset to track and/or facilitate distribution of resources through the supply chain ecosystem, including setting and adjusting a value of a resource counter of a semi-fungible digital asset based on distribution events. These and other operations that may be performed by processor 104 are described herein.
System 100 (e.g., processor 104) may be configured to provide any suitable service and/or feature that may be associated with semi-fungible digital assets as may serve a particular implementation. For example, system 100 may be configured to generate digital assets (e.g., semi-fungible digital assets, non-fungible digital assets, etc.), manage access to information associated with digital assets, facilitate sharing of digital assets, facilitate use of resources associated with digital assets, and/or provide any other suitable service and/or feature that may facilitate using digital assets in a supply chain ecosystem.
As used herein, a “supply chain ecosystem” may refer to a network of entities that may be associated with manufacture, distribution, and/or use of resources such as those described herein. A supply chain ecosystem may include any suitable type of distribution channel as may serve a particular implementation. For example, in certain implementations, a supply chain ecosystem may include a digital distribution channel through which digital resources may be digitally distributed to end users. Alternatively, a supply chain ecosystem may include a physical distribution channel through which physical resources may be physically shipped to end users. Alternatively, a supply chain ecosystem may include a combination of a digital distribution channel and physical distribution channel.
Semi-fungible digital assets such as those described herein may be implemented in a supply chain ecosystem in any suitable manner. For example, semi-fungible digital assets such as those described herein may be included in a bill of lading, a bill of materials, may be used for recall tracing, tax and tariff, and/or granular cost allocation through the supply chain ecosystem, through subsidiaries, through multiple business units and/or cost centers, etc.
The use of semi-fungible digital assets in a supply chain ecosystem may provide any suitable data associated with resources. For example, such data may provide country of origin of a resource, eco-friendly status of a resource, and/or carbon data associated with a resource to end users for any suitable purpose (e.g., to support fair trade initiatives, buy local initiatives, buy organic initiatives, anti-blood diamond initiatives, etc.).
In certain examples, system 100 may be configured to generate semi-fungible digital assets. This may be accomplished in any suitable manner. For example, system 100 may provide any suitable user interface to facilitate a user selecting parameters to be used to generate semi-fungible digital assets. Any suitable protocol (e.g., a blockchain protocol) may be used to facilitate generating a semi-fungible digital asset as may serve a particular implementation. For example, system 100 may use an Ethereum-based SFT standard such as ERC-1155 with added functions such as those described herein to facilitate generating semi-fungible digital assets.
In certain implementations, semi-fungible digital assets such as those described herein may be implemented by or incorporated in smart contracts that are configured to facilitate tracking distribution and/or use of resources in a supply chain ecosystem. Such a smart contract may be configured to automatically execute one or more operations based on satisfaction of a predefined condition. As used herein, the expression “automatically” means that an operation (e.g., a recording operation in a distributed record) or series of operations are performed without requiring further input from a user. For example, a detected use of a resource may trigger automatic execution of the smart contract including automatically accessing a distributed record and automatically updating of a value of a resource counter of a semi-fungible digital asset based on the detected use.
Plurality of resources 206 may include any suitable resource that may be associated with semi-fungible digital asset 202. In certain examples, plurality of resources 206 may correspond to digital resources that may be distributed by way of any suitable digital content distribution network, such as described herein. For example, plurality of resources 206 may include access authorization to access digital content and/or services. In certain alternative implementations, plurality of resources 206 may correspond to physically consumable resources that may be distributed by way of a physical distribution network and physically consumed by one or more users. For example, plurality of resources 206 may include a pharmaceutical that may be distributed to and physically consumed (e.g., through ingestion) by an end user in certain implementations.
In certain examples, resources included in plurality of resources 206 may be multi-dimensional. For example, a resource may correspond to a content delivery network (“CDN”) that may have multiple dimensions in the form of storage, sessions, data transfer, etc. and may be further differentiated for caching hierarchy (e.g., origin, shield cache, edge cache, mobile edge computing, etc.), session types (e.g., new, concurrent, web forms, CTAs, advertisement insertions/tracking, dynamic events, etc.), and/or data transfer (e.g., small object, large object, peer-to-peer/BitTorrent/IPFS offload, long-lived streams, etc.). Semi-fungible digital asset 202 may be used to track usage of such resources across each dimension and adjust one or more resource counters to either limit the service for that dimension or change the charging/pricing tier dependent on multi-dimensional models associated with such resources.
In certain examples, resources included in plurality of resources 206 may be fungible with respect to each other. That is, each of resources 206-1 through 206-N may be interchangeable and may be traded like-for-like with each other. For example, in implementations where plurality of resources 206 are pharmaceuticals, each resource included in plurality of resources 206 may correspond to an instance of the same pharmaceutical (e.g., the same pill).
To illustrate an example, semi-fungible digital asset 202 may be configured to track usage of multiple different resources associated with a video conference call. For example, semi-fungible digital asset 202 may include a first resource counter that has a value based on an amount of bandwidth available during the video conference call, a second resource counter having a value based on the number of available spots to participate in the video conference call, and a third resource counter having a value based on the number of available break out rooms. In such an example, system 100 may be configured to monitor the bandwidth, the available spots, and the available break out rooms during the course of the video conference call and adjust the value of each of the first, second, and third resource counters accordingly.
In certain examples, the multiple resource counters may have a cumulative effect such that if the value of any of them goes below a predefined threshold (e.g., if the value of any one of them goes to zero), they all may be considered as having gone below the predefined threshold. To illustrate, in the example described above, the available bandwidth going to zero in a video conference call may result in all of the resource counters being considered as having gone to zero. In such an example, any of the resource counters going below the predefined threshold may trigger a predefined operation. For example, a relatively higher service tier associated with providing the video conference call may be triggered in response to any of the resource counters going below the predefined threshold.
In certain alternative implementations, multiple semi-fungible digital assets may be linked together or otherwise associated in any suitable manner to facilitate tracking usage of multiple different resources. For example, instead of a single semi-fungible digital asset (e.g., semi-fungible digital asset 202) being used in the example described above, a first semi-fungible digital asset may be provided that includes a first resource counter that has a value based on an amount of bandwidth available during the video conference call, a second semi-fungible digital asset may be provided that includes a second resource counter having a value based on the number of available spots to participate in the video conference call, and a third semi-fungible digital asset may be provided that includes a third resource counter having a value based on the number of available break out rooms.
System 100 may be implemented in any suitable manner as may serve a particular implementation.
Distributed record 306 may correspond to any suitable type of distributed record as may serve a particular implementation that may be configured to track distribution of plurality of resources 206. For example, distributed record 306 may correspond to a distributed ledger that is implemented using blockchain technology in certain examples. Although distributed record 306 is shown as being separate from resource supplier system 302, it is understood that a copy of distributed record 306 may be stored in any suitable storage device associated with resource supplier system 302 and/or any other suitable computer system. Alternatively, distributed record 306 may be distributed across resource supplier system 302 and any other suitable computer system.
Resource supplier system 302 may interface with distributed record 306 using any communication platforms and technologies suitable for transporting data and/or communication signals, including known communication technologies, devices, media, and protocols supportive of remote communications, examples of which include, but are not limited to, data transmission media, communications devices, and data transmission protocols.
Network 308 may include, but is not limited to, one or more wireless networks (Wi-Fi networks), wireless communication networks, mobile telephone networks (e.g., cellular telephone networks), mobile phone data networks, broadband networks, narrowband networks, the Internet, local area networks, wide area networks, live television transmission networks, and any other networks capable of carrying media content, data, and/or communications signals between resource supplier system 302 and any other system implementing distributed record 306. Communications between resource supplier system 302 and any other system implementing distributed record 306 may be transported using any one of the above-listed networks, or any combination or sub-combination of the above-listed networks. Alternatively, resource supplier system 302 and any other computer system implementing distributed record 306 may communicate in another way such as by one or more direct connections between resource supplier system 302 and any other system implementing distributed record 306.
Resource supplier system 302 may be owned or operated by an entity that provides resources 206 associated with semi-fungible digital asset 202. In certain examples, resource supplier system 302 may generate semi-fungible digital asset 202. Such an entity may use resource supplier system 302 (e.g., system 100) in any suitable manner to specify parameters used to form semi-fungible digital asset 202. Alternatively, resource supplier system 302 may obtain semi-fungible digital asset 202 from a third party.
As shown in
Semi-fungible digital asset 202 may be stored in any suitable manner and at any suitable location as may serve a particular implementation. In certain examples, semi-fungible digital asset 202 may be stored remotely from resource supplier system 302 and may be accessible by resource supplier system 302 by way of network 308. For example, semi-fungible digital asset 202 may be hosted at a server that is remote from resource supplier system 302. Resource supplier system 302, for example, may implement a digital wallet application that stores keys that are usable to access semi-fungible digital asset 202 wherever it is stored. For example, the keys may be used to access semi-fungible digital asset 202 at a network address associated with semi-fungible digital asset 202 and hosted by the server. Such a server may be implemented as part of resource supplier system 302 or may be a third-party server that is remote from resource supplier system 302. In certain alternative implementations, the keys stored by a digital wallet application may be used to access semi-fungible digital asset 202 from a local storage device of resource supplier system 302.
At operation 404, system 100 may set a value of a resource counter (e.g., resource counter 204) of the semi-fungible digital asset. As described herein, the value of the resource counter may be based on the number of resources included in the plurality of resources associated with the semi-fungible digital asset. For example, if there are ten resources currently associated with the semi-fungible digital asset, system 100 may set the value of the resource counter to equal ten.
At operation 406, system 100 may detect a distribution event associated with the plurality of resources. As used herein, a “distribution event” may refer to any event that may occur during distribution and/or use of a plurality of resources. For example, a distribution event may cause an amount of a resource or a number of available resources included in the plurality of resources to change. In certain examples, a distribution event may comprise a consumption of a resource included in the plurality of resources. For example, a resource may correspond to an access token that may be used to access a content streaming service. In such examples, a consumption of the resource may correspond to use of an access token to access a content streaming service. In certain alternative examples, a resource may correspond to a physically consumable resource such as a pharmaceutical. In such examples, such a consumption of the resource may correspond to a physical consumption of the physically consumable resource.
In certain examples, a distribution event may include separating resources out of the plurality of resources into a plurality of child resource units. To illustrate,
Although
System 100 may detect the distribution event in any suitable manner. For example, system 100 may detect the distribution event based on sensor data obtained during distribution, based on a modification to information associated with the semi-fungible digital asset and stored in distributed record 306, based on user input, based on a scanned QR code, based on a call being made to a smart contract implemented by the semi-fungible digital asset and stored in distributed record 306, and/or based on any other information or occurrence.
Returning to
In certain examples, system 100 may record information associated with the adjustment of the value of the resource counter in a distributed record (e.g., distributed record 306). This may be accomplished in any suitable manner. For example, system 100 may access any suitable interface to facilitate recording the adjustment of the value of a resource counter.
Subsequent to operation 408, the flow may return to before operation 406. System 100 may then repeat operations 406 and 408 any suitable number of times as may serve a particular implementation. For example, system 100 may detect an additional distribution event (e.g., an additional consumption) associated with an additional resource included in the plurality of resources. Based on the additional distribution event, system 100 may further adjust the value of the resource counter of the semi-fungible digital asset.
In certain examples, once the resource counter has a value of zero, system 100 may record semi-fungible digital asset 202 in distributed record 306 as a non-fungible record that chronicles any suitable information associated with distribution of the plurality of resources. Such a non-fungible record may be used for any suitable purpose such as to optimize distribution and/or use of resources, audit distribution of resources, etc.
In certain examples, system 100 may implement a replenish function that replenishes resources associated with a semi-fungible digital asset after the value of a resource counter reaches zero. In such examples, system 100 may determine, after adjusting the value of the resource counter, that the value of the resource counter is zero. System 100 may then increase the value of a resource counter according to the replenish function to a value that is greater than zero. As an example, the resources associated with a semi-fungible digital asset may correspond to access authorizations to use a media content streaming service. A user may initially have five access authorizations available. As such, the initial value of the resource counter of the semi-fungible digital asset may be five. After the user shares the access authorizations with five users, the resource counter may be decreased from five to zero. System 100 may then increase the value of the resource counter to a value greater than zero to accommodate additional or alternative users being authorized to use the media content streaming service. In certain examples, system 100 may increase the value of the resource counter based on a request provided by the user. Alternatively, system 100 may automatically increase the value of the resource counter based on a predetermined condition (e.g., based on the value of a resource counter reaching zero).
As shown in
Containers 608 may be distributed in any suitable manner to one or more users of the pharmaceutical. As shown in
As shown in
During shipment of the package from manufacturer 702 to distributor 706 and pharmacy 704 one or more sensors may be used to track and record conditions that may occur during shipment. Any suitable sensor or combination of sensors may be used as may serve a particular implementation. For example, such sensors may include, but are not limited to, a temperature sensor, a humidity sensor, a shock sensor, and/or any other suitable sensor. Operation 718 may further include system 100 using such sensors to record sensor data during the shipment.
At operation 720, system 100 may determine whether the sensor data and delivery data satisfy predefined requirements. If they do not, system 100 may identify the package as being unacceptable. If, on the other hand, the sensor data and delivery data satisfy the predefined requirements at operation 720, system 100 may record information in distributed record 306 at operation 722 indicating that the package has been acceptably received. In certain examples, system 100 may provide a notification to manufacturer 702 regarding receipt of the package at operation 724. Additionally or alternatively, in certain examples, system 100 may provide data to distributor regarding receipt of the package at operation 726. Such data may include any suitable data associated with the shipment of the package from distributor 706 to pharmacy 704. For example, such data may include sensor data associated with the shipment and/or any other suitable data. In certain examples, such data may be used to either increase or decrease a reputation score of distributor 706. At operation 728, various operations may be performed to process the received package. For example, pharmacy 704 may stop sensor tracking, open the package, and store the pharmaceutical with a QR code.
In certain examples, system 100 may leverage one or more non-fungible digital assets in addition to a semi-fungible digital asset to facilitate distribution of a plurality of resources in a supply chain ecosystem. As used herein, a “non-fungible digital asset” may include any digital asset that is not interchangeable in terms of value and/or content with other digital assets. For example, a non-fungible digital asset may include a digital token, a still image, a digital signature or identifier, a live photograph, an audio file, a video file, and/or any other suitable non-fungible digital asset or combination of non-fungible digital assets. Any suitable protocol (e.g., blockchain protocol) may be used to facilitate generating a non-fungible digital asset as may serve a particular implementation. For example, system 100 may use an Ethereum-based non-fungible token (“NFT”) standard such as ERC-721 to facilitate generating non-fungible digital assets.
At operation 812, system 100 may provide or otherwise make accessible the visit notes NFT to patient 802. At operation 814, system 100 may create a prescription NFT associated with the medical visit and store the prescription NFT in distributed record 306. At operation 816, system 100 may provide or otherwise make available the prescription NFT to patient 802. At operation 818, system 100 may send the prescription NFT to pharmacy 704 in any suitable manner.
At operation 820, pharmacy 704 (e.g., system 100) may perform various operations associated with filling the prescription represented by the prescription NFT. For example, system 100 may check the NDC associated with the prescription, find a package to fill the prescription, check the dose amount included in the package, fill a container with the prescribed pharmaceutical, link the prescribed pharmaceutical to a customer ID, create a prescription SFT, generate a prescription QR code linked to the prescription SFT, etc.
At operation 822, system 100 may record any suitable information associated with filling the prescription in distributed record 306. At operation 824, system 100 may provide the pharmaceutical to patient 802. At operation 826, information indicating that the package was received by patient 802 may be recorded in distributed record 306. At operation 828, patient 802 may scan the QR code associated with the pharmaceutical. At operation 830, patient 802 may take a dose of the pharmaceutical. At operation 832, information indicating that a dosage has been taken may be stored in distributed record 306. Such information may include an instruction by system 100 to reduce a value of a resource counter of the prescription SFT based on the consumption of the pharmaceutical. Operations 828 through 832 may be repeated any suitable number of times depending on the number of pharmaceuticals provided to patient 802. If any of the pharmaceutical is unused, the unused portion may be disposed in any suitable manner at operation 834. At operation 836, information associated with the disposed unused portion of the pharmaceutical may be recorded in distributed record 306.
In certain examples, system 100 may be configured to facilitate one or more entities accessing any suitable information regarding a semi-fungible digital asset and the associated resources as the resources move through a supply chain ecosystem. To that end, system 100 may implement an access authorization function that may be used to determine which entities are authorized to access information associated with a semi-fungible digital asset at any given time during distribution. In such examples, semi-fungible digital asset may be stored with ownership information in distributed record 306 that indicates which entities are authorized to access information associated with the semi-fungible digital asset. An entity (e.g., a pharmacy, a manufacturer, a patient, a distributor, a medical professional, etc.) wanting to access information associated with the semi-fungible digital asset during distribution may provide a signed message to system 100. Such a signed message may be configured in any suitable manner. In certain examples, the signed message may include an asset identifier of the semi-fungible digital asset and may include a nonce. The nonce may be used, for example, to prevent replay attacks from being used to fraudulently access the information associated with the semi-fungible digital asset. The nonce may correspond to any suitable arbitrary number that may be used in a cryptographic communication (e.g., for only one signed message).
System 100 may compare the signed message to ownership information stored in distributed record 306 and determine whether the entity is authorized to access the information associated with the semi-fungible digital asset. If system 100 determines that the entity is not authorized to access information associated with the semi-fungible digital asset, system 100 may deny access to the information. On the other hand, if system 100 determines that the entity is authorized, system 100 may facilitate the entity accessing the information in distributed record 306 in any suitable manner.
The exemplary implementations of semi-fungible digital assets described herein are provided for illustrative purposes only. It is understood that concepts such as those described herein may be used in any suitable additional or alternatively implementation as may serve a particular use case. For example, semi-fungible digital assets such as those described herein may be used in a supply chain ecosystem associated with high-end luxury consumables such as high-end alcoholic beverages (e.g., whiskey, wine, etc.). In such examples, a semi-fungible digital asset may be used in any suitable manner to ensure authenticity throughout a supply chain ecosystem from bottling to secondary sales and to consumption. In addition, the semi-fungible digital asset may facilitate capturing information associated with secondary sale revenue and/or tracking consumption. For example, a semi-fungible digital asset may be used in conjunction with an electronic device configured to register/record pours from a bottle. In such implementations, a connoisseur may be able to attest that they received a full pour and/or identify the provenance (even storage conditions) of a bottle.
In certain examples, a resource counter of a semi-fungible digital asset may be used to provide a weighted bias to a particular resource. For example, in cloud services, there may be different generations of machines/CPUs that may consume a CPU resource metric at different rates at the same interval. In such examples, weighting may be used to bias, for example, premium pricing for a new family of CPU that has limited quantities and/or favor usage of a new CPU that consumes significantly less energy or generates less heat (e.g., incentivizing desired usage). Such weighted bias of a resource counter may additionally or alternatively be based on a time of day, a day of the week, seasonal variance, and/or whether the resource at a given location is in peak or trough demand, etc. In certain additional or alternative implementations, a resource counter of a semi-fungible digital asset may be used to facilitate operations of a hardware security module (“HSM”) that, for example, safeguards and manages digital keys, performs encryption and decryption functions for digital signatures, strong authentication, and/or other cryptographic functions. In such examples, the HSM may implement a plurality of different resource counters. For example, a first resource counter may be used to track an amount of time used, a second resource counter may be used to track a number of transactions (e.g., above a predefined “free” threshold), and a third resource counter may be used to track a number of digital keys stored. A charge associated with the HSM may be calculated in any suitable manner based on the first, second, and third resource counters.
In certain additional or alternative implementations, a resource counter of a semi-fungible digital asset may be used to facilitate operations in a network I/O for cloud implementation. In such examples, the network I/O for cloud implementation may implement a plurality of different resource counters. For example, a first resource counter may be used to track direction (inbound/outbound), a second resource counter may be used to track a time of day/a day of week/a season, etc., a third resource counter may be used to identify a data center location (e.g., in which city data is being processed), a fourth resource counter may be used to track a source-destination pair (e.g., city pair, metro, intra-data center, intra-domain/VPC, etc.). The first through fourth resource counters may be used in any suitable manner to track usage of the network I/O cloud.
At operation 902, a resource distribution system (e.g., resource distribution system 100) may assign a semi-fungible digital asset to a plurality of resources. As described herein, the semi-fungible digital asset may include a resource counter. Operation 902 may be performed in any of the ways described herein.
At operation 904, the resource distribution system may set a value of the resource counter based on a number of resources in the plurality of resources. Operation 904 may be performed in any of the ways described herein.
At operation 906, the resource distribution system may detect a distribution event associated with the plurality of resources. Operation 906 may be performed in any of the ways described herein.
At operation 908, the resource distribution system may adjust the value of the resource counter based on the distribution event. Operation 908 may be performed in any of the ways described herein.
At operation 1002, a resource distribution system (e.g., resource distribution system 100) may detect a distribution event associated with a resource included in a plurality of resources. The plurality of resources may be associated with a semi-fungible digital asset that may define or otherwise include one or more operating parameters such as those described herein. For example, in certain implementations, the semi-fungible digital asset may define a resource counter that identifies a number of resources in the plurality of resources. Operation 1002 may be performed in any of the ways described herein.
At operation 1004, the resource distribution system may adjust, based on the detecting of the distribution event, an operating parameter of the semi-fungible digital asset. For example, the resource distribution system may adjust a value of a resource counter defined by the semi-fungible digital asset in certain implementations. Operation 1004 may be performed in any of the ways described herein.
At operation 1006, the resource distribution system may record, in a distributed record that is configured to track distribution of the plurality of resources, information associated with the adjustment of the operating parameter. For example, the resource distribution system may record information associated with the adjusted value of the resource counter in the distributed record. Operation 1006 may be performed in any of the ways described herein.
At operation 1102, a resource distribution system (e.g., resource distribution system 100) may generate a smart contract configured to facilitate tracking distribution of a plurality of resources. Operation 1102 may be performed in any of the ways described herein.
At operation 1104, the resource distribution system may assign, as part of the smart contract, a semi-fungible digital asset to the plurality of resources. The semi-fungible digital asset may define a resource counter that identifies a number of resources in the plurality of resources. Operation 1104 may be performed in any of the ways described herein.
In some examples, a non-transitory computer-readable medium storing computer-readable instructions may be provided in accordance with the principles described herein. The instructions, when executed by a processor of a computing device, may direct the processor and/or computing device to perform one or more operations, including one or more of the operations described herein. Such instructions may be stored and/or transmitted using any of a variety of known computer-readable media.
A non-transitory computer-readable medium as referred to herein may include any non-transitory storage medium that participates in providing data (e.g., instructions) that may be read and/or executed by a computing device (e.g., by a processor of a computing device). For example, a non-transitory computer-readable medium may include, but is not limited to, any combination of non-volatile storage media and/or volatile storage media. Exemplary non-volatile storage media include, but are not limited to, read-only memory, flash memory, a solid-state drive, a magnetic storage device (e.g., a hard disk, a floppy disk, magnetic tape, etc.), ferroelectric random-access memory (RAM), and an optical disc (e.g., a compact disc, a digital video disc, a Blu-ray disc, etc.). Exemplary volatile storage media include, but are not limited to, RAM (e.g., dynamic RAM).
Communication interface 1202 may be configured to communicate with one or more computing devices. Examples of communication interface 1202 include, without limitation, a wired network interface (such as a network interface card), a wireless network interface (such as a wireless network interface card), a modem, an audio/video connection, and any other suitable interface.
Processor 1204 generally represents any type or form of processing unit capable of processing data and/or interpreting, executing, and/or directing execution of one or more of the instructions, processes, and/or operations described herein. Processor 1204 may perform operations by executing computer-executable instructions 1212 (e.g., an application, software, code, and/or other executable data instance) stored in storage device 1206.
Storage device 1206 may include one or more data storage media, devices, or configurations and may employ any type, form, and combination of data storage media and/or device. For example, storage device 1206 may include, but is not limited to, any combination of the non-volatile media and/or volatile media described herein. Electronic data, including data described herein, may be temporarily and/or permanently stored in storage device 1206. For example, data representative of computer-executable instructions 1212 configured to direct processor 1204 to perform any of the operations described herein may be stored within storage device 1206. In some examples, data may be arranged in one or more databases residing within storage device 1206.
I/O module 1208 may include one or more VO modules configured to receive user input and provide user output. One or more I/O modules may be used to receive input for a virtual experience. I/O module 1208 may include any hardware, firmware, software, or combination thereof supportive of input and output capabilities. For example, I/O module 1208 may include hardware and/or software for capturing user input, including, but not limited to, a keyboard or keypad, a touchscreen component (e.g., touchscreen display), a receiver (e.g., an RF or infrared receiver), motion sensors, and/or one or more input buttons.
I/O module 1208 may include one or more devices for presenting output to a user, including, but not limited to, a graphics engine, a display (e.g., a display screen), one or more output drivers (e.g., display drivers), one or more audio speakers, and one or more audio drivers. In certain embodiments, I/O module 1208 is configured to provide graphical data to a display for presentation to a user. The graphical data may be representative of one or more graphical user interfaces and/or any other graphical content as may serve a particular implementation.
In some examples, any of the systems, computing devices, and/or other components described herein may be implemented by computing device 1200. For example, memory 102 may be implemented by storage device 1206, and processor 104 may be implemented by processor 1204.
In the preceding description, various exemplary embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the scope of the invention as set forth in the claims that follow. For example, certain features of one embodiment described herein may be combined with or substituted for features of another embodiment described herein. The description and drawings are accordingly to be regarded in an illustrative rather than a restrictive sense.