US20220345318A1 - Techniques for processing transactions of order-dependent blockchain protocols - Google Patents

Techniques for processing transactions of order-dependent blockchain protocols Download PDF

Info

Publication number
US20220345318A1
US20220345318A1 US17/718,267 US202217718267A US2022345318A1 US 20220345318 A1 US20220345318 A1 US 20220345318A1 US 202217718267 A US202217718267 A US 202217718267A US 2022345318 A1 US2022345318 A1 US 2022345318A1
Authority
US
United States
Prior art keywords
network
blockchain
server
computer
nodes
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
US17/718,267
Inventor
Yehuda Jay Berg
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.)
Protoblock Inc
Original Assignee
Protoblock 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 Protoblock Inc filed Critical Protoblock Inc
Priority to US17/718,267 priority Critical patent/US20220345318A1/en
Assigned to Protoblock, Inc. reassignment Protoblock, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BERG, YEHUDA JAY
Publication of US20220345318A1 publication Critical patent/US20220345318A1/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/3247Cryptographic 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 involving digital signatures
    • H04L9/3255Cryptographic 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 involving digital signatures using group based signatures, e.g. ring or threshold 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/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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/08Auctions
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • 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/3247Cryptographic 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 involving digital signatures
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • 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]

Definitions

  • the disclosed teachings relate generally to a distributed autonomous platform. More particularly, the disclosed teachings relate to decentralized exchanges in a distributed autonomous platform.
  • Bitcoin is an example of a distributed autonomous cryptocurrency system that provides a pragmatic engineered solution for arriving at a consensus in the face of trust and timing problems encountered in distributed networks.
  • Decentralized exchanges for trading securities can also be implemented in a distributed network. Such exchanges can only support securities of a size too small to be practical compared to conventional centralized exchanges. As such, centralized exchanges remain the only practical means for trading securities.
  • FIG. 1 is a block diagram of a distributed computer network according to some embodiments of the present disclosure
  • FIG. 2 is a flowchart showing a process performed by a server in a network implementing a decentralized exchange according to some embodiments of the present disclosure
  • FIG. 3 is a flowchart showing a process performed by a server in a network for determining a next block signer of a blockchain according to some embodiments of the present disclosure.
  • FIG. 4 is a block diagram of a computer operable to implement the disclosed technology according to some embodiments of the present disclosure.
  • terms such as “processing,” “computing,” “calculating,” “determining,” “displaying,” “generating” or the like refer to actions and processes of a computer or similar electronic computing device that manipulates and transforms data represented as physical (electronic) quantities within the computer's memory or registers into other data similarly represented as physical quantities within the computer's memory, registers, or other such storage medium, transmission, or display devices.
  • connection refers to any connection or coupling, either direct or indirect, between two or more elements.
  • the coupling or connection between the elements can be physical, logical, or a combination thereof.
  • Existing distributed exchanges lack a centralized exchange that includes a single matching engine that clears all orders. Instead, each node of the network has its own copy of a matching engine. Each matching engine keeps track of all orders in structures known as “market-depth” and/or “limit-order-book.” A depth of market measure provides an indication of the liquidity and depth for that security or currency. A limit-order-book provides a guarantee that the top priority order is executed before other orders in the book, and before other orders at equal or worse price held or submitted by other traders.
  • the disclosed embodiments include a decentralized exchange implemented in a blockchain.
  • the embodiments include mechanisms for overcoming existing problems of trust and timing with distributed exchanges.
  • Solutions include a centralized server that timestamps all orders and broadcasts the timestamped orders to the nodes of the network. Each node maintains a matching engine to place and fill any orders but relies on the timestamping from the centralized server to validate an ordering of transactions.
  • the decentralized exchange may implement a “GammaCoin” blockchain that avoids the need for without centralized timestamping.
  • the disclosed technology includes a bidding process used to select a next block signer. Specifically, nodes (of market participants) bid to sign blocks of the blockchain. The right to sign a block may be given to the highest bidder.
  • a bid may be determined based on a variety of factors and considerations. For example, each node can calculate a best/worst order of events and bid accordingly. A node may be willing to pay up to an amount to avoid loss and/or ensure profits. Other considerations may include desired positions and market liquidity.
  • New trading strategies can emerge based on the knowledge that participants can pay to change the order of a limit-order-book. These strategies can replace high-frequency trading strategies of centralized exchanges.
  • FIG. 1 illustrates a system 10 that includes a network 14 of interconnected nodes 12 according to some embodiments of the present disclosure.
  • Embodiments of the distributed autonomous platform may be included in one or more of the nodes 12 .
  • the network 14 can perform processes of a blockchain-based decentralized exchange.
  • the network 14 may include a combination of private, public, wired, or wireless portions. Data communicated over the network 14 may be encrypted or unencrypted at various locations or portions of the network 14 .
  • Each node 12 may include combinations of hardware and/or software to process data, perform functions, communicate over the network 14 , and the like.
  • Nodes 12 may include computing devices such as servers, desktop or laptop computers (e.g., APPLE MACBOOK, LENOVO 440), handheld mobile devices (e.g., APPLE IPHONE, SAMSUNG GALAXY, MICROSOFT SURFACE), and any other electronic computing device.
  • Any component of the network 14 may include a processor, memory or storage, a network transceiver, a display, operating system and application software (e.g., for providing a user interface), and the like.
  • Other components, hardware, and/or software included in the network 14 that are well known to persons skilled in the art are not shown or discussed herein for brevity.
  • the network 14 may utilize public-key cryptography to securely process transactions over the network 14 .
  • Public-key cryptography uses asymmetric key algorithms, where a key used by one party to perform either encryption or decryption is not the same as the key used by another in the counterpart operation.
  • Each party has a pair of cryptographic keys: a public encryption key and a private decryption key.
  • a key pair used for digital signatures consists of a private signing key and a public verification key.
  • the public key may be widely distributed, while the private key is known only to its proprietor.
  • the keys are related mathematically, but the parameters are chosen so that calculating the private key from the public key is unfeasible.
  • the keys could be expressed in various formats, including hexadecimal format.
  • the disclosed decentralized exchange is described in the context of a gaming platform merely to aid in understanding. Gaming inherently involves unpredictable events and outcomes. For example, some participants of a game may have successfully projected outcomes that defied expectations of most participants.
  • the disclosed platform equates successful projections and skill. For example, participants of fantasy football play by drafting a team and then submitting a lineup each week. Some leagues allow trading players, but the high-stakes public leagues do not. There can also be weekly games and a professional expert service industry that supports the gaming environment. These decisions involve making projections of events and outcomes of games.
  • the disclosed embodiments relate to distributed blockchain matching engines.
  • gaming tokens there is a full futures market on each NFL player's weekly results.
  • Blockchain participants can buy and sell futures contracts, using gaming tokens as the currency for settlement and profit and loss.
  • the gaming platform enables buying or selling a player's season production with gaming tokens. For example, the platform enables buying or selling futures contracts on NFL player performance. If a participant wants to “sell” a fantasy player in existing gaming environments, the participant could (a) trade the player (if owned), (b) not draft the player, (c) blog or tweet about the player, and/or (d) not pick the player in weekly games.
  • Projections about the outcome of a game can be made up until the game commences. For example, during each week of the fantasy season, up until kickoff, projections can be made. All that is needed to make projections is a valid name identifier for the participant. Projections can be made by signing a pointProjection event and sending it to the network of the gaming platform. Every timely projection included in the blockchain is eligible for a payout. Once a block containing the consensus results is received, a deterministic distribution algorithm is run to determine the payouts to each participant.
  • a distribution algorithm can be used to determine payouts to each participant according to some embodiments of the present disclosure.
  • . The average difference is D ⁇ n
  • a unit payout X distributes more gaming tokens for better predictions as
  • an award function A(p) determines how many gaming points are awarded for each projection, which can be multiplied by a factor such as 100 for gaming tokens.
  • a proof-of-work may be required in order for a participant to obtain a name identifier (e.g., fantasy name), which mitigates the vulnerability of the gaming platform to a Sybil attack. Otherwise there would be no cost to making projections. As such, an attacker could write a program to create millions of participant identifiers in an attempt to control the gaming platform of the network.
  • a name identifier e.g., fantasy name
  • the gaming platform may include different ways to keep score (e.g., number of gaming tokens) and participant rankings.
  • the values of scores and participant rankings can be used to determine signers of next blocks. The values could be kept based on skill, data, stake, and time.
  • Skill refers to a gross total of gaming tokens earned, which can only increase and are not transferrable.
  • Data refers to data feed rankings, which cannot be less than skill and can be assigned to an agent.
  • Stake refers to a net balance of present gaming tokens that is not transferrable.
  • Time refers to time-sync rankings, which cannot be less than the stake and can be assigned to an agent.
  • stake balance is the currency used for trading, margin, and settlement. The time-balances let a user participate in centralized time stamping operations.
  • each participant identifier may assign a peer to be an agent of data and time.
  • the skill and stake values of the assigner can be added to the data and time rankings of the agent, respectively. If a participant identifier assigns herself as her own agent, she becomes a volunteer and must be willing to do the same for the entire network of the gaming platform.
  • agents are assigned by default consensus, the agents being decided by skill and stake consensus proofs.
  • agents are essentially participants appointed by a consensus of the network. Free market economic forces would choose the most capable agents.
  • the disclosed gaming platform includes a state machine.
  • the underlying protocol can change its behavior based on its current state.
  • There are also different blockchain and event or transaction rules. A transition to a different state is accomplished when a block of a blockchain is signed. The particular proof required to sign a block also depends on a transition context.
  • the gaming platform may include a variety of event types.
  • a transaction that transfers gaming tokens is only one of many event types.
  • the transfer transaction is not necessarily a core feature of the disclosed gaming platform. Instead, for example, point projections and name identifier mining can be core features of the gaming platform.
  • the gaming platform may include deterministic transactions.
  • a state transition event can trigger multiple events and transactions. Examples of transactions include:
  • Embodiments include crypto tokens (“BergStake”) that represent a right to sign blocks in blockchains.
  • BergStake includes hashes from a static and limited resource that are known to all nodes of the network, are perpetually attached to particular public keys, and can be lost from double mining.
  • a “slasher” algorithm could be implemented such that proof-of-double-mining will cause users to lose their BergStake.
  • BergStake is a generalization of proof-of-skill. For example, even when a user spends all his or her gaming tokens, the skill remains with the user and is used for signing blocks in the proof-of-skill blockchain.
  • a private-key holder can receive BergStake proportional to tokens created by proof-of-work, pre-mine, or gaming points. BergStake remains with the private-key holder even if the new tokens are transferred away.
  • BergStake can be transferred as an inheritance, for example, by providing the original private key.
  • BergStake is a distributed consensus mechanism alternative to proof-of-work mining and solves known issues of proof-of-stake blockchains.
  • the block-signer selection algorithm can mitigate stake grinding.
  • the hash of the previous two signers can be used to select the next signer.
  • Another technique may involve choosing the next n signers based on the current signer and a pseudorandom number.
  • BergStake can be used in a hybrid approach to determine signers.
  • a network can use a proof-of-work blockchain for an initial period of time, and then switch to a proof-of-stake blockchain.
  • miners can receive BergStake in addition to tokens as a reward for signing a block.
  • a BergStake would represent the right to sign future blocks during the proof-of-stake phase.
  • BergStakers will be rewarded with transaction fees only.
  • BergStake can be thought of as a virtual perpetual mining rig. The virtual rig is built by miners during the proof-of-work phase as they sign blocks. Those same miners can then “turn on” their BergStake virtual mining rigs to continue signing blocks in the proof-of-stake phase.
  • a pure decentralized exchange can be as unattainable as solving the general problems of trust and timing.
  • Exchange limit-order-books are path dependent. As such, the time and order of events matter.
  • all peers will have a different market snapshot. So, for a trader, there is no way to know the real status of his or her orders, or position, until after a block is signed. Moreover, if there were a major capitulation move followed by a snapback in price, block signers would be incentivized to front-run, and losers to attempt to extend forks.
  • a proof-of-time consensus engine chooses a centralized time-syncing agent (e.g., a timestamping server).
  • the time-syncing agent signs each timestamp with 51% of total stake outstanding.
  • all orders e.g., exchangeOrder events
  • the timestamped orders are then broadcast back to the network.
  • the disclosed platform maintains a distributed matching mechanism.
  • a fault-tolerant, centralized matching engine is not required for processing orders and broadcasting fills and market data. Instead, the matching engines remain distributed at each node of the network, and each node has a copy of market values, including the time stamps. This equal distribution enables deterministic exchangeExecutions and clearingTransactions. Trading sessions are opened and closed by timeTransitions events and proof-of-time consensus.
  • FIG. 2 is a flowchart showing a process 200 performed by a server in a network implementing a decentralized exchange according to some embodiments of the present disclosure.
  • the server receives a plurality of orders from a plurality of nodes collectively implementing a decentralized exchange.
  • the server associates a time value to each of the plurality of orders, thereby providing a corresponding plurality of time-stamped orders.
  • the server distributes information indicative of each of the time values of the time-stamped orders to the plurality of nodes of the network.
  • the disclosed platform may implement a “GammaCoin” blockchain that avoids the need for time-stamping. Specifically, a bidding process among the distributed nodes of the network determines the next block signer. More specifically, nodes of the network pay to sign blocks.
  • the highest bidder is given the right to sign blocks.
  • Bids can be issued by nodes (e.g., vis-à-vis market participants such as traders). The value of a bid can be determined based on a variety of factors and considerations. For example, a bid could be determined by calculating a best and worst order of events. To obtain the right to sign a block, a node/trader may pay up to the amount of his or her losses (i.e., to avoid the loss) or pay up to an amount of profit (i.e., to ensure the profit). Examples of other considerations used to determine a bid include desired positions and market liquidity.
  • the decentralized exchange could be regulated by private or public agencies such as the U.S. Commodity Futures Trading Commission (CFTC).
  • CFTC U.S. Commodity Futures Trading Commission
  • FIG. 3 is a flowchart showing a process 300 performed by a server in a network for determining a next block signer of a blockchain according to some embodiments of the present disclosure.
  • a server receives bids from nodes of the network.
  • the server selects a bid from the received bids. The selected bid was provided by a node from the nodes of the network.
  • the server grants a right to sign a next block in a blockchain to the node that provided the selected bid.
  • FIG. 4 is a block diagram of a computer 20 of system 10 operable to implement the disclosed technology according to some embodiments of the present disclosure.
  • the computer 20 may be a generic computer or specifically designed to carry out features of system 10 .
  • the computer 20 may be a system-on-chip (SOC), a single-board computer (SBC) system, a desktop or laptop computer, a kiosk, a mainframe, a mesh of computer systems, a handheld mobile device, or combinations thereof.
  • SOC system-on-chip
  • SBC single-board computer
  • the computer 20 may be a standalone device or part of a distributed system that spans multiple networks, locations, machines, or combinations thereof.
  • the computer 20 operates as a server computer (e.g., node 12 ) or a client device in a client-server network environment, or as a peer machine in a peer-to-peer system.
  • the computer 20 may perform one or more steps of the disclosed embodiments in real time, in near real time, offline, by batch processing, or combinations thereof.
  • the computer 20 includes a bus 22 operable to transfer data between hardware components. These components include a control 24 (i.e., processing system), a network interface 26 , an Input/Output (I/O) system 28 , and a clock system 30 .
  • the computer 20 may include other components not shown or further discussed for the sake of brevity. One having ordinary skill in the art will understand any hardware and software included but not shown in FIG. 4 .
  • the control 24 includes one or more processors 32 (e.g., Central Processing Units (CPUs), Application Specific Integrated Circuits (ASICs), and/or Field Programmable Gate Arrays (FPGAs)) and memory 34 (which may include software 36 ).
  • the memory 34 may include, for example, volatile memory such as random-access memory (RAM) and/or non-volatile memory such as read-only memory (ROM).
  • RAM random-access memory
  • ROM read-only memory
  • the memory 34 can be local, remote, or distributed.
  • a software program when referred to as “implemented in a computer-readable storage medium,” includes computer-readable instructions stored in a memory (e.g., memory 34 ).
  • a processor e.g., processor 32
  • a processor is “configured to execute a software program” when at least one value associated with the software program is stored in a register that is readable by the processor.
  • routines executed to implement the disclosed embodiments may be implemented as part of operating system (OS) software (e.g., Microsoft Windows®, Linux®) or a specific software application, component, program, object, module or sequence of instructions referred to as “computer programs.”
  • OS operating system
  • the computer programs typically comprise one or more instructions set at various times in various memory devices of a computer (e.g., computer 20 ) and which, when read and executed by at least one processor (e.g., processor 32 ), cause the computer to perform operations to execute features involving the various aspects of the disclosed embodiments.
  • a carrier containing the aforementioned computer program product is provided.
  • the carrier is one of an electronic signal, an optical signal, a radio signal, or a non-transitory computer-readable storage medium (e.g., the memory 34 ).
  • the network interface 26 may include a modem or other interfaces (not shown) for coupling the computer 20 to other computers over the network 18 .
  • the I/O system 28 may operate to control various I/O devices, including peripheral devices such as a display system 38 (e.g., a monitor or touch-sensitive display) and one or more input devices 40 (e.g., a keyboard and/or pointing device).
  • peripheral devices such as a display system 38 (e.g., a monitor or touch-sensitive display) and one or more input devices 40 (e.g., a keyboard and/or pointing device).
  • Other I/O devices 42 may include, for example, a disk drive, printer, scanner, or the like.
  • the clock system 30 controls a timer for use by the disclosed embodiments.
  • Operation of a memory device may comprise a visually perceptible physical transformation.
  • the transformation may comprise a physical transformation of an article to a different state or thing.
  • a change in state may involve accumulation and storage of charge or release of stored charge.
  • a change of state may comprise a physical change or transformation in magnetic orientation, or a physical change or transformation in molecular structure, such as from crystalline to amorphous or vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Disclosed embodiments include a server included in a network. The server is operable to determine a next block signer in a blockchain. The server includes processor(s) and memory containing instructions executable by the processor(s). As such, the server is operable to receive bids from nodes of the network and to select a bid from the received bids. The selected bid is provided by a node from the nodes of the network. The server is further operable to grant a right to sign a next block in a blockchain to the node that provided the selected bid.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 16/834,979, filed Mar. 30, 2020, which is a continuation of U.S. patent application Ser. No. 15/494,277, filed Apr. 21, 2017, now U.S. Pat. No. 10,608,825, issued Mar. 31, 2020, which claims the benefit of U.S. Provisional Patent Application No. 62/325,647, filed on Apr. 21, 2016, and claims the benefit of U.S. Provisional Patent Application No. 62/325,637, filed on Apr. 21, 2016, and claims the benefit of U.S. Provisional Patent Application No. 62/325,607, filed on Apr. 21, 2016, and the subject matter thereof is incorporated hereby by reference in their entireties.
  • TECHNICAL FIELD
  • The disclosed teachings relate generally to a distributed autonomous platform. More particularly, the disclosed teachings relate to decentralized exchanges in a distributed autonomous platform.
  • BACKGROUND
  • Distributed computing has emerged as a promising solution to the inherent drawbacks of standalone computing. Bitcoin is an example of a distributed autonomous cryptocurrency system that provides a pragmatic engineered solution for arriving at a consensus in the face of trust and timing problems encountered in distributed networks. Decentralized exchanges for trading securities can also be implemented in a distributed network. Such exchanges can only support securities of a size too small to be practical compared to conventional centralized exchanges. As such, centralized exchanges remain the only practical means for trading securities.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a distributed computer network according to some embodiments of the present disclosure;
  • FIG. 2 is a flowchart showing a process performed by a server in a network implementing a decentralized exchange according to some embodiments of the present disclosure;
  • FIG. 3 is a flowchart showing a process performed by a server in a network for determining a next block signer of a blockchain according to some embodiments of the present disclosure; and
  • FIG. 4 is a block diagram of a computer operable to implement the disclosed technology according to some embodiments of the present disclosure.
  • DETAILED DESCRIPTION
  • The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the embodiments, and illustrate the best mode of practicing the embodiments. Upon reading the following description in light of the accompanying figures, those skilled in the art will understand the concepts of the disclosure and will recognize applications of these concepts that are not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims.
  • The purpose of terminology used herein is only for describing embodiments and is not intended to limit the scope of the disclosure. Where context permits, words using the singular or plural form may also include the plural or singular form, respectively.
  • As used herein, unless specifically stated otherwise, terms such as “processing,” “computing,” “calculating,” “determining,” “displaying,” “generating” or the like, refer to actions and processes of a computer or similar electronic computing device that manipulates and transforms data represented as physical (electronic) quantities within the computer's memory or registers into other data similarly represented as physical quantities within the computer's memory, registers, or other such storage medium, transmission, or display devices.
  • As used herein, the terms “connected,” “coupled,” or variants thereof, refer to any connection or coupling, either direct or indirect, between two or more elements. The coupling or connection between the elements can be physical, logical, or a combination thereof.
  • Existing distributed exchanges lack a centralized exchange that includes a single matching engine that clears all orders. Instead, each node of the network has its own copy of a matching engine. Each matching engine keeps track of all orders in structures known as “market-depth” and/or “limit-order-book.” A depth of market measure provides an indication of the liquidity and depth for that security or currency. A limit-order-book provides a guarantee that the top priority order is executed before other orders in the book, and before other orders at equal or worse price held or submitted by other traders.
  • When a match occurs, orders are marked as filled, and both sides of the trades have their positions changed. However, problems associated with blockchain-based decentralized exchanges include every node having transactions recorded in a different order due to the asynchronous nature of the distributed network. The true order of events is known only after the transactions are inside a block. Further, traders never know their true positions until after the next block. That is, traders know their positions when their own nodes show that their orders were matched and filled; however, this may not occur when the orders of a transaction change in the next block. Moreover, traders are incentivized to fork a chain of a blockchain during major market moves if their current order of transactions is a particularly bad trade and they would incur a large trading loss as a result. The disclosed embodiments overcome these drawbacks.
  • The disclosed embodiments include a decentralized exchange implemented in a blockchain. The embodiments include mechanisms for overcoming existing problems of trust and timing with distributed exchanges. Solutions include a centralized server that timestamps all orders and broadcasts the timestamped orders to the nodes of the network. Each node maintains a matching engine to place and fill any orders but relies on the timestamping from the centralized server to validate an ordering of transactions.
  • In some embodiments, the decentralized exchange may implement a “GammaCoin” blockchain that avoids the need for without centralized timestamping. The disclosed technology includes a bidding process used to select a next block signer. Specifically, nodes (of market participants) bid to sign blocks of the blockchain. The right to sign a block may be given to the highest bidder. A bid may be determined based on a variety of factors and considerations. For example, each node can calculate a best/worst order of events and bid accordingly. A node may be willing to pay up to an amount to avoid loss and/or ensure profits. Other considerations may include desired positions and market liquidity. New trading strategies can emerge based on the knowledge that participants can pay to change the order of a limit-order-book. These strategies can replace high-frequency trading strategies of centralized exchanges.
  • FIG. 1 illustrates a system 10 that includes a network 14 of interconnected nodes 12 according to some embodiments of the present disclosure. Embodiments of the distributed autonomous platform may be included in one or more of the nodes 12. As such, the network 14 can perform processes of a blockchain-based decentralized exchange. The network 14 may include a combination of private, public, wired, or wireless portions. Data communicated over the network 14 may be encrypted or unencrypted at various locations or portions of the network 14. Each node 12 may include combinations of hardware and/or software to process data, perform functions, communicate over the network 14, and the like.
  • Nodes 12 may include computing devices such as servers, desktop or laptop computers (e.g., APPLE MACBOOK, LENOVO 440), handheld mobile devices (e.g., APPLE IPHONE, SAMSUNG GALAXY, MICROSOFT SURFACE), and any other electronic computing device. Any component of the network 14 may include a processor, memory or storage, a network transceiver, a display, operating system and application software (e.g., for providing a user interface), and the like. Other components, hardware, and/or software included in the network 14 that are well known to persons skilled in the art are not shown or discussed herein for brevity.
  • The network 14 may utilize public-key cryptography to securely process transactions over the network 14. Public-key cryptography uses asymmetric key algorithms, where a key used by one party to perform either encryption or decryption is not the same as the key used by another in the counterpart operation. Each party has a pair of cryptographic keys: a public encryption key and a private decryption key. For example, a key pair used for digital signatures consists of a private signing key and a public verification key. The public key may be widely distributed, while the private key is known only to its proprietor. The keys are related mathematically, but the parameters are chosen so that calculating the private key from the public key is unfeasible. Moreover, the keys could be expressed in various formats, including hexadecimal format.
  • The disclosed decentralized exchange is described in the context of a gaming platform merely to aid in understanding. Gaming inherently involves unpredictable events and outcomes. For example, some participants of a game may have successfully projected outcomes that defied expectations of most participants. The disclosed platform equates successful projections and skill. For example, participants of fantasy football play by drafting a team and then submitting a lineup each week. Some leagues allow trading players, but the high-stakes public leagues do not. There can also be weekly games and a professional expert service industry that supports the gaming environment. These decisions involve making projections of events and outcomes of games.
  • The disclosed embodiments relate to distributed blockchain matching engines. In the context of using gaming tokens, there is a full futures market on each NFL player's weekly results. Blockchain participants can buy and sell futures contracts, using gaming tokens as the currency for settlement and profit and loss.
  • The gaming platform enables buying or selling a player's season production with gaming tokens. For example, the platform enables buying or selling futures contracts on NFL player performance. If a participant wants to “sell” a fantasy player in existing gaming environments, the participant could (a) trade the player (if owned), (b) not draft the player, (c) blog or tweet about the player, and/or (d) not pick the player in weekly games.
  • Projections about the outcome of a game (i.e., “level 1” projections) can be made up until the game commences. For example, during each week of the fantasy season, up until kickoff, projections can be made. All that is needed to make projections is a valid name identifier for the participant. Projections can be made by signing a pointProjection event and sending it to the network of the gaming platform. Every timely projection included in the blockchain is eligible for a payout. Once a block containing the consensus results is received, a deterministic distribution algorithm is run to determine the payouts to each participant.
  • A distribution algorithm can be used to determine payouts to each participant according to some embodiments of the present disclosure. The distribution algorithm can also be expressed mathematically. Let R equal actual results of a game and let pn equal projections made by each participant n. The difference between results and projections is d(p)=|R−p|. The average difference is Dn|R−pn|.
  • Projections below average or 100% or more off a mark are filtered out, as
  • F ( d ) = { 0 if d > D _ or d > r 1 otherwise .
  • A unit payout X distributes more gaming tokens for better predictions as
  • X = R ( R - d ( p n ) ) × F ( d ( p n ) ) .
  • Lastly, an award function A(p) determines how many gaming points are awarded for each projection, which can be multiplied by a factor such as 100 for gaming tokens. The award function can be expressed as A(p)=X×(R−d(p))×F(d(p)). Any leftover points, L, due to poor projections or no projections can be distributed to a block signer, where L=R−ΣnA(pn).
  • A proof-of-work may be required in order for a participant to obtain a name identifier (e.g., fantasy name), which mitigates the vulnerability of the gaming platform to a Sybil attack. Otherwise there would be no cost to making projections. As such, an attacker could write a program to create millions of participant identifiers in an attempt to control the gaming platform of the network.
  • The gaming platform may include different ways to keep score (e.g., number of gaming tokens) and participant rankings. The values of scores and participant rankings can be used to determine signers of next blocks. The values could be kept based on skill, data, stake, and time. Skill refers to a gross total of gaming tokens earned, which can only increase and are not transferrable. Data refers to data feed rankings, which cannot be less than skill and can be assigned to an agent. Stake refers to a net balance of present gaming tokens that is not transferrable. Time refers to time-sync rankings, which cannot be less than the stake and can be assigned to an agent. In the context of futures exchanges, stake balance is the currency used for trading, margin, and settlement. The time-balances let a user participate in centralized time stamping operations.
  • In some embodiments, each participant identifier may assign a peer to be an agent of data and time. The skill and stake values of the assigner can be added to the data and time rankings of the agent, respectively. If a participant identifier assigns herself as her own agent, she becomes a volunteer and must be willing to do the same for the entire network of the gaming platform. By default, agents are assigned by default consensus, the agents being decided by skill and stake consensus proofs.
  • If a single agent represents a majority of the network, that agent can become an oracle, and a central point of control for critical time periods, such as during live games. As such, agents are essentially participants appointed by a consensus of the network. Free market economic forces would choose the most capable agents.
  • The disclosed gaming platform includes a state machine. In particular, the underlying protocol can change its behavior based on its current state. There are also different blockchain and event or transaction rules. A transition to a different state is accomplished when a block of a blockchain is signed. The particular proof required to sign a block also depends on a transition context.
  • The gaming platform may include a variety of event types. A transaction that transfers gaming tokens is only one of many event types. In contrast to Bitcoin, the transfer transaction is not necessarily a core feature of the disclosed gaming platform. Instead, for example, point projections and name identifier mining can be core features of the gaming platform.
  • Examples of events, in order of significance, include:
      • nameProof: contains proof-of-work data sent by new participants to claim their identifiers, and is signed by an/the identifier;
      • pointProjection: contains the playerID, week, and point projection, and is sent and signed by an/the identifier;
      • dataTransition: contains game results, draft results, player metadata or schedule data, is sent by a data agent, and is signed by consensus of skill;
      • timeTransition: contains trading session, exchange events, or any time-ordered data, is sent by a time agent, and is signed by consensus of stake;
      • exchangeOrder: contains limit order, price, quantity, playerID. The exchangeOrder is first created and signed by fantasy name, then stamped and signed by time agent; and
      • transferTransaction: contains the amount to transfer and the sender and receiver fantasy names, and is signed by sender.
  • The gaming platform may include deterministic transactions. A state transition event can trigger multiple events and transactions. Examples of transactions include:
      • coinbaseTransaction: awards new gaming tokens based on the aforementioned distribution algorithm. Further, this transaction can be triggered by a dataTransition “WeekOver” event;
      • exchangeExecution: contains fills and order status, generated by an internal matching-engine, triggered by timeTransition “TradeOpen” and followed by multiple exchangeOrder events; and
      • clearingTransaction: contains transferTransaction events, generated by an internal engine, triggered by a timeTransition “TradeClose” and followed by multiple exchangeExecutions.
  • Embodiments include crypto tokens (“BergStake”) that represent a right to sign blocks in blockchains. BergStake includes hashes from a static and limited resource that are known to all nodes of the network, are perpetually attached to particular public keys, and can be lost from double mining. For example, a “slasher” algorithm could be implemented such that proof-of-double-mining will cause users to lose their BergStake.
  • BergStake is a generalization of proof-of-skill. For example, even when a user spends all his or her gaming tokens, the skill remains with the user and is used for signing blocks in the proof-of-skill blockchain. A private-key holder can receive BergStake proportional to tokens created by proof-of-work, pre-mine, or gaming points. BergStake remains with the private-key holder even if the new tokens are transferred away. However, BergStake can be transferred as an inheritance, for example, by providing the original private key. Thus, BergStake is a distributed consensus mechanism alternative to proof-of-work mining and solves known issues of proof-of-stake blockchains.
  • Since BergStake is limited and can be lost, there is in fact something at stake to deter double mining. Losing BergStake is enabled by proof-of-double-mining, which results because BergStake blockchains have knowledge of alternative forks. The proof-of-double-mining can destroy BergStake and its recent block reward. Hence, the risk of losing BergStake and new tokens incentivizes mining only the valid chain of a fork. This feature overcomes the “nothing-at-stake” flaw in proof-of-stake blockchains.
  • Since all BergStakers (i.e., owners of BergStake) are known in advance, the block-signer selection algorithm can mitigate stake grinding. For example, the hash of the previous two signers can be used to select the next signer. Another technique may involve choosing the next n signers based on the current signer and a pseudorandom number.
  • In some embodiments, BergStake can be used in a hybrid approach to determine signers. For example, a network can use a proof-of-work blockchain for an initial period of time, and then switch to a proof-of-stake blockchain. In the proof-of-work phase, miners can receive BergStake in addition to tokens as a reward for signing a block. A BergStake would represent the right to sign future blocks during the proof-of-stake phase. Once all tokens have been distributed, BergStakers will be rewarded with transaction fees only. As such, BergStake can be thought of as a virtual perpetual mining rig. The virtual rig is built by miners during the proof-of-work phase as they sign blocks. Those same miners can then “turn on” their BergStake virtual mining rigs to continue signing blocks in the proof-of-stake phase.
  • As indicated above, the disclosed technology could be implemented in a decentralized exchange. A pure decentralized exchange can be as unattainable as solving the general problems of trust and timing. Exchange limit-order-books are path dependent. As such, the time and order of events matter. In a pure decentralized distributed order book, all peers will have a different market snapshot. So, for a trader, there is no way to know the real status of his or her orders, or position, until after a block is signed. Moreover, if there were a major capitulation move followed by a snapback in price, block signers would be incentivized to front-run, and losers to attempt to extend forks.
  • The disclosed platform solves these drawbacks with proof-of-time provided by a centralized time-synching mechanism. Specifically, a proof-of-time consensus engine chooses a centralized time-syncing agent (e.g., a timestamping server). In some embodiments, the time-syncing agent signs each timestamp with 51% of total stake outstanding. In some embodiments, all orders (e.g., exchangeOrder events) are timestamped by the designated time-syncing agent. The timestamped orders are then broadcast back to the network.
  • The disclosed platform maintains a distributed matching mechanism. A fault-tolerant, centralized matching engine is not required for processing orders and broadcasting fills and market data. Instead, the matching engines remain distributed at each node of the network, and each node has a copy of market values, including the time stamps. This equal distribution enables deterministic exchangeExecutions and clearingTransactions. Trading sessions are opened and closed by timeTransitions events and proof-of-time consensus.
  • FIG. 2 is a flowchart showing a process 200 performed by a server in a network implementing a decentralized exchange according to some embodiments of the present disclosure. In step 202, the server receives a plurality of orders from a plurality of nodes collectively implementing a decentralized exchange. In step 204, the server associates a time value to each of the plurality of orders, thereby providing a corresponding plurality of time-stamped orders. In step 206, the server distributes information indicative of each of the time values of the time-stamped orders to the plurality of nodes of the network.
  • In some embodiments, the disclosed platform may implement a “GammaCoin” blockchain that avoids the need for time-stamping. Specifically, a bidding process among the distributed nodes of the network determines the next block signer. More specifically, nodes of the network pay to sign blocks.
  • In some embodiments, the highest bidder is given the right to sign blocks. Bids can be issued by nodes (e.g., vis-à-vis market participants such as traders). The value of a bid can be determined based on a variety of factors and considerations. For example, a bid could be determined by calculating a best and worst order of events. To obtain the right to sign a block, a node/trader may pay up to the amount of his or her losses (i.e., to avoid the loss) or pay up to an amount of profit (i.e., to ensure the profit). Examples of other considerations used to determine a bid include desired positions and market liquidity.
  • As a result, new trading strategies can emerge based on the knowledge that any of the participants of the decentralized exchange can pay to change the order of the limit-order-book. These strategies may replace high-frequency trading strategies common in centralized exchanges. In some embodiments, the decentralized exchange could be regulated by private or public agencies such as the U.S. Commodity Futures Trading Commission (CFTC).
  • For example, FIG. 3 is a flowchart showing a process 300 performed by a server in a network for determining a next block signer of a blockchain according to some embodiments of the present disclosure. In step 302, a server receives bids from nodes of the network. In step 304, the server selects a bid from the received bids. The selected bid was provided by a node from the nodes of the network. In step 306, the server grants a right to sign a next block in a blockchain to the node that provided the selected bid.
  • FIG. 4 is a block diagram of a computer 20 of system 10 operable to implement the disclosed technology according to some embodiments of the present disclosure. The computer 20 may be a generic computer or specifically designed to carry out features of system 10. For example, the computer 20 may be a system-on-chip (SOC), a single-board computer (SBC) system, a desktop or laptop computer, a kiosk, a mainframe, a mesh of computer systems, a handheld mobile device, or combinations thereof.
  • The computer 20 may be a standalone device or part of a distributed system that spans multiple networks, locations, machines, or combinations thereof. In some embodiments, the computer 20 operates as a server computer (e.g., node 12) or a client device in a client-server network environment, or as a peer machine in a peer-to-peer system. In some embodiments, the computer 20 may perform one or more steps of the disclosed embodiments in real time, in near real time, offline, by batch processing, or combinations thereof.
  • As shown, the computer 20 includes a bus 22 operable to transfer data between hardware components. These components include a control 24 (i.e., processing system), a network interface 26, an Input/Output (I/O) system 28, and a clock system 30. The computer 20 may include other components not shown or further discussed for the sake of brevity. One having ordinary skill in the art will understand any hardware and software included but not shown in FIG. 4.
  • The control 24 includes one or more processors 32 (e.g., Central Processing Units (CPUs), Application Specific Integrated Circuits (ASICs), and/or Field Programmable Gate Arrays (FPGAs)) and memory 34 (which may include software 36). The memory 34 may include, for example, volatile memory such as random-access memory (RAM) and/or non-volatile memory such as read-only memory (ROM). The memory 34 can be local, remote, or distributed.
  • A software program (e.g., software 36), when referred to as “implemented in a computer-readable storage medium,” includes computer-readable instructions stored in a memory (e.g., memory 34). A processor (e.g., processor 32) is “configured to execute a software program” when at least one value associated with the software program is stored in a register that is readable by the processor. In some embodiments, routines executed to implement the disclosed embodiments may be implemented as part of operating system (OS) software (e.g., Microsoft Windows®, Linux®) or a specific software application, component, program, object, module or sequence of instructions referred to as “computer programs.”
  • As such, the computer programs typically comprise one or more instructions set at various times in various memory devices of a computer (e.g., computer 20) and which, when read and executed by at least one processor (e.g., processor 32), cause the computer to perform operations to execute features involving the various aspects of the disclosed embodiments. In some embodiments, a carrier containing the aforementioned computer program product is provided. The carrier is one of an electronic signal, an optical signal, a radio signal, or a non-transitory computer-readable storage medium (e.g., the memory 34).
  • The network interface 26 may include a modem or other interfaces (not shown) for coupling the computer 20 to other computers over the network 18. The I/O system 28 may operate to control various I/O devices, including peripheral devices such as a display system 38 (e.g., a monitor or touch-sensitive display) and one or more input devices 40 (e.g., a keyboard and/or pointing device). Other I/O devices 42 may include, for example, a disk drive, printer, scanner, or the like. Lastly, the clock system 30 controls a timer for use by the disclosed embodiments.
  • Operation of a memory device (e.g., memory 34), such as a change in state from a binary one to a binary zero (or vice versa) may comprise a visually perceptible physical transformation. The transformation may comprise a physical transformation of an article to a different state or thing. For example, a change in state may involve accumulation and storage of charge or release of stored charge. Likewise, a change of state may comprise a physical change or transformation in magnetic orientation, or a physical change or transformation in molecular structure, such as from crystalline to amorphous or vice versa.
  • Aspects of the disclosed embodiments may be described in terms of algorithms and symbolic representations of operations on data bits stored on memory. These algorithmic descriptions and symbolic representations generally include a sequence of operations leading to a desired result. The operations require physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. Customarily, and for convenience, these signals are referred to as bits, values, elements, symbols, characters, terms, numbers, or the like. These and similar terms are associated with physical quantities and are merely convenient labels applied to these quantities.
  • While embodiments have been described in the context of fully functioning computers, those skilled in the art will appreciate that the various embodiments are capable of being distributed as a program product in a variety of forms and that the disclosure applies equally regardless of the particular type of machine or computer-readable media used to actually effect the embodiments.
  • While the disclosure has been described in terms of several embodiments, those skilled in the art will recognize that the disclosure is not limited to the embodiments described herein and can be practiced with modifications and alterations within the spirit and scope of the invention. Those skilled in the art will also recognize improvements to the embodiments of the present disclosure. All such improvements are considered within the scope of the concepts disclosed herein. Thus, the description is to be regarded as illustrative instead of limiting.

Claims (1)

1. A server computer included in a network, the server computer being operable to determine a next block signer in a blockchain, the server computer comprising:
one or more processors; and
memory containing instructions executable by the one or more processors whereby the server computer is operable to:
receive a plurality of bids from a plurality of nodes of the network;
select a bid from the plurality of bids, the selected bid being provided by a node from the plurality of nodes of the network; and
grant a right to sign a next block in a blockchain to the node that provided the selected bid.
US17/718,267 2016-04-21 2022-04-11 Techniques for processing transactions of order-dependent blockchain protocols Abandoned US20220345318A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/718,267 US20220345318A1 (en) 2016-04-21 2022-04-11 Techniques for processing transactions of order-dependent blockchain protocols

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201662325637P 2016-04-21 2016-04-21
US201662325607P 2016-04-21 2016-04-21
US201662325647P 2016-04-21 2016-04-21
US15/494,277 US10608825B2 (en) 2016-04-21 2017-04-21 Decentralized exchanges in a distributed autonomous platform
US16/834,979 US11303457B2 (en) 2016-04-21 2020-03-30 Techniques for processing transactions of order-dependent blockchain protocols
US17/718,267 US20220345318A1 (en) 2016-04-21 2022-04-11 Techniques for processing transactions of order-dependent blockchain protocols

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US15/494,277 Continuation US10608825B2 (en) 2016-04-21 2017-04-21 Decentralized exchanges in a distributed autonomous platform

Publications (1)

Publication Number Publication Date
US20220345318A1 true US20220345318A1 (en) 2022-10-27

Family

ID=60330945

Family Applications (3)

Application Number Title Priority Date Filing Date
US15/494,277 Active 2037-11-30 US10608825B2 (en) 2016-04-21 2017-04-21 Decentralized exchanges in a distributed autonomous platform
US16/834,979 Active US11303457B2 (en) 2016-04-21 2020-03-30 Techniques for processing transactions of order-dependent blockchain protocols
US17/718,267 Abandoned US20220345318A1 (en) 2016-04-21 2022-04-11 Techniques for processing transactions of order-dependent blockchain protocols

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US15/494,277 Active 2037-11-30 US10608825B2 (en) 2016-04-21 2017-04-21 Decentralized exchanges in a distributed autonomous platform
US16/834,979 Active US11303457B2 (en) 2016-04-21 2020-03-30 Techniques for processing transactions of order-dependent blockchain protocols

Country Status (1)

Country Link
US (3) US10608825B2 (en)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839378B1 (en) * 2016-01-12 2020-11-17 21, Inc. Systems and methods for performing device authentication operations using cryptocurrency transactions
EP4209983A1 (en) * 2016-02-23 2023-07-12 nChain Licensing AG Methods and systems for the efficient transfer of entities on a blockchain
US11954697B2 (en) * 2017-02-27 2024-04-09 Ncr Corporation Blockchain consumer ledger
US20200394652A1 (en) 2017-03-08 2020-12-17 Ip Oversight Corporation A method for creating commodity assets from unrefined commodity reserves utilizing blockchain and distributed ledger technology
CA3058919A1 (en) * 2017-04-12 2018-10-18 Royal Bank Of Canada A bid platform using smart contracts and distributed ledger
US11165589B2 (en) * 2017-05-11 2021-11-02 Shapeshift Ag Trusted agent blockchain oracle
JP2020523813A (en) * 2017-06-07 2020-08-06 エヌチェーン ホールディングス リミテッドNchain Holdings Limited Credential generation and distribution method for blockchain networks
GB201713031D0 (en) * 2017-08-14 2017-09-27 Nchain Holdings Ltd Computer-implemented system and method
US11159537B2 (en) 2017-11-30 2021-10-26 Bank Of America Corporation Multicomputer processing for data authentication and event execution using a blockchain approach
US10949511B2 (en) 2017-11-30 2021-03-16 Bank Of America Corporation Multicomputer processing for data authentication using a blockchain approach
US11271717B2 (en) 2018-02-21 2022-03-08 Thunder Token Inc. Blockchain consensus methods and systems
US10873625B2 (en) * 2018-02-26 2020-12-22 International Business Machines Corpora ! Ion Service management for the infrastructure of blockchain networks
US20190287107A1 (en) * 2018-03-15 2019-09-19 International Business Machines Corporation Resource equity for blockchain
CN108833483B (en) * 2018-05-22 2020-11-03 四川海纳仁东科技有限公司 Packet-based DPOS proxy node selection method
CN109104284B (en) * 2018-07-11 2020-09-29 四川大学 Block chain anonymous transmission method based on ring signature
US11233648B2 (en) 2018-09-04 2022-01-25 Microsoft Technology Licensing, Llc Identity system for use with blockchain platform
CN109300036B (en) * 2018-09-14 2020-08-14 百度在线网络技术(北京)有限公司 Bifurcation regression method and device of block chain network
US10805094B2 (en) 2018-10-08 2020-10-13 International Business Machines Corporation Blockchain timestamp agreement
US11924360B2 (en) 2018-10-08 2024-03-05 Green Market Square Limited Blockchain timestamp agreement
US10608829B1 (en) 2018-10-08 2020-03-31 International Business Machines Corporation Blockchain timestamp agreement
EP3767514A1 (en) * 2019-06-26 2021-01-20 Indian Institute of Technology Bombay Method for scaling computation in blockchain by delaying transaction execution
US11682095B2 (en) 2020-02-25 2023-06-20 Mark Coast Methods and apparatus for performing agricultural transactions
CN111401996A (en) * 2020-03-10 2020-07-10 大仝智能科技有限公司 Decentralized commodity electronic bidding transaction system and method based on block chain
US20230073427A1 (en) * 2021-04-05 2023-03-09 Protoblock, Inc. Decentralized hard exchange
US12015702B2 (en) 2021-06-16 2024-06-18 Cisco Technology, Inc. Key sharing for media frames using blockchain
US11979484B2 (en) 2021-07-21 2024-05-07 Bank Of America Corporation System for electronic data encryption and decryption using a consensus draft process

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160218879A1 (en) * 2015-01-23 2016-07-28 Daniel Robert Ferrin Method and apparatus for the limitation of the mining of blocks on a block chain
US20170180134A1 (en) * 2015-12-21 2017-06-22 Mastercard International Incorporated Method and system for blockchain variant using digital signatures
US9875510B1 (en) * 2015-02-03 2018-01-23 Lance Kasper Consensus system for tracking peer-to-peer digital records
US20190173667A1 (en) * 2016-12-23 2019-06-06 Cloudminds (Shenzhen) Robotics Systems Co., Ltd. Block generation method, device and blockchain network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10862959B2 (en) 2016-11-28 2020-12-08 Keir Finlow-Bates Consensus system and method for adding data to a blockchain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160218879A1 (en) * 2015-01-23 2016-07-28 Daniel Robert Ferrin Method and apparatus for the limitation of the mining of blocks on a block chain
US9875510B1 (en) * 2015-02-03 2018-01-23 Lance Kasper Consensus system for tracking peer-to-peer digital records
US20170180134A1 (en) * 2015-12-21 2017-06-22 Mastercard International Incorporated Method and system for blockchain variant using digital signatures
US20190173667A1 (en) * 2016-12-23 2019-06-06 Cloudminds (Shenzhen) Robotics Systems Co., Ltd. Block generation method, device and blockchain network

Also Published As

Publication number Publication date
US10608825B2 (en) 2020-03-31
US20170338963A1 (en) 2017-11-23
US11303457B2 (en) 2022-04-12
US20200389323A1 (en) 2020-12-10

Similar Documents

Publication Publication Date Title
US20220345318A1 (en) Techniques for processing transactions of order-dependent blockchain protocols
US20200396082A1 (en) Techniques to incentivize a blockchain network to prioritize state changes
JP7304116B2 (en) Blockchain probabilistic timer transaction synchronization
Daian et al. Flash boys 2.0: Frontrunning, transaction reordering, and consensus instability in decentralized exchanges
Kalodner et al. Arbitrum: Scalable, private smart contracts
CN109964446B (en) Consensus method based on voting
US11170439B2 (en) Method and apparatus for distributed, privacy-preserving and integrity-preserving exchange, inventory and order book
KR101920015B1 (en) Method for managing token based on heterogeneous blockchains, and token management server using the same
US10708071B1 (en) Consensus protocols in distributed computing systems
JP2020534734A (en) Execution of smart contracts using distributed coordination
US20190114707A1 (en) Distribution of Blockchain Tokens
Yu et al. A survey of consensus and incentive mechanism in blockchain derived from P2P
Gu et al. Empirical measurements on pricing oracles and decentralized governance for stablecoins
Chen et al. SBRAC: Blockchain-based sealed-bid auction with bidding price privacy and public verifiability
JP2019076350A (en) Item trading system and item trading program
JP2019079502A (en) Item trading system and item trading program
US11245528B1 (en) Protocols for decentralized networks
WO2019150132A1 (en) Secure, distributed futures market exchange
CN110689412A (en) Method, device, server and storage medium for game virtual article transaction based on block chain
Almashaqbeh Cachecash: A cryptocurrency-based decentralized content delivery network
Emami et al. A blockchain-based privacy-preserving anti-collusion data auction mechanism with an off-chain approach
WO2022189780A1 (en) Improved blockchain relying on advanced consensus
US11570001B1 (en) Protocols for decentralized networks
GB2599734A (en) Blockchain
EP4084429A1 (en) System and method for distributed transaction propagation and verification

Legal Events

Date Code Title Description
AS Assignment

Owner name: PROTOBLOCK, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BERG, YEHUDA JAY;REEL/FRAME:060216/0519

Effective date: 20170527

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

STCB Information on status: application discontinuation

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