US20200175503A1 - Resource-based distributed public ledger system - Google Patents

Resource-based distributed public ledger system Download PDF

Info

Publication number
US20200175503A1
US20200175503A1 US16/204,405 US201816204405A US2020175503A1 US 20200175503 A1 US20200175503 A1 US 20200175503A1 US 201816204405 A US201816204405 A US 201816204405A US 2020175503 A1 US2020175503 A1 US 2020175503A1
Authority
US
United States
Prior art keywords
transaction
computing devices
resource information
blockchain
computing device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US16/204,405
Inventor
Pankaj Sarin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PayPal Inc
Original Assignee
PayPal Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PayPal Inc filed Critical PayPal Inc
Priority to US16/204,405 priority Critical patent/US20200175503A1/en
Priority to EP19890133.2A priority patent/EP3888037A4/en
Priority to SG11202105290VA priority patent/SG11202105290VA/en
Priority to AU2019389136A priority patent/AU2019389136A1/en
Priority to PCT/US2019/063724 priority patent/WO2020113081A1/en
Priority to CN201980077847.0A priority patent/CN113168632A/en
Publication of US20200175503A1 publication Critical patent/US20200175503A1/en
Priority to US17/977,225 priority patent/US11961070B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3678Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Definitions

  • the present disclosure generally relates to distributed public ledgers, and more particularly to providing resource-based distributed public ledgers that may be utilized for electronic transactions.
  • More and more consumers are conducting transactions over electronic networks such as, for example, the Internet. Consumers routinely purchase products and services from merchants and individuals alike. The transactions may take place directly between a conventional or on-line merchant or retailer and the consumer, and payment is typically made by entering credit card or other financial information. Transactions may also take place with the aid of an on-line or mobile payment service provider such as, for example, PayPal, Inc. of San Jose, Calif. Such payment service providers can make transactions easier and safer for the parties involved. Purchasing with the assistance of a payment service provider from the convenience of virtually anywhere using a mobile device is one main reason why on-line and mobile purchases are growing very quickly.
  • Conventional payment service providers typically provide for payment by a payer to a payee through the use of payer accounts of the payer (e.g., credit accounts, banking account, and/or a variety of other payer accounts that may be provided by an account provider).
  • the payment service provider may provide a payment service account to the payer, and the payer may link one or more payer accounts to the payment service account (or the payment service account may include a payer account provided by the payment service provider).
  • the payment service provider may then transfer funds from one of the payer accounts to a payee account of the payee (which may also be provided by the account providers or payment service provider).
  • any computing device may receive crypto currency transactions broadcast by payer devices, and operate to provide those crypto currency transactions in a block that may then be processed (in an operation typically referred to as “mining”), with the processed block broadcast to other computing devices in the distributed network of computing devices for addition to a distributed crypto currency public ledger that is maintained by each of those computing devices and that tracks the ownership of the crypto currency.
  • processing/mining of blocks for a distributed crypto currency public ledger is notoriously wasteful with regard to processing power and energy, as any user may dedicate their computing device to performing such processing/mining, resulting in many computing devices expending their processing power and utilizing energy without actually processing a block that will be added to the distributed crypto currency public ledger.
  • Applicant recognizes that there is a need for an improved distributed public ledger system.
  • FIG. 1 is a flow chart illustrating an embodiment of a method for providing a resource-based distributed public ledger
  • FIG. 2 is a schematic view illustrating an embodiment of an electronic coin or crypto currency
  • FIG. 3 is a schematic view illustrating an embodiment of a crypto currency public ledger
  • FIG. 4 is a schematic view illustrating an embodiment of a partially centralized resource-based distributed public ledger system
  • FIG. 5A is a schematic view illustrating an embodiment of a decentralized resource-based distributed public ledger
  • FIG. 5B is a schematic view illustrating an embodiment of a primary ledger and a secondary ledger that may be used in the decentralized resource-based distributed public ledger system of FIG. 5A ;
  • FIG. 6 is a schematic view illustrating an embodiment of a networked system
  • FIG. 7 is a perspective view illustrating an embodiment of a payer/payee/user device
  • FIG. 8 is a schematic view illustrating an embodiment of a computer system.
  • FIG. 9 is a schematic view illustrating an embodiment of a system provider device.
  • Some embodiments of the present disclosure provide systems and methods for maintaining a distributed public ledger via mining devices that are selected based on one or more of their available resources. For example, miner devices that are configured to process transactions as part of a block in a distributed public ledger such as a crypto currency blockchain may report information about their available resources, and then a transaction may be broadcast to subsets of those miner devices that are associated with resource information that satisfies desirable resource characteristics.
  • a distributed public ledger such as a crypto currency blockchain
  • a distributed public ledger may be maintained by miner devices that have a minimal processing efficiency, miner devices that are operating using energy that is below a maximum cost, miner devices that are located in a particular area (or only miner devices that are not located in a particular area), miner devices that are capable of processing blocks in less than a maximum time period, and/or miner devices that exhibit virtually any other resource characteristic that would be apparent to one of skill in the art in possession of the present disclosure.
  • one or more system provider devices may operate to perform the method 100 .
  • a partially centralized system e.g., including one or more system provider devices controlled by one or more centralized and/or cooperating entities
  • a payment service provider such as, for example, PAYPAL®, Inc. of San Jose, Calif., United States, may utilize one or more payment service provider devices/system provider devices as part of the partially centralized system that performs the method 100 discussed in some of the examples below.
  • a decentralized system may include one or more system provider devices, which may be provided by payer devices and controlled by one or more non-cooperating entities, operate to maintain the distributed public ledger in order to provide the resource-based distributed public ledger described herein, and may operate in cooperation with one or more miner devices that operate to maintain the primary distributed public ledger discussed in some of the examples below, while also maintaining a secondary distributed public ledger (which may be a “sidechain” for the primary distributed public ledger) in order to provide the resource-based distributed public ledger described herein.
  • system provider devices which may be provided by payer devices and controlled by one or more non-cooperating entities, operate to maintain the distributed public ledger in order to provide the resource-based distributed public ledger described herein, and may operate in cooperation with one or more miner devices that operate to maintain the primary distributed public ledger discussed in some of the examples below, while also maintaining a secondary distributed public ledger (which may be a “sidechain” for the primary distributed public ledger) in order to provide the resource-based distributed public ledger described herein
  • an embodiment of an electronic coin 200 (or “crypto currency”) is illustrated and described briefly for reference to the method 100 discussed below.
  • the resource-based distributed public ledger system associated with the present disclosure may utilize a distributed public crypto currency blockchain (also referred to as a “crypto currency blockchain” below) that defines an electronic coin as a chain of digital signatures provided by previous owners of the electronic coin to subsequent owners of the electronic coin.
  • the electronic coin 200 is owned by an owner 202
  • FIG. 2 illustrates how the electronic coin 200 is defined by the digital signatures of the previous owners 204 , 206 , and 208 .
  • a hash 210 of the public key of owner 206 i.e., the owner receiving, as a result of transaction A, an electronic coin 200 1 defined by digital signatures provided up to transaction A
  • owner 208 i.e., the owner providing, as a result of transaction A, the electronic coin 200 1 defined by digital signatures provided up to transaction A
  • an initial electronic coin which was defined by digital signatures provided up to the transaction prior to transaction A
  • a hash 210 of the public key of owner 204 i.e., the owner receiving, as a result of transaction B, an electronic coin 200 2 defined by digital signatures provided up to transaction B
  • transaction A was signed by owner 206 and added to the electronic coin 200 1 such that the electronic coin 200 2 was transferred to owner 204 .
  • a hash 210 of the public key of owner 202 i.e., the owner receiving, as a result of transaction C, the electronic coin 200 defined by digital signatures provided up to transaction C
  • the transaction B was signed by owner 204 and added to the electronic coin 200 2 such that the electronic coin 200 was transferred to owner 202 .
  • any payee receiving an electronic coin e.g., owner 206 in transaction A, owner 204 in transaction B, and owner 202 in transaction C
  • electronic coins is used to encompass any amount of electronic coins or crypto currency, from fractions of a coin (e.g., 0.00564500 electronic coins) to many multiples of coins (e.g., 56,000.00000000 electronic coins).
  • the distributed public crypto currency ledger 300 operates to verify that payers transferring an electronic coin (e.g., referring back to FIG. 2 , owner 206 in transaction A, owner 204 in transaction B, and owner 202 in transaction C) did not “double-spend” (e.g., sign any previous transactions involving) that electronic coin.
  • a distributed network of computing devices (also referred to as “mining devices” below) operate to agree on a single history of transactions in the order in which they were received such that it may be determined that a transaction between a payer and a payee using an electronic coin is the first transaction associated with that electronic coin.
  • Each computing device in the distributed network operates to collect new transactions into a block, and then to increment a proof-of work system that includes determining a value that when hashed with the block provides a required number of zero bits.
  • a computing device in the distributed network may increment a nonce 306 in the block 302 until a value is found that gives a hash of the block 302 (which may a previous hash 308 of the block 304 , the transactions 302 a - c , and the nonce 306 ) the required number of zero bits.
  • the computing device may then “chain” the block 302 to the previous block 304 (which was produced in the manner described above for the block 302 using a nonce 310 , a previous hash 312 , the transactions 304 a - 304 c , and may have been “chained” to a previous block, not illustrated, in the same manner).
  • that block e.g., block 302
  • other computing devices in the distributed network will accept that block if all the transactions in it are valid and not already spent (which may be determined by creating the next block using the hash of the accepted block 302 ).
  • the distributed network will always consider the longest chain of blocks to be the correct one and will operate to continue to extend it. If a computing device receives two different versions of a block, it will work on the first block received, but save the second block received in case the branch of the chain that includes the second block becomes longer (at which point that device will switch to working on the branch of the chain that includes the second block).
  • a distributed public crypto currency ledger 300 in which payers and payees may participate in transactions with each other using the electronic coins discussed above and without the need for a centralized authority such as a bank. Each of those transactions is recorded in the distributed public crypto currency ledger to ensure that the electronic coins may only be spent by a payer once.
  • distributed public crypto currency ledgers While specific embodiments of distributed public crypto currency ledgers are provided below, one of skill in the art in possession of the present disclosure will recognize that distributed public ledgers that track the ownership of other digital assets will fall within the scope of the present disclosure as well, as a variety of distributed public ledger systems will benefit from the transaction/block processing of the present disclosure that is based on mining device resources as discussed below.
  • the method 100 begins at block 102 where at least one system provider device receives and stores resource information provided by a plurality of computing/miner devices.
  • the method 100 may be performed by a partially centralized system 400 via at least one system provider device 402 that is controlled by one or more cooperating entities such as, for example, PAYPAL® Inc. of San Jose, Calif., United States.
  • the system provider device(s) 402 may be coupled to a miner database 404 that is configured to store resource information received from the miner devices discussed below, and coupled to a network 406 such as, for example, the Internet.
  • a plurality of miner devices 408 are coupled to the network 406 and may be provided by respective computing devices that are configured to maintain the distributed public ledger of the present disclosure in substantially the same manner detailed above for the distributed public crypto currency ledger 300 illustrated in FIG. 3 .
  • one or more payer devices 410 and one or more payee devices 412 are also coupled to the network 406 , with the payer device(s) 410 configured to generate and broadcast transactions (e.g., the crypto currency transaction described herein) that are configured to transfer the ownership of digital assets via the distributed public ledger (e.g., the distributed public crypto currency ledger 300 ) to payees associated with the payee devices 412 .
  • partially centralized system 400 provided according to the teachings of the present disclosure has been illustrated and described, one of skill in the art in possession of the present disclosure will recognize that partially centralized systems provided according to the teachings of the present disclosure may include a variety of different devices and/or device configurations while remaining within the scope of the present disclosure as well.
  • each of the miner devices 408 may operate to transmit, through the network 406 , resource information to the system provider device(s) 402 .
  • the resource information transmitted by each of the miner devices 408 may be transmitted continually, periodically, and/or at any interval that ensures that the resource information provided by the miner devices 408 is up-to-date, “current”, or otherwise satisfies timing requirements implemented in the system 400 .
  • the resource information transmitted by each of the miner devices 408 may include, for example, an amount of available disk space on that miner device, an age of that mining device, a processing efficiency for that mining device, an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) by that mining device, meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) by that mining device, energy costs associated with operating that mining device, an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) by the mining device, a location where that mining device is located, planned electricity outages in the area in which that mining device is located, a last known inadvertent shutdown of the miner device, a public key associated with the miner device, and/or any other resource information that would be apparent to one of skill in the art in possession of the present disclosure.
  • the resource information transmitted by any or all of the miner devices 408 may include a resource value or resource score that may be determined based on any of the factors discussed above.
  • the systems and methods of the present disclosure may implement one or more calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device and outputting a resource value/score that is indicative of the resources available to that miner device.
  • each of the miner devices 408 may be configured to determine a resource value/score for itself and provide that resource value/score as the resource information transmitted to the system provider device(s) 402 at block 102 .
  • the resource value/score may be transmitted as part of a token transmitted by the miner devices 408 .
  • a token may encapsulate the resource score, public keys of the miner, and or/the frequency of next expected update of resource score, which may lead to reprioritization of the respective miner's token in the token queuing system (e.g., representing a preferential miner pool).
  • the system provider device(s) 402 may receive the resource information transmitted by each of the miner devices 408 and, in response, store that resource information in the miner database 404 in association with each miner device that transmitted it.
  • the miner database 404 may store an identifier for each of the miner devices 408 in association with the resource information received from that miner device.
  • any of the miner devices 408 may allow access by the system provider device(s) 402 to that miner device in order to allow the system provider device(s) 402 to verify resource information reported by that miner device 408 .
  • a portion of the method 100 may be performed by a decentralized system 500 via miner devices 502 that may each include a respective computing device that is configured to maintain the distributed public ledger in substantially the manner described above for the distributed public crypto currency ledger 300 discussed above with reference to FIG. 3 .
  • the miner devices 502 may be coupled to a network 504 such as, for example, the Internet.
  • a portion of the method 100 may be performed by one or more payer devices 506 that are coupled to the network 504 and configured to select subsets of the miner devices 502 based on their available resources and then generate and broadcast transactions (e.g., the crypto currency transactions described herein) to that subset of miner devices 502 , with those transactions configured to transfer the ownership of digital assets via the distributed public ledger (e.g., the distributed public crypto currency ledger 300 ) to payees associated with one or more payee devices 508 are also coupled to the network 504 .
  • the distributed public ledger e.g., the distributed public crypto currency ledger 300
  • decentralized system 500 provided according to the teachings of the present disclosure has been illustrated and described, one of skill in the art in possession of the present disclosure will recognize that decentralized systems provided according to the teachings of the present disclosure may include a variety of different devices and/or device configurations while remaining within the scope of the present disclosure as well.
  • each of the miner devices 502 may operate to transmit, through the network 504 , resource information to other miner devices.
  • the resource information transmitted by each of the miner devices 502 may be transmitted continually, periodically, and/or any interval that ensures that the resource information provided by the miner devices 408 is up-to-date, “current”, and/or otherwise satisfies timing requirements for the system 500 .
  • the resource information transmitted by each of the miner devices 502 may include, for example, an amount of available disk space on that miner device, an age of that mining device, a processing efficiency for that mining device, an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) by that mining device, meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) by that mining device, energy costs associated with operating that mining device, an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) by the mining device, a location where that mining device is located, planned electricity outages in the area in which that mining device is located, a last known inadvertent shutdown of the miner device, a public key associated with the miner device, and/or any other resource information that would be apparent to one of skill in the art in possession of the present disclosure.
  • the resource information transmitted by any or all of the miner devices 502 may include a resource value or resource score that may be determined based on any of the factors discussed above.
  • the systems and methods of the present disclosure may implement one or more calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device and outputting a resource value/score that is indicative of the resources available to that miner device.
  • each of the miner devices 408 may be configured to determine a resource value/score for itself and provide that resource value/score as the resource information transmitted to the other miner devices 502 at block 102 .
  • the resource value/score may be transmitted as part of a token transmitted by the miner devices 502 .
  • the resource information provided by each of the miner devices 502 may be broadcast by that miner device as part of a transaction that is directed towards a secondary distributed public ledger address (also referred to as a secondary blockchain address below) included in a primary distributed public ledger (also referred to as the primary blockchain below).
  • a primary blockchain 510 made up of a plurality of blocks 510 a - f may be linked to a secondary blockchain 512 made up of a plurality of blocks 512 a - f .
  • the secondary blockchain 512 may be provided as a “sidechain” for the primary blockchain 510 , and one of skill in the art in possession of the present disclosure will recognize that transactions directed to a secondary blockchain address included on the primary blockchain 510 may cause transactions to be created and stored on the secondary blockchain 512 .
  • resource information provided by each of the miner devices 502 in a transaction directed to a secondary blockchain address on the primary blockchain 510 may cause a transaction to be created on the secondary blockchain 512 that stores that resource information on the secondary blockchain 512 .
  • the miner devices 502 may receive those transactions that include the resource information transmitted by any particular miner device and, in response, process those transactions to cause their associated resource information to be stored in the secondary blockchain 512 in association with each miner device that transmitted it.
  • the secondary blockchain 512 may store an identifier for each of the miner devices 502 in association with the resource information received from that miner device.
  • the miner devices 502 may provide access to the payer device(s) 506 in order to allow the payer device(s) 506 to verify resource information reported by those miner devices 502 .
  • a payer device 410 may generate a transaction (e.g., similar to the crypto currency transaction discussed above) that includes transaction information that is configured to provide for the transfer of a digital asset to a payee associated with one of the payee devices 412 via the distributed public ledger (e.g., similar to the distributed public crypto currency ledger 300 discussed above), and transmit that transaction through the network 406 to the system provide device(s) 402 .
  • a transaction e.g., similar to the crypto currency transaction discussed above
  • the distributed public ledger e.g., similar to the distributed public crypto currency ledger 300 discussed above
  • the system provider device(s) 402 may receive the transaction information in the transaction generated and transmitted by the payer device 408 .
  • multiple payer devices may generate and transmit transactions in a similar manner as discussed above at block 104 (which may be performed at a plurality of different times and/or over some time period by any number of payer devices 410 ) such that the system provider device(s) 402 receive respective transaction information for transactions generated and transmitted by multiple different payer devices.
  • a payer device 506 may generate a transaction (e.g., similar to the crypto currency transaction discussed above) that includes transaction information that is configured to provide for the transfer of a digital asset to a payee associated with one of the payee devices 508 via the distributed public ledger (e.g., similar to the distributed public crypto currency ledger 300 discussed above).
  • a transaction e.g., similar to the crypto currency transaction discussed above
  • the distributed public ledger e.g., similar to the distributed public crypto currency ledger 300 discussed above.
  • payer devices 506 may include a wallet application (e.g., a crypto currency wallet application) that includes a transaction generating subsystem that is configured to generate a transaction, with that wallet application also including a resource-based transaction broadcasting subsystem that is configured to act as a system provider device that performs at least a portion of the method 100 by “receiving” the transaction that was generated by the transaction generating subsystem portion of the wallet application on the payer device.
  • a wallet application e.g., a crypto currency wallet application
  • that wallet application also including a resource-based transaction broadcasting subsystem that is configured to act as a system provider device that performs at least a portion of the method 100 by “receiving” the transaction that was generated by the transaction generating subsystem portion of the wallet application on the payer device.
  • the resource-based transaction broadcasting subsystem in the payer device 506 may receive the transaction information in the transaction generated and transmitted by the transaction generating subsystem in the payer device 506 .
  • multiple payer devices may include transaction generating subsystems that generate transactions in a similar manner as discussed above at block 104 (which may be performed at a plurality of different times and/or over some time period by those payer devices) such that the resource-based transaction broadcasting subsystem in those payer devices receive respective transaction information for transactions generated by their respective transaction generating subsystems.
  • the method 100 then proceeds to block 106 where the at least one system provider device identifies resource information provided by the plurality of computing devices and selects a subset of the plurality of computing devices for processing the transaction based on their associated resource information.
  • the system provider device(s) 402 may access the miner database 404 to identify the respective resource information associated with the identifiers for each of the miner devices 408 , and select a subset of the miner devices for processing the transaction based on the identified resource information.
  • the system provider device(s) 402 may access the miner database 404 and identify resource information that indicates that its associated miner device includes an amount of available disk space that is greater than a predetermined amount of disk space, resource information that indicates that its associated miner device includes an age that is less than a predetermined age, resource information that indicates that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, resource information that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, resource information that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency, resource information that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, resource information that indicates that its associated miner device includes
  • the system provider device(s) 402 may access the miner database 404 and identify resource information that indicates that its associated miner device is associated with the resource value/score that may be determined and transmitted by the miner devices 408 as part of the resource information at block 102 .
  • the system provider device(s) 402 may use the resource information transmitted by any or all of the miner devices 408 to calculate the resource value or resource score discussed above based on any of the factors included in the resource information.
  • the system provider device(s) 402 may implement calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device that are included in their associated resource information, and outputting a resource value/score that is indicative of the resources available to that miner device.
  • the system provider device(s) 402 may select any subset of the miner devices 408 for processing that transaction received at block 104 depending on one or more resource characteristics defined for the system 400 .
  • resource information may be identified that indicates that associated miner device includes an age that is less than a predetermined age, that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, and that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency.
  • the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the system provider device(s) 402 at block 106 .
  • resource information may be identified that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, and resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption.
  • resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption.
  • the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the system provider device(s) 402 at block 106 .
  • the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 to identify the respective resource information associated with the identifiers for each of the miner devices 502 , and select a subset of the miner devices for processing the transaction based on the identified resource information.
  • the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 and identify resource information that indicates that its associated miner device includes an amount of available disk space that is greater than a predetermined amount of disk space, resource information that indicates that its associated miner device includes an age that is less than a predetermined age, resource information that indicates that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, resource information that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, resource information that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency, resource information that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, resource information that indicates that its associated miner
  • the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 and identify resource information that indicates that its associated miner device is associated with the resource value/score discussed above that may be determined and transmitted by the miner devices 502 as part of the resource information at block 102 . In other embodiments, the transaction broadcasting subsystem in the payer device 506 may use the resource information transmitted by any or all of the miner devices 502 to calculate the resource value or resource score based on any of the factors included in the resource information.
  • the transaction broadcasting subsystem in the payer devices of the present disclosure may implement calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device that are included in their associated resource information and outputting a resource value/score that is indicative of the resources available to that miner device.
  • the transaction broadcasting subsystem in the payer device 506 may select any subset of the miner devices 502 for processing that transaction received at block 104 depending on one or more resource characteristics defined for the system 500 .
  • resource information may be identified that indicates that associated miner device includes an age that is less than a predetermined age, that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, and that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency.
  • the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the transaction broadcasting subsystem in the payer device at block 106 .
  • resource information may be identified that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, and resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption.
  • the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the transaction broadcasting subsystem in the payer device at block 106 .
  • the method 100 then proceeds to block 108 where the at least one system provider device broadcasts the transaction to the subset of computing devices in order to cause a first computing device included in the subset of computing devices to process the transaction at part of a block that is then added to a distributed public ledger.
  • the system provider device(s) 402 may broadcast the transaction received at block 104 through the network 406 to that subset of the miner devices 408 .
  • the subset of the miner devices 408 that were selected at block 106 will receive the transaction through the network 406 .
  • the system provider device(s) 402 may broadcast the transaction received at block 104 through the network 406 to that subset of the miner devices 408 .
  • any or all of the subset of miner devices 408 may group that transaction with other transactions (of which those miner devices were selected to receive based on its resource information in substantially the same manner as discussed above) into blocks, and one of those miner devices may process their block in the manner described above such that it is added to the distributed public ledger.
  • a block reward e.g., a crypto currency allocation made in response to adding the block to a blockchain
  • may be adjusted e.g., increased or decreased depending on how quickly a block was added to the distributed public ledger by that miner device.
  • the transaction broadcasting subsystem in the payer device 506 may broadcast the transaction received at block 104 through the network 504 to that subset of the miner devices 502 .
  • the subset of the miner devices 502 that were selected at block 106 will receive the transaction through the network 504 .
  • the transaction broadcasting subsystem in the payer device 506 may broadcast the transaction received at block 104 through the network 504 to that subset of the miner devices 502 .
  • the subset of the miner devices 502 that were selected at block 106 will receive the transaction through the network 504 .
  • any or all of the subset of miner devices 502 may group that transaction with other transactions (of which those miner devices were selected to receive based on its resource information in substantially the same manner as discussed above) into blocks, and one of those miner devices may process their block in the manner described above such that it is added to the distributed public ledger.
  • a block reward e.g., a crypto currency allocation made in response to adding the block to a blockchain, as discussed above
  • a block reward may be adjusted (e.g., increased or decreased) depending on how quickly a block was added to the distributed public ledger by that miner device.
  • miner devices may be selected to process different transactions performed via the distributed public ledger/crypto currency blockchain, which allows the distributed public ledger/crypto currency blockchain to be maintain in a desired manner by, for example, processing efficient miner devices, energy cost efficient mining devices, miner devices in particular locations, and/or miner devices including any other resource characteristics that would be apparent to one of skill in the art in possession of the present disclosure.
  • network-based system 600 may comprise or implement a plurality of servers and/or software components that operate to perform various methodologies in accordance with the described embodiments.
  • Exemplary servers may include, for example, stand-alone and enterprise-class servers operating a server OS such as a MICROSOFT® OS, a UNIX® OS, a LINUX® OS, or other suitable server-based OS. It can be appreciated that the servers illustrated in FIG. 6 may be deployed in other ways and that the operations performed and/or the services provided by such servers may be combined or separated for a given implementation and may be performed by a greater number or fewer number of servers. One or more servers may be operated and/or maintained by the same or different entities.
  • the embodiment of the networked system 600 illustrated in FIG. 6 includes a plurality of payer devices 602 such as the payer devices 602 ( 1 ), a plurality of miner device 603 such as the miner devices 603 ( 1 ) and 603 ( 2 ), a plurality of payee devices 604 such as the payee device 604 ( 1 ) and 604 ( 2 ), a payment service provider device 606 , and a plurality of system provider devices 608 such as the system provider devices 608 ( 1 ) and 608 ( 2 ) in communication over a network 610 .
  • Any of the payer devices 602 may be the payer devices 410 and/or 506 , discussed above.
  • miner devices 604 may be the miner devices 408 and/or 502 discussed above. Any of the payee devices 604 may be the payee devices 412 and/or 508 discussed above.
  • the payment service provider device 606 may be the payment service provider devices discussed above and may be operated by a payment service provider such as, for example, PayPal Inc. of San Jose, Calif. Any of the system provider devices 608 may be the system provider devices discussed above.
  • the payer devices 602 , miner devices 603 , payee devices 604 , payment service provider device 606 , and system provider devices 608 may each include one or more processors, memories, and other appropriate components for executing instructions such as program code and/or data stored on one or more computer readable mediums to implement the various applications, data, and steps described herein.
  • such instructions may be stored in one or more computer readable mediums such as memories or data storage devices internal and/or external to various components of the system 600 , and/or accessible over the network 610 .
  • the network 610 may be implemented as a single network or a combination of multiple networks.
  • the network 610 may include the Internet and/or one or more intranets, landline networks, wireless networks, and/or other appropriate types of networks.
  • the payer device 602 may be implemented using any appropriate combination of hardware and/or software configured for wired and/or wireless communication over network 610 .
  • the payer device 602 may be implemented as a personal computer of a user in communication with the Internet.
  • the payer device 602 may be a smart phone, personal digital assistant (PDA), laptop computer, and/or other types of computing devices.
  • PDA personal digital assistant
  • the payer device 602 may include one or more browser applications which may be used, for example, to provide a convenient interface to permit the payer to browse information available over the network 610 .
  • the browser application may be implemented as a web browser configured to view information available over the Internet.
  • the payer device 602 may also include one or more toolbar applications which may be used, for example, to provide user-side processing for performing desired tasks in response to operations selected by the payer.
  • the toolbar application may display a user interface in connection with the browser application.
  • the payer device 602 may further include other applications as may be desired in particular embodiments to provide desired features to the payer device 602 .
  • the other applications may include a payment application for payments assisted by a payment service provider through the payment service provider device 606 .
  • the other applications may also include security applications for implementing user-side security features, programmatic user applications for interfacing with appropriate application programming interfaces (APIs) over the network 610 , or other types of applications.
  • Email and/or text applications may also be included, which allow the payer to send and receive emails and/or text messages through the network 610 .
  • the payer device 602 includes one or more user and/or device identifiers which may be implemented, for example, as operating system registry entries, cookies associated with the browser application, identifiers associated with hardware of the payer device 602 , or other appropriate identifiers, such as a phone number.
  • the user identifier may be used by the payment service provider device 606 and/or account provider device 608 to associate the user with a particular account as further described herein.
  • the payee device 604 may be maintained, for example, by a conventional or on-line merchant, conventional or digital goods seller, individual seller, and/or application developer offering various products and/or services in exchange for payment to be received conventionally or over the network 610 .
  • the payee device 604 may include a database identifying available products and/or services (e.g., collectively referred to as items) which may be made available for viewing and purchase by the payer.
  • the payee device 604 also includes a checkout application which may be configured to facilitate the purchase by the payer of items.
  • the checkout application may be configured to accept payment information from the user through the payer device 602 , the account provider through the account provider device 608 , and/or from the payment service provider through the payment service provider device 606 over the network 610 .
  • the payer device 700 may be the payer devices 410 , 506 , and/or 602 discussed above.
  • the payer device 700 includes a chassis 702 having a display 704 and an input device including the display 704 and a plurality of input buttons 706 .
  • the payer device 700 is a portable or mobile phone including a touch screen input device and a plurality of input buttons that allow the functionality discussed above with reference to the method 100 .
  • a variety of other portable/mobile payer devices and/or desktop payer devices may be used in the method 100 without departing from the scope of the present disclosure.
  • FIG. 8 an embodiment of a computer system 800 suitable for implementing, for example, the payer devices, the miner devices, the payees device, the payment service provider device, and/or the system provider devices, is illustrated. It should be appreciated that other devices utilized by payer, payees, payment service providers, and system providers in the system discussed above may be implemented as the computer system 800 in a manner as follows.
  • computer system 800 such as a computer and/or a network server, includes a bus 802 or other communication mechanism for communicating information, which interconnects subsystems and components, such as a processing component 804 (e.g., processor, micro-controller, digital signal processor (DSP), etc.), a system memory component 806 (e.g., RAM), a static storage component 808 (e.g., ROM), a disk drive component 810 (e.g., magnetic or optical), a network interface component 812 (e.g., modem or Ethernet card), a display component 814 (e.g., CRT or LCD), an input component 818 (e.g., keyboard, keypad, or virtual keyboard), a cursor control component 820 (e.g., mouse, pointer, or trackball), and/or a location determination component 822 (e.g., a Global Positioning System (GPS) device as illustrated, a cell tower triangulation device, and/or
  • GPS Global Positioning System
  • the computer system 800 performs specific operations by the processor 804 executing one or more sequences of instructions contained in the memory component 806 , such as described herein with respect to the payer devices, the miner devices, the payee device, the payment service provider device, and/or the system provider devices. Such instructions may be read into the system memory component 806 from another computer readable medium, such as the static storage component 808 or the disk drive component 810 . In other embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the present disclosure.
  • Non-volatile media includes optical or magnetic disks, such as the disk drive component 810
  • volatile media includes dynamic memory, such as the system memory component 806
  • transmission media includes coaxial cables, copper wire, and fiber optics, including wires that comprise the bus 802 .
  • transmission media may take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
  • Computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, carrier wave, or any other medium from which a computer is adapted to read.
  • the computer readable media is non-transitory.
  • execution of instruction sequences to practice the present disclosure may be performed by the computer system 800 .
  • a plurality of the computer systems 800 coupled by a communication link 824 to the network 610 may perform instruction sequences to practice the present disclosure in coordination with one another.
  • the computer system 800 may transmit and receive messages, data, information and instructions, including one or more programs (i.e., application code) through the communication link 824 and the network interface component 812 .
  • the network interface component 812 may include an antenna, either separate or integrated, to enable transmission and reception via the communication link 824 .
  • Received program code may be executed by processor 804 as received and/or stored in disk drive component 810 or some other non-volatile storage component for execution.
  • the payer device 900 may be any of the payer devices 410 , 506 , 602 , and/or 700 discussed above, and may be utilized, for example, in the decentralized system 500 discussed above with reference to FIG. 5 .
  • the payer device 900 includes a communication engine 902 that is coupled to the network 610 and to a wallet application 904 that is coupled to a wallet database 906 .
  • the communication engine 902 may be software or instructions stored on a computer-readable medium that allows the device 900 to send and receive information over the network 610 .
  • the wallet application 904 may be software or instructions stored on a computer-readable medium that, when executed by one or more hardware processors, cause the wallet application 904 /payer device 900 to provide a transaction generating engine 904 a and a transaction broadcasting engine 904 b , discussed above. While the wallet database 906 has been illustrated as located in the payer device 900 , one of skill in the art will recognize that it may be connected to the wallet application 904 through the network 610 without departing from the scope of the present disclosure.
  • various embodiments provided by the present disclosure may be implemented using hardware, software, or combinations of hardware and software.
  • the various hardware components and/or software components set forth herein may be combined into composite components comprising software, hardware, and/or both without departing from the scope of the present disclosure.
  • the various hardware components and/or software components set forth herein may be separated into sub-components comprising software, hardware, or both without departing from the scope of the present disclosure.
  • software components may be implemented as hardware components and vice-versa.
  • Software in accordance with the present disclosure, such as program code and/or data, may be stored on one or more computer readable mediums. It is also contemplated that software identified herein may be implemented using one or more general purpose or specific purpose computers and/or computer systems, networked and/or otherwise. Where applicable, the ordering of various steps described herein may be changed, combined into composite steps, and/or separated into sub-steps to provide features described herein.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Systems and methods for providing a resource-based distributed public crypto currency blockchain include system provider device(s) that receive first crypto currency transaction information for a first crypto currency transaction that is configured to provide for the transfer of a crypto currency to a payee via a primary distributed public crypto currency blockchain maintained by computing devices. The system provider device(s) identify resource information provided by each computing device and use the resource information to select a subset of the computing devices for processing the first crypto currency transaction. The system provider device(s) then broadcast, via the network to each computing device, the first crypto currency transaction information for the first crypto currency transaction in order to cause a first computing device to process the first crypto currency transaction as part of a first block that is added to the primary distributed public crypto currency blockchain.

Description

    BACKGROUND
  • The present disclosure generally relates to distributed public ledgers, and more particularly to providing resource-based distributed public ledgers that may be utilized for electronic transactions.
  • RELATED ART
  • More and more consumers are conducting transactions over electronic networks such as, for example, the Internet. Consumers routinely purchase products and services from merchants and individuals alike. The transactions may take place directly between a conventional or on-line merchant or retailer and the consumer, and payment is typically made by entering credit card or other financial information. Transactions may also take place with the aid of an on-line or mobile payment service provider such as, for example, PayPal, Inc. of San Jose, Calif. Such payment service providers can make transactions easier and safer for the parties involved. Purchasing with the assistance of a payment service provider from the convenience of virtually anywhere using a mobile device is one main reason why on-line and mobile purchases are growing very quickly.
  • Conventional payment service providers typically provide for payment by a payer to a payee through the use of payer accounts of the payer (e.g., credit accounts, banking account, and/or a variety of other payer accounts that may be provided by an account provider). For example, the payment service provider may provide a payment service account to the payer, and the payer may link one or more payer accounts to the payment service account (or the payment service account may include a payer account provided by the payment service provider). In a transaction between the payer and the payee, the payment service provider may then transfer funds from one of the payer accounts to a payee account of the payee (which may also be provided by the account providers or payment service provider).
  • An alternative to the payer accounts and payee accounts provided by account providers, discussed above, is the use of distributed crypto currencies such as, for example, Bitcoin. Distributed crypto currencies are not controlled by any central authority, but rather by a distributed network of computing devices (also called “miner devices”) that operate to confirm transfers of the crypto currency between payers and payees. In conventional distributed crypto currency systems, any computing device may receive crypto currency transactions broadcast by payer devices, and operate to provide those crypto currency transactions in a block that may then be processed (in an operation typically referred to as “mining”), with the processed block broadcast to other computing devices in the distributed network of computing devices for addition to a distributed crypto currency public ledger that is maintained by each of those computing devices and that tracks the ownership of the crypto currency. However, the processing/mining of blocks for a distributed crypto currency public ledger is notoriously wasteful with regard to processing power and energy, as any user may dedicate their computing device to performing such processing/mining, resulting in many computing devices expending their processing power and utilizing energy without actually processing a block that will be added to the distributed crypto currency public ledger.
  • Thus, Applicant recognizes that there is a need for an improved distributed public ledger system.
  • BRIEF DESCRIPTION OF THE FIGURES
  • FIG. 1 is a flow chart illustrating an embodiment of a method for providing a resource-based distributed public ledger;
  • FIG. 2 is a schematic view illustrating an embodiment of an electronic coin or crypto currency;
  • FIG. 3 is a schematic view illustrating an embodiment of a crypto currency public ledger;
  • FIG. 4 is a schematic view illustrating an embodiment of a partially centralized resource-based distributed public ledger system;
  • FIG. 5A is a schematic view illustrating an embodiment of a decentralized resource-based distributed public ledger;
  • FIG. 5B is a schematic view illustrating an embodiment of a primary ledger and a secondary ledger that may be used in the decentralized resource-based distributed public ledger system of FIG. 5A;
  • FIG. 6 is a schematic view illustrating an embodiment of a networked system;
  • FIG. 7 is a perspective view illustrating an embodiment of a payer/payee/user device;
  • FIG. 8 is a schematic view illustrating an embodiment of a computer system; and
  • FIG. 9 is a schematic view illustrating an embodiment of a system provider device.
  • Embodiments of the present disclosure and their advantages are best understood by referring to the detailed description that follows. It should be appreciated that like reference numerals are used to identify like elements illustrated in one or more of the figures, wherein showings therein are for purposes of illustrating embodiments of the present disclosure and not for purposes of limiting the same.
  • DETAILED DESCRIPTION
  • Some embodiments of the present disclosure provide systems and methods for maintaining a distributed public ledger via mining devices that are selected based on one or more of their available resources. For example, miner devices that are configured to process transactions as part of a block in a distributed public ledger such as a crypto currency blockchain may report information about their available resources, and then a transaction may be broadcast to subsets of those miner devices that are associated with resource information that satisfies desirable resource characteristics. As such, a distributed public ledger may be maintained by miner devices that have a minimal processing efficiency, miner devices that are operating using energy that is below a maximum cost, miner devices that are located in a particular area (or only miner devices that are not located in a particular area), miner devices that are capable of processing blocks in less than a maximum time period, and/or miner devices that exhibit virtually any other resource characteristic that would be apparent to one of skill in the art in possession of the present disclosure.
  • Referring now to FIGS. 1, 2, and 3, a method 100 for providing a resource-based distributed public ledger is illustrated. In some embodiments of the method 100 described below, one or more system provider devices may operate to perform the method 100. For example, a partially centralized system (e.g., including one or more system provider devices controlled by one or more centralized and/or cooperating entities) may operate with payer devices that generate transactions that are performed via a distributed public ledger, and mining devices that maintain that distributed public ledger, in order to provide the resource-based distributed public ledger described herein. In a specific example, a payment service provider such as, for example, PAYPAL®, Inc. of San Jose, Calif., United States, may utilize one or more payment service provider devices/system provider devices as part of the partially centralized system that performs the method 100 discussed in some of the examples below.
  • In another example, a decentralized system may include one or more system provider devices, which may be provided by payer devices and controlled by one or more non-cooperating entities, operate to maintain the distributed public ledger in order to provide the resource-based distributed public ledger described herein, and may operate in cooperation with one or more miner devices that operate to maintain the primary distributed public ledger discussed in some of the examples below, while also maintaining a secondary distributed public ledger (which may be a “sidechain” for the primary distributed public ledger) in order to provide the resource-based distributed public ledger described herein. However, these embodiments are meant to be merely exemplary, and one of skill in the art in possession of the present disclosure will recognize that a wide variety of system provider devices may operate, alone or together, to provide the systems and methods discussed herein without departing from the scope of the present disclosure.
  • Referring now to FIG. 2, an embodiment of an electronic coin 200 (or “crypto currency”) is illustrated and described briefly for reference to the method 100 discussed below. In some embodiments, the resource-based distributed public ledger system associated with the present disclosure may utilize a distributed public crypto currency blockchain (also referred to as a “crypto currency blockchain” below) that defines an electronic coin as a chain of digital signatures provided by previous owners of the electronic coin to subsequent owners of the electronic coin. In the illustrated embodiment, the electronic coin 200 is owned by an owner 202, and FIG. 2 illustrates how the electronic coin 200 is defined by the digital signatures of the previous owners 204, 206, and 208. Specifically, in transaction A, a hash 210 of the public key of owner 206 (i.e., the owner receiving, as a result of transaction A, an electronic coin 200 1 defined by digital signatures provided up to transaction A) and the previous transaction (not illustrated, but occurring prior to transaction A) was signed by owner 208 (i.e., the owner providing, as a result of transaction A, the electronic coin 200 1 defined by digital signatures provided up to transaction A) and added to an initial electronic coin (which was defined by digital signatures provided up to the transaction prior to transaction A) such that the electronic coin 200 1 was transferred to owner 206.
  • Similarly, in transaction B, a hash 210 of the public key of owner 204 (i.e., the owner receiving, as a result of transaction B, an electronic coin 200 2 defined by digital signatures provided up to transaction B) and transaction A was signed by owner 206 and added to the electronic coin 200 1 such that the electronic coin 200 2 was transferred to owner 204. Similarly, in transaction C, a hash 210 of the public key of owner 202 (i.e., the owner receiving, as a result of transaction C, the electronic coin 200 defined by digital signatures provided up to transaction C) and the transaction B was signed by owner 204 and added to the electronic coin 200 2 such that the electronic coin 200 was transferred to owner 202. As is understood in the art, any payee receiving an electronic coin (e.g., owner 206 in transaction A, owner 204 in transaction B, and owner 202 in transaction C) can verify the signatures to verify the chain of ownership of the electronic coin. In the discussion below, it should be understood that the term “electronic coins” is used to encompass any amount of electronic coins or crypto currency, from fractions of a coin (e.g., 0.00564500 electronic coins) to many multiples of coins (e.g., 56,000.00000000 electronic coins).
  • Referring now to FIG. 3, an embodiment of a distributed public crypto currency ledger 300 is illustrated and described briefly for reference to the method 100 discussed below. The distributed public crypto currency ledger 300 operates to verify that payers transferring an electronic coin (e.g., referring back to FIG. 2, owner 206 in transaction A, owner 204 in transaction B, and owner 202 in transaction C) did not “double-spend” (e.g., sign any previous transactions involving) that electronic coin. To produce the distributed public crypto currency ledger 300, a distributed network of computing devices (also referred to as “mining devices” below) operate to agree on a single history of transactions in the order in which they were received such that it may be determined that a transaction between a payer and a payee using an electronic coin is the first transaction associated with that electronic coin. Each computing device in the distributed network operates to collect new transactions into a block, and then to increment a proof-of work system that includes determining a value that when hashed with the block provides a required number of zero bits.
  • For example, for a block 302 that includes a plurality of transactions 302 a, 302 b, and up to 302 c, a computing device in the distributed network may increment a nonce 306 in the block 302 until a value is found that gives a hash of the block 302 (which may a previous hash 308 of the block 304, the transactions 302 a-c, and the nonce 306) the required number of zero bits. The computing device may then “chain” the block 302 to the previous block 304 (which was produced in the manner described above for the block 302 using a nonce 310, a previous hash 312, the transactions 304 a-304 c, and may have been “chained” to a previous block, not illustrated, in the same manner). When computing devices in the distributed network find the proof-of-work for a block, that block (e.g., block 302) is broadcast to the distributed network, and other computing devices in the distributed network will accept that block if all the transactions in it are valid and not already spent (which may be determined by creating the next block using the hash of the accepted block 302). The distributed network will always consider the longest chain of blocks to be the correct one and will operate to continue to extend it. If a computing device receives two different versions of a block, it will work on the first block received, but save the second block received in case the branch of the chain that includes the second block becomes longer (at which point that device will switch to working on the branch of the chain that includes the second block).
  • In the manner described above, a distributed public crypto currency ledger 300 is provided in which payers and payees may participate in transactions with each other using the electronic coins discussed above and without the need for a centralized authority such as a bank. Each of those transactions is recorded in the distributed public crypto currency ledger to ensure that the electronic coins may only be spent by a payer once. However, while specific embodiments of distributed public crypto currency ledgers are provided below, one of skill in the art in possession of the present disclosure will recognize that distributed public ledgers that track the ownership of other digital assets will fall within the scope of the present disclosure as well, as a variety of distributed public ledger systems will benefit from the transaction/block processing of the present disclosure that is based on mining device resources as discussed below.
  • The method 100 begins at block 102 where at least one system provider device receives and stores resource information provided by a plurality of computing/miner devices. With reference to FIG. 4, and as discussed above, in some embodiments the method 100 may be performed by a partially centralized system 400 via at least one system provider device 402 that is controlled by one or more cooperating entities such as, for example, PAYPAL® Inc. of San Jose, Calif., United States. As illustrated in FIG. 4, the system provider device(s) 402 may be coupled to a miner database 404 that is configured to store resource information received from the miner devices discussed below, and coupled to a network 406 such as, for example, the Internet. Furthermore, a plurality of miner devices 408 are coupled to the network 406 and may be provided by respective computing devices that are configured to maintain the distributed public ledger of the present disclosure in substantially the same manner detailed above for the distributed public crypto currency ledger 300 illustrated in FIG. 3. Furthermore, one or more payer devices 410 and one or more payee devices 412 are also coupled to the network 406, with the payer device(s) 410 configured to generate and broadcast transactions (e.g., the crypto currency transaction described herein) that are configured to transfer the ownership of digital assets via the distributed public ledger (e.g., the distributed public crypto currency ledger 300) to payees associated with the payee devices 412. However, while a specific partially centralized system 400 provided according to the teachings of the present disclosure has been illustrated and described, one of skill in the art in possession of the present disclosure will recognize that partially centralized systems provided according to the teachings of the present disclosure may include a variety of different devices and/or device configurations while remaining within the scope of the present disclosure as well.
  • As such, with reference to the embodiment illustrated in FIG. 4, at block 102 each of the miner devices 408 may operate to transmit, through the network 406, resource information to the system provider device(s) 402. The resource information transmitted by each of the miner devices 408 may be transmitted continually, periodically, and/or at any interval that ensures that the resource information provided by the miner devices 408 is up-to-date, “current”, or otherwise satisfies timing requirements implemented in the system 400. The resource information transmitted by each of the miner devices 408 may include, for example, an amount of available disk space on that miner device, an age of that mining device, a processing efficiency for that mining device, an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) by that mining device, meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) by that mining device, energy costs associated with operating that mining device, an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) by the mining device, a location where that mining device is located, planned electricity outages in the area in which that mining device is located, a last known inadvertent shutdown of the miner device, a public key associated with the miner device, and/or any other resource information that would be apparent to one of skill in the art in possession of the present disclosure.
  • In some embodiments, the resource information transmitted by any or all of the miner devices 408 may include a resource value or resource score that may be determined based on any of the factors discussed above. As such, the systems and methods of the present disclosure may implement one or more calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device and outputting a resource value/score that is indicative of the resources available to that miner device. As such, each of the miner devices 408 may be configured to determine a resource value/score for itself and provide that resource value/score as the resource information transmitted to the system provider device(s) 402 at block 102. In specific embodiments, the resource value/score may be transmitted as part of a token transmitted by the miner devices 408. For example, a token may encapsulate the resource score, public keys of the miner, and or/the frequency of next expected update of resource score, which may lead to reprioritization of the respective miner's token in the token queuing system (e.g., representing a preferential miner pool).
  • Thus, at block 102, the system provider device(s) 402 may receive the resource information transmitted by each of the miner devices 408 and, in response, store that resource information in the miner database 404 in association with each miner device that transmitted it. As such, following block 102 (which may be performed a variety of different times over any time period, in some examples, repeatedly by miner devices 408), the miner database 404 may store an identifier for each of the miner devices 408 in association with the resource information received from that miner device. In some embodiments, any of the miner devices 408 may allow access by the system provider device(s) 402 to that miner device in order to allow the system provider device(s) 402 to verify resource information reported by that miner device 408.
  • With reference to FIGS. 5A and 5B, and as discussed above, in some embodiments a portion of the method 100 may be performed by a decentralized system 500 via miner devices 502 that may each include a respective computing device that is configured to maintain the distributed public ledger in substantially the manner described above for the distributed public crypto currency ledger 300 discussed above with reference to FIG. 3. As illustrated in FIGS. 5A and 5B, the miner devices 502 may be coupled to a network 504 such as, for example, the Internet. Furthermore, a portion of the method 100 may be performed by one or more payer devices 506 that are coupled to the network 504 and configured to select subsets of the miner devices 502 based on their available resources and then generate and broadcast transactions (e.g., the crypto currency transactions described herein) to that subset of miner devices 502, with those transactions configured to transfer the ownership of digital assets via the distributed public ledger (e.g., the distributed public crypto currency ledger 300) to payees associated with one or more payee devices 508 are also coupled to the network 504. However, while a decentralized system 500 provided according to the teachings of the present disclosure has been illustrated and described, one of skill in the art in possession of the present disclosure will recognize that decentralized systems provided according to the teachings of the present disclosure may include a variety of different devices and/or device configurations while remaining within the scope of the present disclosure as well.
  • As such, with reference to the embodiment illustrated in FIGS. 5A and 5B, at block 102, each of the miner devices 502 may operate to transmit, through the network 504, resource information to other miner devices. The resource information transmitted by each of the miner devices 502 may be transmitted continually, periodically, and/or any interval that ensures that the resource information provided by the miner devices 408 is up-to-date, “current”, and/or otherwise satisfies timing requirements for the system 500. The resource information transmitted by each of the miner devices 502 may include, for example, an amount of available disk space on that miner device, an age of that mining device, a processing efficiency for that mining device, an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) by that mining device, meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) by that mining device, energy costs associated with operating that mining device, an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) by the mining device, a location where that mining device is located, planned electricity outages in the area in which that mining device is located, a last known inadvertent shutdown of the miner device, a public key associated with the miner device, and/or any other resource information that would be apparent to one of skill in the art in possession of the present disclosure.
  • Similarly as discussed above, in some embodiments, the resource information transmitted by any or all of the miner devices 502 may include a resource value or resource score that may be determined based on any of the factors discussed above. As such, the systems and methods of the present disclosure may implement one or more calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device and outputting a resource value/score that is indicative of the resources available to that miner device. As such, each of the miner devices 408 may be configured to determine a resource value/score for itself and provide that resource value/score as the resource information transmitted to the other miner devices 502 at block 102. In specific embodiments, the resource value/score may be transmitted as part of a token transmitted by the miner devices 502.
  • In an embodiment of block 102, the resource information provided by each of the miner devices 502 may be broadcast by that miner device as part of a transaction that is directed towards a secondary distributed public ledger address (also referred to as a secondary blockchain address below) included in a primary distributed public ledger (also referred to as the primary blockchain below). With reference to FIG. 5B, a primary blockchain 510 made up of a plurality of blocks 510 a-f may be linked to a secondary blockchain 512 made up of a plurality of blocks 512 a-f. For example, the secondary blockchain 512 may be provided as a “sidechain” for the primary blockchain 510, and one of skill in the art in possession of the present disclosure will recognize that transactions directed to a secondary blockchain address included on the primary blockchain 510 may cause transactions to be created and stored on the secondary blockchain 512. As such, resource information provided by each of the miner devices 502 in a transaction directed to a secondary blockchain address on the primary blockchain 510 may cause a transaction to be created on the secondary blockchain 512 that stores that resource information on the secondary blockchain 512.
  • Thus, at block 102, the miner devices 502 may receive those transactions that include the resource information transmitted by any particular miner device and, in response, process those transactions to cause their associated resource information to be stored in the secondary blockchain 512 in association with each miner device that transmitted it. As such, following block 102 (which may be performed a variety of different times over any time period, and/or multiple times by any of the miner devices 502), the secondary blockchain 512 may store an identifier for each of the miner devices 502 in association with the resource information received from that miner device. In some embodiments, the miner devices 502 may provide access to the payer device(s) 506 in order to allow the payer device(s) 506 to verify resource information reported by those miner devices 502.
  • The method 100 then proceeds to block 104 where the at least one system provider device receives transaction information for a transaction. With reference to the partially centralized system 400 illustrated in FIG. 4, in an embodiment of block 104, a payer device 410 may generate a transaction (e.g., similar to the crypto currency transaction discussed above) that includes transaction information that is configured to provide for the transfer of a digital asset to a payee associated with one of the payee devices 412 via the distributed public ledger (e.g., similar to the distributed public crypto currency ledger 300 discussed above), and transmit that transaction through the network 406 to the system provide device(s) 402. As such, at block 104, the system provider device(s) 402 may receive the transaction information in the transaction generated and transmitted by the payer device 408. One of skill in the art in possession of the present disclosure will recognize that multiple payer devices may generate and transmit transactions in a similar manner as discussed above at block 104 (which may be performed at a plurality of different times and/or over some time period by any number of payer devices 410) such that the system provider device(s) 402 receive respective transaction information for transactions generated and transmitted by multiple different payer devices.
  • With reference to the decentralized system 500 illustrated in FIGS. 5A and 5B, in an embodiment of block 104, a payer device 506 may generate a transaction (e.g., similar to the crypto currency transaction discussed above) that includes transaction information that is configured to provide for the transfer of a digital asset to a payee associated with one of the payee devices 508 via the distributed public ledger (e.g., similar to the distributed public crypto currency ledger 300 discussed above). In some examples of the decentralized system 500, payer devices 506 may include a wallet application (e.g., a crypto currency wallet application) that includes a transaction generating subsystem that is configured to generate a transaction, with that wallet application also including a resource-based transaction broadcasting subsystem that is configured to act as a system provider device that performs at least a portion of the method 100 by “receiving” the transaction that was generated by the transaction generating subsystem portion of the wallet application on the payer device. As such, at block 104, the resource-based transaction broadcasting subsystem in the payer device 506 may receive the transaction information in the transaction generated and transmitted by the transaction generating subsystem in the payer device 506. One of skill in the art in possession of the present disclosure will recognize that multiple payer devices may include transaction generating subsystems that generate transactions in a similar manner as discussed above at block 104 (which may be performed at a plurality of different times and/or over some time period by those payer devices) such that the resource-based transaction broadcasting subsystem in those payer devices receive respective transaction information for transactions generated by their respective transaction generating subsystems.
  • The method 100 then proceeds to block 106 where the at least one system provider device identifies resource information provided by the plurality of computing devices and selects a subset of the plurality of computing devices for processing the transaction based on their associated resource information. With reference to the partially centralized system 400 illustrated in FIG. 4, in an embodiment of block 106 and upon receiving the transaction information for the transaction at block 104, the system provider device(s) 402 may access the miner database 404 to identify the respective resource information associated with the identifiers for each of the miner devices 408, and select a subset of the miner devices for processing the transaction based on the identified resource information.
  • For example, at block 106, the system provider device(s) 402 may access the miner database 404 and identify resource information that indicates that its associated miner device includes an amount of available disk space that is greater than a predetermined amount of disk space, resource information that indicates that its associated miner device includes an age that is less than a predetermined age, resource information that indicates that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, resource information that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, resource information that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency, resource information that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption, resource information that indicates that its associated miner device is located at a location that is one of plurality of authorized locations, resource information that indicates that its associated miner device is located in an area with a planned electricity outage, resource information that indicates that its associated miner device was associated with a last known inadvertent shutdown over a predetermined time ago, and/or any resource information that includes any other resource information characteristics that would be apparent to one of skill in the art in possession of the present disclosure.
  • In other embodiments, the system provider device(s) 402 may access the miner database 404 and identify resource information that indicates that its associated miner device is associated with the resource value/score that may be determined and transmitted by the miner devices 408 as part of the resource information at block 102. In other embodiments, the system provider device(s) 402 may use the resource information transmitted by any or all of the miner devices 408 to calculate the resource value or resource score discussed above based on any of the factors included in the resource information. As such, the system provider device(s) 402 may implement calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device that are included in their associated resource information, and outputting a resource value/score that is indicative of the resources available to that miner device.
  • In response to identifying the resource information at block 106, the system provider device(s) 402 may select any subset of the miner devices 408 for processing that transaction received at block 104 depending on one or more resource characteristics defined for the system 400. For example, it may be desirable for the resource-based distributed public ledger to be updated quickly and/or maintained with a high processing efficiency, and thus resource information may be identified that indicates that associated miner device includes an age that is less than a predetermined age, that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, and that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency. As such, the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the system provider device(s) 402 at block 106. Similarly, in some embodiments, it may be desirable for the resource-based distribute public ledger to have blocks confirmed as fast as possible, and thus transactions may be provided to the miner devices with the most available resources for processing blocks quickly.
  • In another example, it may be desirable for the resource-based distributed public ledger to be maintained with low energy costs, and thus resource information may be identified that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, and resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption. As such, the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the system provider device(s) 402 at block 106.
  • With reference to the decentralized system 500 illustrated in FIGS. 5A and 5B, in an embodiment of block 106 and upon receiving the transaction information for the transaction at block 104, the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 to identify the respective resource information associated with the identifiers for each of the miner devices 502, and select a subset of the miner devices for processing the transaction based on the identified resource information.
  • For example, at block 106, the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 and identify resource information that indicates that its associated miner device includes an amount of available disk space that is greater than a predetermined amount of disk space, resource information that indicates that its associated miner device includes an age that is less than a predetermined age, resource information that indicates that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, resource information that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, resource information that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency, resource information that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption, resource information that indicates that its associated miner device is located at a location that is one of plurality of authorized locations, resource information that indicates that its associated miner device is located in an area with a planned electricity outage, resource information that indicates that its associated miner device was associated with a last known inadvertent shutdown over a predetermined time ago, and/or any resource information that includes any other resource information characteristics that would be apparent to one of skill in the art in possession of the present disclosure.
  • In other embodiments, the transaction broadcasting subsystem in the payer device 506 may access the secondary blockchain 512 and identify resource information that indicates that its associated miner device is associated with the resource value/score discussed above that may be determined and transmitted by the miner devices 502 as part of the resource information at block 102. In other embodiments, the transaction broadcasting subsystem in the payer device 506 may use the resource information transmitted by any or all of the miner devices 502 to calculate the resource value or resource score based on any of the factors included in the resource information. As such, the transaction broadcasting subsystem in the payer devices of the present disclosure may implement calculations, algorithms, or other resource-information-determining methods for inputting any resource characteristics about a miner device that are included in their associated resource information and outputting a resource value/score that is indicative of the resources available to that miner device.
  • In response to identifying the resource information at block 106, the transaction broadcasting subsystem in the payer device 506 may select any subset of the miner devices 502 for processing that transaction received at block 104 depending on one or more resource characteristics defined for the system 500. Similarly as discussed above, it may be desirable for the resource-based distribute public ledger to be updated quickly and maintained with a high processing efficiency, and thus resource information may be identified that indicates that associated miner device includes an age that is less than a predetermined age, that its associated miner device includes a processing efficiency that is greater than a minimum processing efficiency, that indicates that its associated miner device is associated with an average time taken to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined time, and that indicates that its associated miner device includes meta-details of applications running on that mining device and their impact on latency related to mining blocks for the distributed public ledger (e.g., a blockchain) that is less than a predetermined latency. As such, the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the transaction broadcasting subsystem in the payer device at block 106. Similarly, in some embodiments, it may be desirable for the resource-based distribute public ledger to have blocks confirmed as fast as possible, and thus transactions may be provided to the miner devices with the most available resources
  • Also similarly as discussed above, it may be desirable for the resource-based distributed public ledger to be maintained with low energy costs, and thus resource information may be identified that indicates that its associated miner device includes energy costs associated with operating that mining device that are less than a predetermined energy cost, and resource information that indicates that its associated miner device includes an energy consumption required to mine a block for the distributed public ledger (e.g., a blockchain) that is less than a predetermined energy consumption. As such, the subset of the miner devices associated with resource information that satisfies those resource characteristics may be selected by the transaction broadcasting subsystem in the payer device at block 106.
  • The method 100 then proceeds to block 108 where the at least one system provider device broadcasts the transaction to the subset of computing devices in order to cause a first computing device included in the subset of computing devices to process the transaction at part of a block that is then added to a distributed public ledger. With reference to the partially centralized system 400 illustrated in FIG. 4, in an embodiment of block 108 and upon selecting the subset of the miner devices 408 at block 106, the system provider device(s) 402 may broadcast the transaction received at block 104 through the network 406 to that subset of the miner devices 408. As such, at block 108, the subset of the miner devices 408 that were selected at block 106 will receive the transaction through the network 406. Similarly as discussed above with reference to FIG. 3, upon receiving the transaction, any or all of the subset of miner devices 408 may group that transaction with other transactions (of which those miner devices were selected to receive based on its resource information in substantially the same manner as discussed above) into blocks, and one of those miner devices may process their block in the manner described above such that it is added to the distributed public ledger. In some embodiments (e.g., embodiments in which the resource-based distributed ledger system provides transactions to miner devices 408 that can process those transaction as part of blocks the quickest), a block reward (e.g., a crypto currency allocation made in response to adding the block to a blockchain) may be adjusted (e.g., increased or decreased) depending on how quickly a block was added to the distributed public ledger by that miner device.
  • With reference to the decentralized system 500 illustrated in FIGS. 5A and 5B, in an embodiment of block 108 and upon selecting the subset of the miner devices 408 at block 106, the transaction broadcasting subsystem in the payer device 506 may broadcast the transaction received at block 104 through the network 504 to that subset of the miner devices 502. As such, at block 108, the subset of the miner devices 502 that were selected at block 106 will receive the transaction through the network 504. Similarly as discussed above with reference to FIG. 3, upon receiving the transaction, any or all of the subset of miner devices 502 may group that transaction with other transactions (of which those miner devices were selected to receive based on its resource information in substantially the same manner as discussed above) into blocks, and one of those miner devices may process their block in the manner described above such that it is added to the distributed public ledger. In some embodiments (e.g., embodiments in which the resource-based distributed ledger system provides transactions to miner devices 502 that can process those transaction as part of blocks the quickest), a block reward (e.g., a crypto currency allocation made in response to adding the block to a blockchain, as discussed above) may be adjusted (e.g., increased or decreased) depending on how quickly a block was added to the distributed public ledger by that miner device.
  • Thus, systems and methods have been described that provide for the selection of subsets of miner devices that will process a transaction in a block to be added to a distributed public ledger based on the resources available to the miner devices. As such, given any plurality of miner devices that are available to maintain a distributed public ledger such as a crypto currency blockchain, resource information for those miner devices may be utilized to select subsets of those miner devices for processing any number of transactions as part of a block added to that distributed public ledger/crypto currency blockchain. One of skill in the art in possession of the present disclosure will recognize that different subsets of the miner devices may be selected to process different transactions performed via the distributed public ledger/crypto currency blockchain, which allows the distributed public ledger/crypto currency blockchain to be maintain in a desired manner by, for example, processing efficient miner devices, energy cost efficient mining devices, miner devices in particular locations, and/or miner devices including any other resource characteristics that would be apparent to one of skill in the art in possession of the present disclosure.
  • Referring now to FIG. 6, an embodiment of a network-based system 600 for implementing one or more processes described herein is illustrated. As shown, network-based system 600 may comprise or implement a plurality of servers and/or software components that operate to perform various methodologies in accordance with the described embodiments. Exemplary servers may include, for example, stand-alone and enterprise-class servers operating a server OS such as a MICROSOFT® OS, a UNIX® OS, a LINUX® OS, or other suitable server-based OS. It can be appreciated that the servers illustrated in FIG. 6 may be deployed in other ways and that the operations performed and/or the services provided by such servers may be combined or separated for a given implementation and may be performed by a greater number or fewer number of servers. One or more servers may be operated and/or maintained by the same or different entities.
  • The embodiment of the networked system 600 illustrated in FIG. 6 includes a plurality of payer devices 602 such as the payer devices 602(1), a plurality of miner device 603 such as the miner devices 603(1) and 603(2), a plurality of payee devices 604 such as the payee device 604(1) and 604(2), a payment service provider device 606, and a plurality of system provider devices 608 such as the system provider devices 608(1) and 608(2) in communication over a network 610. Any of the payer devices 602 may be the payer devices 410 and/or 506, discussed above. Any of the miner devices 604 may be the miner devices 408 and/or 502 discussed above. Any of the payee devices 604 may be the payee devices 412 and/or 508 discussed above. The payment service provider device 606 may be the payment service provider devices discussed above and may be operated by a payment service provider such as, for example, PayPal Inc. of San Jose, Calif. Any of the system provider devices 608 may be the system provider devices discussed above.
  • The payer devices 602, miner devices 603, payee devices 604, payment service provider device 606, and system provider devices 608 may each include one or more processors, memories, and other appropriate components for executing instructions such as program code and/or data stored on one or more computer readable mediums to implement the various applications, data, and steps described herein. For example, such instructions may be stored in one or more computer readable mediums such as memories or data storage devices internal and/or external to various components of the system 600, and/or accessible over the network 610.
  • The network 610 may be implemented as a single network or a combination of multiple networks. For example, in various embodiments, the network 610 may include the Internet and/or one or more intranets, landline networks, wireless networks, and/or other appropriate types of networks.
  • The payer device 602 may be implemented using any appropriate combination of hardware and/or software configured for wired and/or wireless communication over network 610. For example, in one embodiment, the payer device 602 may be implemented as a personal computer of a user in communication with the Internet. In other embodiments, the payer device 602 may be a smart phone, personal digital assistant (PDA), laptop computer, and/or other types of computing devices.
  • The payer device 602 may include one or more browser applications which may be used, for example, to provide a convenient interface to permit the payer to browse information available over the network 610. For example, in one embodiment, the browser application may be implemented as a web browser configured to view information available over the Internet.
  • The payer device 602 may also include one or more toolbar applications which may be used, for example, to provide user-side processing for performing desired tasks in response to operations selected by the payer. In one embodiment, the toolbar application may display a user interface in connection with the browser application.
  • The payer device 602 may further include other applications as may be desired in particular embodiments to provide desired features to the payer device 602. In particular, the other applications may include a payment application for payments assisted by a payment service provider through the payment service provider device 606. The other applications may also include security applications for implementing user-side security features, programmatic user applications for interfacing with appropriate application programming interfaces (APIs) over the network 610, or other types of applications. Email and/or text applications may also be included, which allow the payer to send and receive emails and/or text messages through the network 610. The payer device 602 includes one or more user and/or device identifiers which may be implemented, for example, as operating system registry entries, cookies associated with the browser application, identifiers associated with hardware of the payer device 602, or other appropriate identifiers, such as a phone number. In one embodiment, the user identifier may be used by the payment service provider device 606 and/or account provider device 608 to associate the user with a particular account as further described herein.
  • The payee device 604 may be maintained, for example, by a conventional or on-line merchant, conventional or digital goods seller, individual seller, and/or application developer offering various products and/or services in exchange for payment to be received conventionally or over the network 610. In this regard, the payee device 604 may include a database identifying available products and/or services (e.g., collectively referred to as items) which may be made available for viewing and purchase by the payer.
  • The payee device 604 also includes a checkout application which may be configured to facilitate the purchase by the payer of items. The checkout application may be configured to accept payment information from the user through the payer device 602, the account provider through the account provider device 608, and/or from the payment service provider through the payment service provider device 606 over the network 610.
  • Referring now to FIG. 7, an embodiment of a payer device 700 is illustrated. The payer device 700 may be the payer devices 410, 506, and/or 602 discussed above. The payer device 700 includes a chassis 702 having a display 704 and an input device including the display 704 and a plurality of input buttons 706. One of skill in the art will recognize that the payer device 700 is a portable or mobile phone including a touch screen input device and a plurality of input buttons that allow the functionality discussed above with reference to the method 100. However, a variety of other portable/mobile payer devices and/or desktop payer devices may be used in the method 100 without departing from the scope of the present disclosure.
  • Referring now to FIG. 8, an embodiment of a computer system 800 suitable for implementing, for example, the payer devices, the miner devices, the payees device, the payment service provider device, and/or the system provider devices, is illustrated. It should be appreciated that other devices utilized by payer, payees, payment service providers, and system providers in the system discussed above may be implemented as the computer system 800 in a manner as follows.
  • In accordance with various embodiments of the present disclosure, computer system 800, such as a computer and/or a network server, includes a bus 802 or other communication mechanism for communicating information, which interconnects subsystems and components, such as a processing component 804 (e.g., processor, micro-controller, digital signal processor (DSP), etc.), a system memory component 806 (e.g., RAM), a static storage component 808 (e.g., ROM), a disk drive component 810 (e.g., magnetic or optical), a network interface component 812 (e.g., modem or Ethernet card), a display component 814 (e.g., CRT or LCD), an input component 818 (e.g., keyboard, keypad, or virtual keyboard), a cursor control component 820 (e.g., mouse, pointer, or trackball), and/or a location determination component 822 (e.g., a Global Positioning System (GPS) device as illustrated, a cell tower triangulation device, and/or a variety of other location determination devices known in the art.) In one implementation, the disk drive component 810 may comprise a database having one or more disk drive components.
  • In accordance with embodiments of the present disclosure, the computer system 800 performs specific operations by the processor 804 executing one or more sequences of instructions contained in the memory component 806, such as described herein with respect to the payer devices, the miner devices, the payee device, the payment service provider device, and/or the system provider devices. Such instructions may be read into the system memory component 806 from another computer readable medium, such as the static storage component 808 or the disk drive component 810. In other embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the present disclosure.
  • Logic may be encoded in a computer readable medium, which may refer to any medium that participates in providing instructions to the processor 804 for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. In one embodiment, the computer readable medium is non-transitory. In various implementations, non-volatile media includes optical or magnetic disks, such as the disk drive component 810, volatile media includes dynamic memory, such as the system memory component 806, and transmission media includes coaxial cables, copper wire, and fiber optics, including wires that comprise the bus 802. In one example, transmission media may take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
  • Some common forms of computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, carrier wave, or any other medium from which a computer is adapted to read. In one embodiment, the computer readable media is non-transitory.
  • In various embodiments of the present disclosure, execution of instruction sequences to practice the present disclosure may be performed by the computer system 800. In various other embodiments of the present disclosure, a plurality of the computer systems 800 coupled by a communication link 824 to the network 610 (e.g., such as a LAN, WLAN, PTSN, and/or various other wired or wireless networks, including telecommunications, mobile, and cellular phone networks) may perform instruction sequences to practice the present disclosure in coordination with one another.
  • The computer system 800 may transmit and receive messages, data, information and instructions, including one or more programs (i.e., application code) through the communication link 824 and the network interface component 812. The network interface component 812 may include an antenna, either separate or integrated, to enable transmission and reception via the communication link 824. Received program code may be executed by processor 804 as received and/or stored in disk drive component 810 or some other non-volatile storage component for execution.
  • Referring now to FIG. 9, an embodiment of a payer device 900 is illustrated that may be any of the payer devices 410, 506, 602, and/or 700 discussed above, and may be utilized, for example, in the decentralized system 500 discussed above with reference to FIG. 5. The payer device 900 includes a communication engine 902 that is coupled to the network 610 and to a wallet application 904 that is coupled to a wallet database 906. The communication engine 902 may be software or instructions stored on a computer-readable medium that allows the device 900 to send and receive information over the network 610. The wallet application 904 may be software or instructions stored on a computer-readable medium that, when executed by one or more hardware processors, cause the wallet application 904/payer device 900 to provide a transaction generating engine 904 a and a transaction broadcasting engine 904 b, discussed above. While the wallet database 906 has been illustrated as located in the payer device 900, one of skill in the art will recognize that it may be connected to the wallet application 904 through the network 610 without departing from the scope of the present disclosure.
  • Where applicable, various embodiments provided by the present disclosure may be implemented using hardware, software, or combinations of hardware and software. Also, where applicable, the various hardware components and/or software components set forth herein may be combined into composite components comprising software, hardware, and/or both without departing from the scope of the present disclosure. Where applicable, the various hardware components and/or software components set forth herein may be separated into sub-components comprising software, hardware, or both without departing from the scope of the present disclosure. In addition, where applicable, it is contemplated that software components may be implemented as hardware components and vice-versa.
  • Software, in accordance with the present disclosure, such as program code and/or data, may be stored on one or more computer readable mediums. It is also contemplated that software identified herein may be implemented using one or more general purpose or specific purpose computers and/or computer systems, networked and/or otherwise. Where applicable, the ordering of various steps described herein may be changed, combined into composite steps, and/or separated into sub-steps to provide features described herein.
  • The foregoing disclosure is not intended to limit the present disclosure to the precise forms or particular fields of use disclosed. As such, it is contemplated that various alternate embodiments and/or modifications to the present disclosure, whether explicitly described or implied herein, are possible in light of the disclosure. For example, the above embodiments have focused on payees and payers; however, a payer or consumer can pay, or otherwise interact with any type of recipient, including charities and individuals. The payment does not have to involve a purchase, but may be a loan, a charitable contribution, a gift, etc. Thus, payee as used herein can also include charities, individuals, and any other entity or person receiving a payment from a payer. Having thus described embodiments of the present disclosure, persons of ordinary skill in the art will recognize that changes may be made in form and detail without departing from the scope of the present disclosure. Thus, the present disclosure is limited only by the claims.

