Patents Assigned to nChain Licensing AG
  • Patent number: 11915238
    Abstract: Computer implemented methods are provided that create and/or validate a spending blockchain transaction that includes i) a plurality of locking scripts each representing an instance of an execution thread (which can be execution threads that are forked from an execution thread represented by a locking script of a previous blockchain transaction and/or execution threads of at least one previous blockchain transaction that are managed and/or controlled for inter-thread communication and control) or ii) a locking script representing an instance of an execution thread joined from a plurality of execution threads represented at least one previous blockchain transaction. Once created and/or validated, the spending blockchain transaction can be communicated on a blockchain network for storage in a blockchain ledger. The blockchain transactions can implement thread-specific locking scripts and associated fork, join and barrier constructs for concurrent or asynchronous threads of execution.
    Type: Grant
    Filed: December 7, 2018
    Date of Patent: February 27, 2024
    Assignee: nChain Licensing AG
    Inventors: Ying Chan, Dean Kramer
  • Patent number: 11902439
    Abstract: Techniques are presented relating to security of blockchain transactions that transfer digital assets or entities from one resource to another. Techniques provide a computer-implemented method for improving the security, anonymity and/or control of a value-mixing blockchain transaction having a plurality of participating nodes, each node having a respective output address to which the transaction is to allocate value. The method includes encrypting by a node its output address using that node's public key, adding the encrypted output address to a set of output addresses for the transaction, shuffling the order of the encrypted output addresses in the set. Each participating node identifies its encrypted output address in the set, and replaces its encrypted output address with its unencrypted output address. The result is a shuffled set of output addresses that cannot be linked to a particular input. with its unencrypted output address.
    Type: Grant
    Filed: March 2, 2018
    Date of Patent: February 13, 2024
    Assignee: nChain Licensing AG
    Inventors: Daniel Joseph, Craig Steven Wright
  • Patent number: 11900364
    Abstract: The invention presents a solution in which blockchain Transactions are created to implement the functionality of a logic gate. The invention may be implemented on the Bitcoin platform or an alternative blockchain platform. The transaction includes a locking script which comprises instructions selected so as to implement the functionality of a logic gate such as OR, AND, XOR, NOT and so on. In some examples, the instructions may be provided in a hashed form. When the script is executed (because a second transaction is attempting to spend the output associated with the locking script) the inputs will be processed by the conditional instructions to provide an output of TRUE or FALSE. The second transaction is transmitted to the blockchain network for validation and, if determined to be valid, it will be written to the blockchain. Validation of the second transaction can be interpreted as a TRUE output. Thus, the locking script of the first transaction provides the functionality of the desired logic gate.
    Type: Grant
    Filed: May 23, 2022
    Date of Patent: February 13, 2024
    Assignee: nChain Licensing AG
    Inventors: Craig Steven Wright, Stephane Savanah
  • Patent number: 11902441
    Abstract: A computer-implemented method to validate a block at a node within a network of nodes implementing a blockchain conforming to a blockchain protocol. This may be the Bitcoin protocol or an alternative. The method includes determining, serially, that each unspent transaction output referenced as an input in each of the plurality of transactions is unique and, based on that determination allocating each transaction in the plurality of transactions to one of two or more parallel processors, and verifying, in parallel, by the two or more parallel processors, that the transactions in the plurality of transactions comply with transaction-level validation criteria. The node also determines that the block meets block-level validation criteria. If the transactions comply with transaction-level validation criteria and the block complies with block-level validation criteria, the block is deemed valid and the node forwards the block to one or more peer nodes in the network.
    Type: Grant
    Filed: May 4, 2018
    Date of Patent: February 13, 2024
    Assignee: nChain Licensing AG
    Inventors: Patrick Motylinski, Stephane Vincent, Giuseppe Destefanis, Simone Madeo, Craig Steven Wright
  • Patent number: 11900363
    Abstract: Systems and methods are disclosed for establishing information on a state of a machine-executable contract in the context of unspent transactions (UTXOs), blockchain and deterministic finite automaton implementation of contracts, and determination of states within those. Stages of a method include determining information of interest and codes or tags identifying that information, constructing metadata associated with those codes or tags, and combining the metadata with a public key for an agent associated with the information. ScriptPubKey values of each script are used to provide keys for constructing a database and mapping the keys from the scriptPubKey values, linked to the information. A derivation of script hash addresses from the scriptPubKey values is used to populate a digital wallet. A search and match algorithm is used to find UTXOs with matching script hash addresses on a blockchain. The database is populated with UTXOs that match the script hash addresses and keys to complete the combinations.
    Type: Grant
    Filed: February 23, 2022
    Date of Patent: February 13, 2024
    Assignee: nChain Licensing AG
    Inventors: Pedro Jimenez-Delgado, Craig Steven Wright
  • Patent number: 11902371
    Abstract: A specialized network (“merchant”) node to facilitate fast distribution of blockchain transactions over a network of interconnected nodes, as subset of which are merchant nodes interconnected by an overlay network. The merchant node includes a memory storing an assigned portion of a distributed mempool structured as a distributed hash table, the distributed mempool containing pending transactions awaiting confirmation. The merchant node operates by receiving a transaction, including a transaction identifier; hashing the new transaction identifier to obtain a key; determining, using the key, whether the transaction is stored in the distributed mempool or not and, if not, then storing the transaction in the distributed mempool as a pending transaction; and sending the transaction to a set of nodes other than merchant nodes using peer-to-peer connections. The invention may be used in conjunction with the Bitcoin blockchain or an alternative.
    Type: Grant
    Filed: February 24, 2023
    Date of Patent: February 13, 2024
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Patrick Motylinski, Stephane Vincent, Craig Steven Wright
  • Patent number: 11893582
    Abstract: The invention relates to distributed ledge technologies such as consensus-based blockchains. Methods for causing an injection of a serialized previous transaction into a locking script are described. The invention is implemented using a blockchain network, which may be, for example, a Bitcoin blockchain. A first transaction to validate is received at a node in a blockchain network, with the first transaction including a first script. The first script, as a result of being executed, causes the node to at least obtain a first set of field values corresponding to the first transaction and obtain a second set of field values corresponding to a particular transaction. A second transaction is obtained, with the second transaction having been validated and including a second script.
    Type: Grant
    Filed: May 14, 2018
    Date of Patent: February 6, 2024
    Assignee: nChain Licensing AG
    Inventors: Ying Chan, Dean Kramer
  • Patent number: 11893074
    Abstract: According to a first aspect of the disclosure, there is provided a method of accessing data from one or more destination transactions stored on a blockchain, wherein the method comprises selecting one or more hyperlinks linking to the destination transaction(s). According to a second aspect of the disclosure, there is provided a request-response protocol for requesting access to data from a destination transaction.
    Type: Grant
    Filed: August 19, 2020
    Date of Patent: February 6, 2024
    Assignee: nChain Licensing AG
    Inventors: Brock Doiron, Craig Steven Wright
  • Patent number: 11895123
    Abstract: A method of propagating data packets in a network of nodes is disclosed. The method, implemented at one of the nodes, includes: collecting a set of first data packets during a first time period, the set including at least one data packet received from one or more first nodes in the network; obtaining a plurality of encoded data packets, each one of the plurality of encoded data packets being generated by combining two or more first data packets of the set using network coding; determining a mapping of the plurality of encoded data packets and the first data packets of the set to one or more neighbouring nodes connected to the node; and transmitting the plurality of encoded data packets and the first data packets of the set to the one or more neighbouring nodes according to the determined mapping.
    Type: Grant
    Filed: October 3, 2022
    Date of Patent: February 6, 2024
    Assignee: nChain Licensing AG
    Inventors: Silvia Bartolucci, Simone Madeo
  • Patent number: 11893584
    Abstract: The disclosure is related to injection of a serialized set of field values of an unlocking transaction into a locking script, such as for distributed ledge technologies and consensus-based blockchains. A first transaction to validate is received at a node in the blockchain network. The first transaction includes a first script that includes a set of field values of the first transaction and, as a result of being executed, causes the node to obtain a set of field values. A second transaction is obtained, with the second transaction having been validated. The second transaction includes a second script that, as a result of being executed, causes the node to generate a signature based at least in part on the set of field values supplied as a result of execution of the first script. The first transaction is validated by execution of the first script and the second script.
    Type: Grant
    Filed: December 12, 2022
    Date of Patent: February 6, 2024
    Assignee: nChain Licensing AG
    Inventors: Ying Chan, Dean Kramer
  • Patent number: 11893009
    Abstract: In one aspect, the present disclosure proposes methods, devices and systems and devices for providing a new structured data pertaining to blockchain transactions to implement a new data structure. This new data structure is provided to implement a distributed database. In another aspect, a new distributed data management system (DBMS) is provided, that can manage data associated with the new data structure. However, unlike a conventional DBMS for traditional databases, the present disclosure provides a blockchain DBMS that is configured to managed data associated with one or more blockchain transactions, said data being stored in the new data structure. In another aspect, the present disclosure provides a method for generating or providing one or more blockchain transactions for implementing one or more standard database commands that are received for accessing or manipulating a database, where the data is stored on the new data structure.
    Type: Grant
    Filed: August 18, 2020
    Date of Patent: February 6, 2024
    Assignee: nChain Licensing AG
    Inventors: Craig Steven Wright, Brock Gilles Doiron
  • Patent number: 11886420
    Abstract: A computer-implemented method for transferring a total data record from an input node to an output node using a blockchain. The total data record may be a total payment, in some cases, such as using Bitcoin. The output node shares public key material and the input node selects unspent transaction outputs to use in paying the total value, and determines a plurality of outputs payable to the output node in fixed denominations. The input node generates an output address for each output using the public key material and a respective random number, and mixes the inputs and outputs in one or more coin mixing transactions. A nonce public key for each output, generated based on the respective random number, is shared with the output node either separately or through the blockchain, and the output node can derive the corresponding private key for each output address, enabling it to search for and identify the outputs to which it can then claim ownership.
    Type: Grant
    Filed: April 10, 2018
    Date of Patent: January 30, 2024
    Assignee: nChain Licensing AG
    Inventors: Martin Sewell, Daniel Joseph, Craig Steven Wright
  • Patent number: 11888976
    Abstract: Systems and methods described herein relate to techniques that allow for multiple parties to jointly generate or jointly agree upon the parameters for generation of a smart contract, such as a verification key. Execution of the smart contract may be performed by a third party, for example, a worker node on a blockchain network. Techniques described herein may be utilised as part of a protocol in which parties of a smart contract share powers of a secret in a manner that allows each party to determine an identical common reference string, agree on parameters for a smart contract, agree and/or make proportionate contributions the smart contract, and combinations thereof. The smart contract may be published to a blockchain network (e.g., Bitcoin Cash). The protocol may be a zero-knowledge protocol.
    Type: Grant
    Filed: February 23, 2022
    Date of Patent: January 30, 2024
    Assignee: nChain Licensing AG
    Inventors: Alexandra Covaci, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Patent number: 11886426
    Abstract: A computer-implemented method for a node of a blockchain network comprising receiving or generating data for distribution in the blockchain network, said node having a plurality of interfaces, said data corresponding to an object such as a transaction or a block. The transaction can be a Bitcoin transaction for recordal in a blockchain. The method determines a correlation matrix having correlation coefficients representing the correlation between data processed at each interface of said node. From the correlation matrix a correlation index for each interface is determined. A threshold or indicator is calculated and data or objects such as Bitcoin transactions are relayed from nodes via interfaces according to a set of correlation coefficients of interface receiving the data. An indicator or threshold can derived from the correlation matrix and data is relayed if the correlation between the receiving interface and the other interface is lower than the indicator.
    Type: Grant
    Filed: May 23, 2022
    Date of Patent: January 30, 2024
    Assignee: nChain Licensing AG
    Inventors: Simone Madeo, Patrick Motylinski, Giuseppe Destefanis, Stephane Vincent
  • Patent number: 11880839
    Abstract: In a first aspect, the present disclosure proposes methods, devices and systems for implementing a platform providing a plurality of services that are associated with a blockchain, using a platform processor associated with an application programming interface (API) that is capable of receiving a client request in a Hypertext Transfer Protocol (HTTP) transmission protocol format for a service. Further to suitable verification of the identity of the client and/or the request, a destination address or endpoint for the requested blockchain service is determined, and at least one blockchain transaction is generated based on the destination address to obtain an output script. A result based on the output script is then sent to the given client in the HTTP transmission protocol format. In some aspects, the blockchain transaction is associated with an event stream that is implemented as a Finite State Machine on the blockchain.
    Type: Grant
    Filed: February 15, 2021
    Date of Patent: January 23, 2024
    Assignee: nChain Licensing AG
    Inventor: Andrew James Mee
  • Patent number: 11875340
    Abstract: A computer-implemented method for improving the security of a data record distribution process using a blockchain having a group of input nodes and a group of output nodes, each group having a private-public key pair, but wherein the nodes only have a key share of their respective private key and no node has a full private key. Using threshold signature scheme, secret share joining, and stealth addresses, data records from the input nodes are pooled at a stealth address determined through collaborative action of the input nodes, requiring cooperative determination of their public key, a shared secret, and the stealth address. The public key is copied into the transaction. The output nodes locate the transaction and extract the public key, collaboratively verify its authenticity, and collaboratively determine the shared secret. Having done so, the output nodes may, collectively, sign a second transaction for distributing data records from the stealth address to the output addresses.
    Type: Grant
    Filed: April 6, 2018
    Date of Patent: January 16, 2024
    Assignee: nChain Licensing AG
    Inventors: Martin Sewell, Daniel Joseph, Craig Steven Wright
  • Patent number: 11876887
    Abstract: There may be provided a computer-implemented method. It may be implemented using a blockchain such as, for example, the Bitcoin blockchain. The computer-implemented method includes: i) joining a congress by transferring, by a node operating in a proof-of-work blockchain network, one or more digital assets to a congress pool having one or more other digital assets associated with other members of a congress; ii) detecting, by the node, a special transaction of digital assets on the proof-of-work blockchain network to an address associated with the congress pool, the special transaction satisfying determined criteria; and iii) minting, by the node, one or more digital assets on a proof-of-stake blockchain network in response to detecting the special transaction.
    Type: Grant
    Filed: May 27, 2022
    Date of Patent: January 16, 2024
    Assignee: nChain Licensing AG
    Inventors: John Fletcher, Thomas Trevethan, Marco Bardoscia
  • Patent number: 11870914
    Abstract: A computer-implemented method of generating a share of a digital signature of a message, wherein a threshold number of different signature shares from respective participants of a group of participants are required to generate the digital signature, wherein each participant has a respective private key share, the method being performed by a first one of the participants and comprising: generating a first message-independent component and a first message-dependent component, wherein the message-independent component is generated based on a first private key share and wherein the message-dependent component is generated based on the message; causing the first message-independent component to be made available to a coordinator; and causing a first signature share to be made available to the coordinator for generating the signature based on at least the threshold number of signature shares, wherein the first signature share comprises at least the message-dependent component.
    Type: Grant
    Filed: September 1, 2021
    Date of Patent: January 9, 2024
    Assignee: nChain Licensing AG
    Inventor: Michaella Pettit
  • Patent number: 11868745
    Abstract: Techniques are presented to enable or facilitate the execution of a portion of source code, written in a high-level language (HLL), on a blockchain platform. The technique comprises receiving a portion of source code as input; and generating an output script comprising a plurality of op_codes. The op_codes are a subset of op_codes that are native to a functionally-restricted, blockchain scripting language. The outputted script is arranged and/or generated such that, when executed, the script provides, at least in part, the functionality specified in the source code. The blockchain scripting language is restricted such that it does not natively support complex control-flow constructs or recursion via jump-based loops or other recursive programming constructs.
    Type: Grant
    Filed: August 13, 2022
    Date of Patent: January 9, 2024
    Assignee: nChain Licensing AG
    Inventors: Craig Steven Wright, Stephane Savanah
  • Patent number: 11870894
    Abstract: A computer-implemented method includes: storing an encryption public key that is associated with a group of nodes, each node in the group associated with a private key share, the private key shares associated with a threshold private key reconstruction scheme for the group to allow an encryption private key associated with the encryption public key to be determined from at least a threshold of the private key shares; iteratively obtaining a plurality of indicators provided by a plurality of nodes of the group, each of the indicators representing one of an encryption private key share or a dummy signal; and identifying the encryption private key by iteratively: i) selecting a subset of the indicators; ii) calculating a possible shared secret; and iii) evaluating each possible shared secret against the encryption public key to determine whether the possible shared secret is the encryption private key. The invention is suited for implementation on a blockchain.
    Type: Grant
    Filed: May 6, 2022
    Date of Patent: January 9, 2024
    Assignee: nChain Licensing AG
    Inventors: John Fletcher, Thomas Trevethan