Patents by Inventor Craig Steven Wright

Craig Steven Wright has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 12034806
    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: July 9, 2024
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Patrick Motylinski, Stephane Vincent, Craig Steven Wright
  • Publication number: 20240220974
    Abstract: The invention relates to the fields of tokenisation, blockchain, and smart contract technologies. Provided herein are a computer-implemented method and system which use a computer-based repository to store a contract and control the visibility and/or performance of the contract. A transaction is broadcasted to a blockchain, the transaction comprising i) at least one unspent output (UTXO) and ii) metadata comprising an identifier indicative of the location where the contract is stored. The contract is then renewed or rolled on by generating a new key using data relating to a previous key associated with the contract, generating a script comprising the new key, the location of the contract and a hash of the contract, and paying an amount of currency to the script. Functionalities provided or disclosed herein enable authorised parties to view a source (or existing) contract by means of its connection with the renewed or rolled on contract.
    Type: Application
    Filed: March 15, 2024
    Publication date: July 4, 2024
    Inventors: Craig Steven Wright, Stephane Savanah
  • Patent number: 12026703
    Abstract: The invention provides a blockchain-implemented control method and corresponding system(s). The invention may control access to an internet-enabled resource such as an IoT device that is provided with computing capabilities enabling it to communicate with other computer-based resources and interact with a distributed ledger such as a blockchain. In one embodiment, the invention provides a method for controlling the use of an internet-enabled resource comprising providing a first blockchain transaction comprising at least one output which is redeemable only by provision of at least: i) a secret value selected by a user; and ii) a signature associated with a resource provider; sending use-related information to the resource; generating a second blockchain transaction requesting at least the secret value; and modifying the second blockchain transaction to include the secret value.
    Type: Grant
    Filed: May 8, 2023
    Date of Patent: July 2, 2024
    Assignee: nChain Licensing AG
    Inventors: Stephane Vincent, Craig Steven Wright
  • Publication number: 20240211222
    Abstract: The invention provides methods and systems which enable additional functionality to be inserted into blockchain scripts with ease and in an effective and manner. According to one embodiment, the invention provides a blockchain-implemented method comprising the steps of arranging a plurality or selection of scripting language primitives to provide, upon execution, the functionality of a high-level scripting language primitive, wherein the scripting language is associated with a blockchain protocol; inserting the plurality of scripting language primitives at least once into a script; and inserting the script into blockchain transaction (Tx). The high-level scripting language primitive may perform, for example, an arithmetic operation such as multiplication or division. The scripting language primitives may be called op_codes, words, or commands, and are native to the scripting language. The scripting language may be Script, and the blockchain protocol may be a version of the Bitcoin protocol.
    Type: Application
    Filed: February 21, 2024
    Publication date: June 27, 2024
    Inventors: Craig Steven WRIGHT, Stephane SAVANAH
  • Publication number: 20240211469
    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, wherein an 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 coin mixing transactions. A nonce public key for each output, generated based on 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 claim ownership.
    Type: Application
    Filed: December 15, 2023
    Publication date: June 27, 2024
    Inventors: Martin SEWELL, Daniel JOSEPH, Craig Steven WRiGHT
  • Publication number: 20240214179
    Abstract: A computer-implemented method of implementing a hash function (HF) using blockchain transactions, wherein the method is performed by a first party and comprises: generating a first blockchain transaction; and submitting the first blockchain transaction to one or more nodes of a blockchain transaction, wherein the first blockchain transaction comprises a locking script configured to, when executed together with an unlocking script of a second blockchain transaction comprising a target data item, generate a hash result of the target data item.
    Type: Application
    Filed: March 7, 2022
    Publication date: June 27, 2024
    Inventors: Craig Steven WRIGHT, Wei ZHANG, Alec BURNS
  • Publication number: 20240214180
    Abstract: A computer-implemented access method is provided. The method comprises the steps of: (i) providing a verification data item of a one-way function chain of data items; (ii) submitting, to a blockchain (such as the Bitcoin blockchain), an access blockchain transaction comprising a data item of the chain; (iii) applying the one-way function to the data item to provide an output; (iv) comparing the output of step (iii) to the verification item to provide an outcome; and (v) based on the outcome of step (iv): (a) allocating the output as a further verification data item for verifying a further data item of the chain; and (b) granting access to a resource associated with the data item.
    Type: Application
    Filed: December 28, 2023
    Publication date: June 27, 2024
    Inventor: Craig Steven WRIGHT
  • Publication number: 20240211933
    Abstract: Computer-implemented systems and methods are detailed for establishing information on states of a machine-executable contract on a blockchain, for instance in the context of unspent transaction outputs (UTXOs) and the determination of states within deterministic finite automaton (DFA) implementations of contracts. The states are determined using agent public keys, each public key having metadata for information of interest associated with codes or tags. Each of the agents provides a respective public key into a multi-signature redeem script that generates a locking script, with a hash to which a scriptPubkey is designated. ScriptPubKey values of each script may be used to provide keys for use in constructing an external database and mapping the keys from the scriptPubKey values. Upon searching the blockchain, the database is used to determine if the information of interest is present in UTXOs. A match from the search indicates, in a definitive manner, the state.
    Type: Application
    Filed: January 9, 2024
    Publication date: June 27, 2024
    Inventors: Pedro JIMENEZ-DELGADO, Craig Steven WRIGHT
  • Patent number: 12021924
    Abstract: A computer-implemented method for connecting to a layered network. The layered network comprises a plurality of nodes arranged in an ordered set of layers. The ordered set of layers comprises, in order, a core layer comprising a set of core nodes, a second layer comprising a set of second nodes, and one or more outer layers each comprising a respective set of outer nodes. Each core node is connected to at least one other core node. The method is performed by a connecting node and comprises connecting to the network according to a connection protocol. The connection protocol requires that each node must connect to at least one node of a preceding layer, and each outer node must also connect to at least one core node.
    Type: Grant
    Filed: January 19, 2021
    Date of Patent: June 25, 2024
    Assignee: nChain Licensing AG
    Inventors: Owen Vaughan, Jack Owen Davies, Craig Steven Wright
  • Publication number: 20240202718
    Abstract: A token issuer issues a token evidencing that a first party passed a verification. A first blockchain transaction recorded on chain comprises an output comprising a) funds of the first party for a commercial transaction to be conducted with a second party and b) a locking script defining a condition for unlocking the funds. The locking script further comprises a data payload comprising the token. A second party verifies that the first blockchain transaction has been validated for recordal on the blockchain and that its output remains unspent, and thus in doing so verifies both that the first party has the funds available and is evidenced to have passed the verification by the token issuer. The commercial transaction is dependent on this verification, and involves a second blockchain transaction being recorded on chain, having an input pointing to the output of the first transaction and comprising a corresponding unlocking script.
    Type: Application
    Filed: March 14, 2022
    Publication date: June 20, 2024
    Inventors: Craig Steven WRIGHT, Jack Owen DAVIES
  • Publication number: 20240205030
    Abstract: According to a first aspect of the present invention, there is provided a computer-implemented method for verifying that an identified transaction is stored in a blockchain. A blockchain uniform resource indicator (BURI) character string is obtained. The BURI character string is parsed to identify delimiter characters therein, and thereby extracting one or more Merkle proof portions and a transaction identifier portion separated by the delimiter characters, the Merkle proof portion(s) for verifying that the identified transaction belongs to an identified block. At least part of the BURI is used to obtain a Merkle root hash. The Merkle proof portion(s) is used to determine whether the transaction identifier portion is valid against the Merkle root hash, thereby verifying the identified transaction using the BURI character string, without accessing a payload of the identified block.
    Type: Application
    Filed: March 8, 2022
    Publication date: June 20, 2024
    Inventors: Craig Steven WRIGHT, Alexander GRAHAM, Jack Owen DAVIES
  • Publication number: 20240195621
    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: Application
    Filed: January 8, 2024
    Publication date: June 13, 2024
    Inventors: Patrick MOTYLINSKI, Stephane VINCENT, Giuseppe DESTEFANIS, Simone MADEO, Craig Steven WRIGHT
  • Patent number: 12010216
    Abstract: The present disclosure relates to highly secure, high speed encryption methodologies suitable for applications such as media streaming, streamed virtual private network (VPN) services, large file transfers and the like. For example, encryption methodologies as described herein can provide stream ciphers for streaming data from, for example, a media service provider to a plurality of users. Certain configurations provide wire speed single use encryption. The methodologies as described herein are suited for use with blockchain (e.g. Bitcoin) technologies.
    Type: Grant
    Filed: December 12, 2022
    Date of Patent: June 11, 2024
    Assignee: nChain Licensing AG
    Inventor: Craig Steven Wright
  • Patent number: 12010221
    Abstract: A method of communicating a secret (k0, k1) on the Bitcoin blockchain is disclosed. The method comprises sending information identifying secrets selectable by the recipient and receiving a first public key (Ui) of an elliptic curve cryptography system, corresponding to a first secret (Si) selected for access by the recipient and for which a first private key (m) is accessible to the recipient. A second public key (U1-i) is received, corresponding to a second secret not selected for access by the recipient, wherein a corresponding second private key is not available to the recipient. First and second secrets encrypted by means of the respective first and second public keys (X0, X1) are sent to the recipient, wherein the first secret is accessible to the recipient by means of the first private key, the second secret is inaccessible to the recipient, and the sender is unable to distinguish between the first and second secrets.
    Type: Grant
    Filed: September 18, 2022
    Date of Patent: June 11, 2024
    Assignee: nChain Licensing AG
    Inventor: Craig Steven Wright
  • Publication number: 20240187214
    Abstract: Techniques are provided for a computer-implemented security method implemented on one or more blockchains. The method comprises the steps of: applying a one-way function to a first secret value accessible to a first user to create a first veiled secret value; communicating the first veiled secret value from the first user to a second user; receiving a second veiled secret value from the second user, wherein the second veiled secret value is created by applying a one-way function to a second secret value accessible to the second user; and constructing a first blockchain transaction comprising the first veiled secret value and the second veiled secret value, the first blockchain transaction arranged to be unlockable to transfer control of a first resource upon provision of both the first secret value and the second secret value to the first transaction.
    Type: Application
    Filed: October 25, 2023
    Publication date: June 6, 2024
    Inventor: Craig Steven WRIGHT
  • Publication number: 20240184881
    Abstract: A method and system are disclosed for a computing resource to oversee handling and execution of a looping process, comprising: the computing resource monitoring a state of the blockchain to cause one or more transactions to be written to a blockchain, wherein execution of the looping process comprises the computing resource managing and running a loop, the loop having an index representing a current iteration and a limit indicating a total number of iterations of the loop, wherein an iteration of the loop comprises: incrementing the index by one, and executing a code block of the loop containing an if condition then action statement; storing the cryptographic hash in a blockchain transaction and broadcasting the blockchain transaction to the blockchain network to record the execution of the iteration of the loop; and repeating the loop steps until the limit is reached.
    Type: Application
    Filed: December 24, 2023
    Publication date: June 6, 2024
    Inventors: Craig Steven WRIGHT, Stephane SAVANAH
  • Publication number: 20240184775
    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: Application
    Filed: November 30, 2023
    Publication date: June 6, 2024
    Inventors: Craig Steven WRIGHT, Brock Gilles DOIRON
  • Patent number: 11995646
    Abstract: A method and corresponding system is presented for controlling a blockchain transaction output and/or specifying the recipient of the output. It also provides a method of controlling and/or generating an electronic communication. The unlocking script is provided in order to spend an output from a further transaction (Tx2) on the blockchain. The input of the transaction (Tx1) and/or the output of the further transaction (Tx2) may be associated with a tokenised asset represented on, or referenced via, the blockchain. The notification address may be associated with an asset or resource represented on the blockchain, or a controller of an asset or resource represented on the blockchain. The notification address may be a network address, a cryptographic key, a uniform resource locator (URI), email address or any other address or identifier which can be represented in the metadata of a transaction script and used as a destination for an electronic communication.
    Type: Grant
    Filed: January 11, 2023
    Date of Patent: May 28, 2024
    Assignee: nChain Licensing AG
    Inventors: Gavin Allen, Craig Steven Wright
  • Patent number: 11995645
    Abstract: A computer implemented system and a method for providing user related data, such as reputational information, on users of a blockchain involved in transactions is detailed. The method includes an approach for evaluating fulfilment of transactions, particularly in the context of contracts, and then providing a record of that on the blockchain through reputational information. As a result, at a late time, this reputational information can be retrieved. Similar reputational information for other transactions can be retrieved and linked to the same user, for instance based on the use of a hash of the master public key for a user. Aggregate reputational information can be computed from the pieces of reputational information retrieved.
    Type: Grant
    Filed: February 17, 2022
    Date of Patent: May 28, 2024
    Assignee: nChain Licensing AG
    Inventors: Martin Sewell, Vera Vsevolozhsky, Craig Steven Wright
  • Publication number: 20240171407
    Abstract: Embodiments provide verification methods and systems for use in respect of data-oriented blockchain applications. In contrast to conventional signature verification in blockchain protocols, embodiments disclosed herein are performed in-situ within a single transaction, using only data that is provided within that transaction. Therefore, there is no reliance upon signatures provided from other transactions, and potential exploits such as replay attacks can be prevented. In an embodiment, this can be achieved by placing the signature in the output of the transaction rather than the locking script.
    Type: Application
    Filed: March 17, 2022
    Publication date: May 23, 2024
    Inventors: Craig Steven WRIGHT, Jack Owen DAVIES