Claims (20)

What is claimed is:
1. A resource-based distributed public ledger system, comprising:
a non-transitory memory; and
one or more hardware processors coupled to the non-transitory memory and configured to execute instructions from the non-transitory memory to cause the system to perform operations comprising:
receiving first transaction information for a first transaction that is configured to provide for a transfer of a digital asset to a payee via a primary distributed public ledger that is maintained by a plurality of computing devices;
identifying resource information that was provided by each computing device included in the plurality of computing devices prior to the receiving of the first transaction information;
selecting, using the resource information that was provided by each computing device included in the plurality of computing devices, a subset of the plurality of computing devices for processing the first transaction; and
broadcasting, via a network to each computing device included in the subset of the plurality of computing devices, the first transaction information for the first transaction in order to cause a first computing device in the subset of the plurality of computing devices to process the first transaction as part of a first block that is added to the primary distributed public ledger.
2. The system of claim 1, wherein the operations further comprise:
receiving, through the network from each computing device included in the plurality of computing devices, the resource information; and
storing the resource information in a database, wherein the database is accessible to identify the resource information.
3. The system of claim 1, wherein the operations further comprise:
receiving, through the network from each computing device included in the plurality of computing devices, the resource information as part of a respective second transaction broadcast by each computing device included in the plurality of computing devices, wherein each respective second transaction is directed to a secondary distributed public ledger address in the primary distributed public ledger; and
processing each second transaction as part of at least one second block that is provided in the primary distributed public ledger in order to store the resource information received from each computing device included in the plurality of computing devices in a secondary distributed public ledger, wherein the secondary distributed public ledger is accessible to identify the resource information.
4. The system of claim 1, wherein the selecting is based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum processing efficiency level.
5. The system of claim 1, wherein the selecting is based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum energy cost level.
6. The system of claim 1, wherein the operations further comprise:
determining a time period utilized by the first computing device in processing the first transaction as part of the first block that is added to the primary distributed public ledger; and
storing the time period as part of the resource information associated with the first computing device.
7. A method for providing a resource-based distributed public crypto currency blockchain, comprising:
receiving, by at least one system provider device, first crypto currency transaction information for a first crypto currency transaction that is configured to provide for a transfer of a crypto currency to a payee via a primary distributed public crypto currency blockchain that is maintained by a plurality of computing devices;
identifying, by the at least one system provider device, resource information that was provided by each computing device included in the plurality of computing devices prior to the receiving of the first crypto currency transaction information;
selecting, by the at least one system provider device based on the resource information that was provided by each computing device included in the plurality of computing devices, a subset of the plurality of computing devices for processing the first crypto currency transaction; and
broadcasting, by the at least one system provider device via the network to each computing device included in the subset of the plurality of computing devices, the first crypto currency transaction information for the first crypto currency transaction in order to cause a first computing device in the subset of the plurality of computing devices to process the first crypto currency transaction as part of a first block that is added to the primary distributed public crypto currency blockchain.
8. The method of claim 7, further comprising:
receiving, by the at least one system provider device through the network from each computing device included in the plurality of computing devices, the resource information; and
storing, by the at least one system provider device, the resource information in a database, wherein the database is accessible to identify the resource information.
9. The method of claim 7, further comprising:
receiving, by at least one of the plurality of computing devices through the network from each computing device included in the plurality of computing devices, the resource information as part of a respective second crypto currency transaction broadcast by each computing device included in the plurality of computing devices, wherein each respective second crypto currency transaction is directed to a secondary distributed public crypto currency blockchain address in the primary distributed public crypto currency blockchain;
processing, by the at least one computing device, each second crypto currency transaction as part of at least one second block that is provided in the primary distributed public crypto currency blockchain in order to store the resource information received from each computing device included in the plurality of computing devices in a secondary distributed public blockchain, wherein the secondary distributed public blockchain is accessible to identify the resource information.
10. The method of claim 9, wherein the secondary distributed public blockchain is a sidechain that is linked to the primary distributed public crypto currency blockchain via the secondary distributed public crypto currency blockchain address.
11. The method of claim 7, wherein the selecting is further based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum processing efficiency level.
12. The method of claim 7, wherein the selecting is further based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum energy cost level.
13. The method of claim 7, further comprising:
determining a time period utilized by the first computing device in processing the first crypto currency transaction as part of the first block that is added to the primary distributed public crypto currency blockchain; and
storing the time period as part of the resource information associated with the first computing device.
14. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a machine to perform operations comprising:
receiving first transaction information for a first transaction that is configured to provide for a transfer of a digital asset to a payee via a primary blockchain that is maintained by a plurality of computing devices;
identifying resource information that was provided by each computing device included in the plurality of computing devices prior to the receiving of the first transaction information;
selecting, using the resource information that was provided by each computing device included in the plurality of computing devices, a subset of the plurality of computing devices for processing the first transaction; and
broadcasting, via the network to each computing device included in the subset of the plurality of computing devices, the first transaction information for the first transaction in order to cause a first computing device in the subset of the plurality of computing devices to process the first transaction as part of a first block that is added to the primary blockchain.
15. The non-transitory machine-readable medium of claim 14, wherein the operations further comprise:
receiving, through the network from each computing device included in the plurality of computing devices, the resource information; and
storing the resource information in a database, wherein the database is accessible to identify the resource information.
16. The non-transitory machine-readable medium of claim 14, wherein the operations further comprise:
receiving, through the network from each computing device included in the plurality of computing devices, the resource information as part of a respective second transaction broadcast by each computing device included in the plurality of computing devices, wherein each respective second transaction is directed to a secondary blockchain address in the primary blockchain;
processing each second transaction as part of at least one second block that is provided in the primary blockchain in order to store the resource information received from each computing device included in the plurality of computing devices in a secondary blockchain, wherein the secondary blockchain is accessible to identify the resource information.
17. The non-transitory machine-readable medium of claim 14, wherein the primary blockchain is a crypto currency blockchain, and wherein the secondary blockchain is a sidechain that is linked to the crypto currency blockchain via the secondary blockchain address.
18. The non-transitory machine-readable medium of claim 14, wherein the selecting is based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum processing efficiency level.
19. The non-transitory machine-readable medium of claim 14, wherein the selecting is based on each of the computing devices in the subset of the plurality of computing devices being associated with resource information that satisfies a minimum energy cost level.
20. The non-transitory machine-readable medium of claim 14, wherein the operations further comprise:
determining a time period utilized by the first computing device in processing the first transaction as part of the first block that is added to the primary blockchain; and
storing the time period as part of the resource information associated with the first computing device.
US16/204,405 2018-11-29 2018-11-29 Resource-based distributed public ledger system Abandoned US20200175503A1 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
US16/204,405 US20200175503A1 (en) 2018-11-29 2018-11-29 Resource-based distributed public ledger system
EP19890133.2A EP3888037A4 (en) 2019-11-27 Resource-based distributed public ledger system
SG11202105290VA SG11202105290VA (en) 2018-11-29 2019-11-27 Resource-based distributed public ledger system
AU2019389136A AU2019389136A1 (en) 2018-11-29 2019-11-27 Resource-based distributed public ledger system
PCT/US2019/063724 WO2020113081A1 (en) 2018-11-29 2019-11-27 Resource-based distributed public ledger system
CN201980077847.0A CN113168632A (en) 2018-11-29 2019-11-27 Distributed public ledger system based on resources
US17/977,225 US11961070B2 (en) 2018-11-29 2022-10-31 Resource-based distributed public ledger system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/204,405 US20200175503A1 (en) 2018-11-29 2018-11-29 Resource-based distributed public ledger system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/977,225 Continuation US11961070B2 (en) 2018-11-29 2022-10-31 Resource-based distributed public ledger system

Publications (1)

Publication Number Publication Date
US20200175503A1 true US20200175503A1 (en) 2020-06-04

Family

ID=70849231

Family Applications (2)

Application Number Title Priority Date Filing Date
US16/204,405 Abandoned US20200175503A1 (en) 2018-11-29 2018-11-29 Resource-based distributed public ledger system
US17/977,225 Active US11961070B2 (en) 2018-11-29 2022-10-31 Resource-based distributed public ledger system

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/977,225 Active US11961070B2 (en) 2018-11-29 2022-10-31 Resource-based distributed public ledger system

Country Status (5)

Country Link
US (2) US20200175503A1 (en)
CN (1) CN113168632A (en)
AU (1) AU2019389136A1 (en)
SG (1) SG11202105290VA (en)
WO (1) WO2020113081A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200403984A1 (en) * 2019-06-18 2020-12-24 Core Scientific, Inc. Work provenance in computing pools
US20220164455A1 (en) * 2019-04-03 2022-05-26 Schlumberger Technology Corporation Local/hybrid blockchain for oil and gas operations integrity
US11363032B2 (en) 2019-08-22 2022-06-14 Microsoft Technology Licensing, Llc Resolving decentralized identifiers at customized security levels
US11394718B2 (en) * 2019-06-10 2022-07-19 Microsoft Technology Licensing, Llc Resolving decentralized identifiers using multiple resolvers
US11625723B2 (en) 2020-05-28 2023-04-11 Paypal, Inc. Risk assessment through device data using machine learning-based network
WO2023081040A1 (en) * 2021-11-03 2023-05-11 Paypal, Inc. Latency and computational performance on a blockchain
US11935056B2 (en) 2018-06-29 2024-03-19 Paypal, Inc. Systems and methods for automated transaction management

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170075941A1 (en) * 2016-11-28 2017-03-16 Keir Finlow-Bates Consensus system and method for adding data to a blockchain
US20190266178A1 (en) * 2016-04-08 2019-08-29 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321870B2 (en) * 2009-08-14 2012-11-27 General Electric Company Method and system for distributed computation having sub-task processing and sub-solution redistribution
WO2015142765A1 (en) * 2014-03-17 2015-09-24 Coinbase, Inc Bitcoin host computer system
US9818092B2 (en) * 2014-06-04 2017-11-14 Antti Pennanen System and method for executing financial transactions
US9298807B1 (en) * 2014-09-09 2016-03-29 Sas Institute Inc. Techniques for dynamic partitioning in a distributed parallel computational environment
WO2016046821A1 (en) * 2014-09-23 2016-03-31 Spondoolies Tech Ltd. Method and system for reducing power consumption in bitcoin mining via data input hopping
US20160162897A1 (en) * 2014-12-03 2016-06-09 The Filing Cabinet, LLC System and method for user authentication using crypto-currency transactions as access tokens
US20160321751A1 (en) * 2015-04-28 2016-11-03 Domus Tower, Inc. Real-time settlement of securities trades over append-only ledgers
US10812274B2 (en) * 2015-05-07 2020-10-20 Blockstream Corporation Transferring ledger assets between blockchains via pegged sidechains
EP3200138A1 (en) 2016-01-29 2017-08-02 Mastercard International Incorporated Digital asset conversion
US10135870B2 (en) * 2016-02-22 2018-11-20 Bank Of America Corporation System for external validation of secure process transactions
US10313108B2 (en) * 2016-06-29 2019-06-04 Intel Corporation Energy-efficient bitcoin mining hardware accelerators
US10713731B2 (en) * 2016-07-22 2020-07-14 Nec Corporation Method for secure ledger distribution and computer system using secure distributed ledger technology
CN107360206B (en) * 2017-03-29 2020-03-27 创新先进技术有限公司 Block chain consensus method, equipment and system
WO2018189656A1 (en) * 2017-04-11 2018-10-18 nChain Holdings Limited Secure re-use of private key for dynamic group of nodes
CN107169865B (en) * 2017-04-24 2021-06-29 北京果仁宝科技有限公司 Asset data processing system based on block chain technology
GB201707296D0 (en) 2017-05-08 2017-06-21 Nchain Holdings Ltd Computer-implemented system and method
US10735450B2 (en) 2017-11-30 2020-08-04 Intel Corporation Trust topology selection for distributed transaction processing in computing environments
US11057225B2 (en) * 2017-12-07 2021-07-06 International Business Machines Corporation Enforcing compute equity models in distributed blockchain
US10673620B2 (en) * 2017-12-14 2020-06-02 Paypal, Inc. Blockchain validation system
CN108596619B (en) * 2018-04-26 2022-11-01 深圳怡化电脑股份有限公司 Transaction method, device, central node and system for blockchain system
US11520904B2 (en) 2019-08-27 2022-12-06 Accenture Global Solutions Limited AI-based blockchain hybrid consensus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190266178A1 (en) * 2016-04-08 2019-08-29 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof
US20170075941A1 (en) * 2016-11-28 2017-03-16 Keir Finlow-Bates Consensus system and method for adding data to a blockchain

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11935056B2 (en) 2018-06-29 2024-03-19 Paypal, Inc. Systems and methods for automated transaction management
US20220164455A1 (en) * 2019-04-03 2022-05-26 Schlumberger Technology Corporation Local/hybrid blockchain for oil and gas operations integrity
US11977645B2 (en) * 2019-04-03 2024-05-07 Schlumberger Technology Corporation Local/hybrid blockchain for oil and gas operations integrity
US11394718B2 (en) * 2019-06-10 2022-07-19 Microsoft Technology Licensing, Llc Resolving decentralized identifiers using multiple resolvers
US20200403984A1 (en) * 2019-06-18 2020-12-24 Core Scientific, Inc. Work provenance in computing pools
US11695752B2 (en) * 2019-06-18 2023-07-04 Core Scientific Operating Company Work provenance in computing pools
US11363032B2 (en) 2019-08-22 2022-06-14 Microsoft Technology Licensing, Llc Resolving decentralized identifiers at customized security levels
US11625723B2 (en) 2020-05-28 2023-04-11 Paypal, Inc. Risk assessment through device data using machine learning-based network
WO2023081040A1 (en) * 2021-11-03 2023-05-11 Paypal, Inc. Latency and computational performance on a blockchain

Also Published As

Publication number Publication date
US20230122769A1 (en) 2023-04-20
AU2019389136A1 (en) 2021-06-10
CN113168632A (en) 2021-07-23
US11961070B2 (en) 2024-04-16
SG11202105290VA (en) 2021-06-29
EP3888037A1 (en) 2021-10-06
WO2020113081A1 (en) 2020-06-04

Similar Documents

Publication Publication Date Title
US11961070B2 (en) Resource-based distributed public ledger system
US20210350360A1 (en) Crypto currency chargeback system
US11538033B2 (en) Dispute resolution cryptocurrency sidechain system
US11842333B2 (en) Secure offline transaction system using digital tokens and a secure ledger database
US20230153808A1 (en) Expedited virtual currency transaction system
US11120429B2 (en) Electronic wallet fund transfer system
US11961072B2 (en) Techniques for conducting transactions utilizing cryptocurrency
US10546296B2 (en) Public ledger authentication system
US20210351915A1 (en) Multi-blockchain digital transaction information segregation system
US20150302400A1 (en) Distributed crypto currency reputation system
US20200160326A1 (en) System and method for optimizing data writing to a blockchain
US11972432B2 (en) Risk determination enabled crypto currency transaction system
US20190236593A1 (en) Cryptocurrency conversion
US10140658B1 (en) Commodity backed virtual currency method and system for network transactions
US11386414B2 (en) While label merchant stored value account peer linking and funding system
Kavitha et al. QM wallet Chain: Blockchain Traceability using Working Vacation Queueing Model in Mobile Wallet.

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION