Patents by Inventor Stephane Vincent

Stephane Vincent 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: 11050821
    Abstract: The computer implemented invention provides a method, corresponding systems and arrangement within a network for detecting changes in the topology, ordering those changes by occurrence and constructing a new topology reflecting the changes. The invention addresses problems with keeping the knowledge of the network topology at each network node current, particularly when the network topology is dynamic, i.e. when links fail and recover at arbitrary times. The topology updating is event driven, as it is activated when some change in the network, particularly with nodes and links occurs. Events cause topology changes to be reported to other nodes in the network. Timestamping of messages allows the messages to be correctly applied as the most recent update or discarded. An algorithm is provided that allows each merchant node to maintain a correct view of the network topology despite link and node failures.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: June 29, 2021
    Assignee: nChain Licensing AG
    Inventors: Patrick Motylinski, Stephane Vincent
  • Publication number: 20210192514
    Abstract: The invention relates to distributed processing systems that involve the distribution of computational tasks to one or more untrusted worker computer systems. When an untrusted worker computer system performs a calculation on behalf of a requesting computer system, the requesting computer system (or other verifying computer system) is provided with information that allows the requesting computer system to cryptographically verify that that task has been correctly completed. After completing the calculation, the worker computer system provides information to the requester that includes a proof and I/O data. The requesting computer system may use a set of public verification key parameters, the proof, and the I/O data to verify that the computation performed by an untrusted worker computer system is correct. In some examples, the calculation performed by the worker is associated with the verification of a blockchain transaction.
    Type: Application
    Filed: November 1, 2018
    Publication date: June 24, 2021
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210160309
    Abstract: The invention relates to method for adjusting the minimum and maximum number of peer nodes that a node on the blockchain network will connect with. The adjustment takes in to account the bandwidth and processing capability of the node. Bandwidth capacity of a node is determined based on a maximum data amount processable by the node over a time period. Data is monitored passing through interfaces of the node, to and from peer nodes, and a profile factor of the node is determined from the difference between the input data to output data. Over a plurality of time periods monitoring said data the data analysed is used to set a minimum number of peer nodes and a maximum number of peer nodes connectable to the node according to said monitored data and the maximum number of peers connectable to the node. The method enables a node to adjust the number of connections according to performance limitation factors, such as bandwidth availability and processing performance.
    Type: Application
    Filed: June 25, 2018
    Publication date: May 27, 2021
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT, Alexandra COVACI
  • Publication number: 20210160077
    Abstract: There may be provided a computer-implemented method. It may be implemented using a blockchain network such as, for example, the Bitcoin network.
    Type: Application
    Filed: June 19, 2018
    Publication date: May 27, 2021
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210149878
    Abstract: The invention relates to method for a node of a blockchain network, the computer-implemented method comprising receiving or generating, at a node, 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: Application
    Filed: June 25, 2018
    Publication date: May 20, 2021
    Inventors: Simone MADEO, Patrick MOTYLINSKI, Giuseppe DESTEFANIS, Stephane VINCENT
  • Publication number: 20210135932
    Abstract: Methods and devices for propagating transactions in a network of nodes, each node having one or more connections to other nodes. The method includes receiving a plurality of incoming transactions over a time period; combining the plurality of incoming transactions using network coding to generate a composite message; sending the composite message to one or more nodes in the network; and determining an adjusted time period based on an equilibrium constant parameter and a count of transactions in the plurality of incoming transactions received over the time periodk.
    Type: Application
    Filed: July 6, 2018
    Publication date: May 6, 2021
    Inventors: Patrick MOTYLINSKI, Simone MADEO, Giuseppe DESTEFANIS, Stephane VINCENT
  • Publication number: 20210083852
    Abstract: Computer-implemented methods and systems suitable for implementation in nodes of a blockchain network are provided. Modified blockchain node structures, network architectures, and protocols for handling large numbers of transactions and large transaction blocks are described. A computer-implemented method for a node of a blockchain network is described which includes: receiving mined data from the blockchain network corresponding to a plurality of validated transactions; assembling blocks based on said mined data; and sending assembled blocks to a storage entity for storing on a blockchain.
    Type: Application
    Filed: June 5, 2018
    Publication date: March 18, 2021
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210075597
    Abstract: Systems and methods described herein relate to techniques in which multiple parties each generate and exchange quantities that are based on a shared secret (e.g., powers of the shared secret) without exposing the shared secret. According to a protocol, two or more parties may exchange sets of elliptic curve points generated over polynomials that can be used, by each of the two or more parties, to determine a power of a shared secret. The protocol may be utilised as part of determining parameters for a smart contract that is broadcast to a blockchain network (e.g., Bitcoin). Based on the protocol, an additional party (e.g., a third party different from the two or more parties) may perform a computational task such as execution of the smart contract.
    Type: Application
    Filed: December 7, 2018
    Publication date: March 11, 2021
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210075610
    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: Application
    Filed: December 12, 2018
    Publication date: March 11, 2021
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210042112
    Abstract: Techniques described herein may be utilized to serialise and de-serialise arithmetic circuits that are utilized in the execution of computer programs. The arithmetic circuit may be utilized to build a Quadratic Arithmetic Problem (QAP) that is compiled into a set of cryptographic routines for a client and a prover. The client and prover may utilize a protocol to delegate execution of a program to the prover in a manner that allows the client to efficiently verify the prover correctly executed the program. The arithmetic circuit may comprise a set of symbols (e.g., arithmetic gates and values) that is compressed to produce a serialised circuit comprising a set of codes, wherein the set of symbols is derivable from the set of codes in a lossless manner. Serialisation and de-serialisation techniques may be utilized by nodes of a blockchain network.
    Type: Application
    Filed: March 15, 2019
    Publication date: February 11, 2021
    Inventors: Alexandra COVACI, Patrick MOTYLINSKI, Simone MADEO, Stephane VINCENT
  • Publication number: 20200366492
    Abstract: The invention relates to distributed ledger technologies such as consensus-based blockchains. Computer-implemented N methods for reducing arithmetic circuits derived from smart contracts are described. The invention is implemented using a blockchain network, which may be, for example, a Bitcoin blockchain. A set of conditions encoded in a first programming language is obtained. The set of conditions is converted into a programmatic set of conditions encoded in a second programming language. The programmatic set of conditions is precompiled into precompiled program code. The precompiled program code is transformed into an arithmetic circuit. The arithmetic circuit is reduced to form a reduced arithmetic circuit, and the reduced arithmetic circuit is stored.
    Type: Application
    Filed: October 29, 2018
    Publication date: November 19, 2020
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200348916
    Abstract: The invention provides systems and methods for converting high level source code into an arithmetic circuit which represents the functionality expressed in the source code. The invention comprises a translation/interpretation component for performing this conversion. In a preferred embodiment, the source code is a smart contract such as those used in relation to a blockchain platform. The invention could be used in relation to the Bitcoin network, for example. A method in accordance with an embodiment comprises the steps of: processing a portion of high level source code (e.g. a smart contract) to generate an arithmetic circuit. The arithmetic circuit comprises one or more arithmetic gates arranged to represent at least some of the functionality expressed in the source code. The processing involves evaluating one or more constants provided in the source code to produce one or more expressions that include Boolean and/or arithmetic operators.
    Type: Application
    Filed: October 29, 2018
    Publication date: November 5, 2020
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200322132
    Abstract: Determining when and/or how to execute a program or script published to a blockchain network may rely on data that is external to the blockchain (i.e., external data) such as data about the real-world state and events. A prover (e.g., a node of the blockchain network) may perform one or more computations on behalf of a client, such as the execution of the program. To execute the program properly, the prover may rely on external data, which the prover may obtain from a data provider that has a trust relationship with the client (e.g., the client accepts as valid data provided by a trusted data provider). Systems and methods described herein may be utilized by a prover to provide cryptographically verifiable assurances of the authenticity of input data purportedly obtained from a data provider, the input data utilized in the execution of a program or script published to a blockchain network. An example of a blockchain network is a Bitcoin-based network.
    Type: Application
    Filed: December 12, 2018
    Publication date: October 8, 2020
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200295919
    Abstract: A computer implemented method and system is described which uses blockchain technology as a storage system for data acquired from a digital twin. The blockchain can be used to generate an immutable transaction history of data produced by the digital twin. In the case of an error, failure, incident, or accident, parties of interest can then access and analyse an immutable set of data. The blockchain network can also execute a digital smart contract based on the data received from a digital twin. The invention may be used in conjunction with the Bitcoin blockchain or another blockchain protocol.
    Type: Application
    Filed: October 23, 2018
    Publication date: September 17, 2020
    Inventors: Alexandra COVACI, Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200295936
    Abstract: A computer implemented method and system is described which uses blockchain technology as a storage system for data acquired from a digital twin. The blockchain can be used to generate an immutable transaction history of data produced by the digital twin. In the case of an error, failure, incident, or accident, parties of interest can then access and analyse an immutable set of data. The blockchain network can also execute a digital smart contract based on the data received from a digital twin. The invention may be used in conjunction with the Bitcoin blockchain or another blockchain protocol.
    Type: Application
    Filed: October 23, 2018
    Publication date: September 17, 2020
    Inventors: Alexandra COVACI, Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200278963
    Abstract: Computer-implemented methods and systems are provided which are suitable for implementation in transaction validation nodes of a blockchain network. Modified blockchain node structures, network architectures, and protocols for handling large numbers of transactions and large transaction blocks are described. The invention is particularly suited, but not limited, to use with the Bitcoin blockchain. A computer-implemented method is provided which includes: (i) receiving transactions from the blockchain network; (ii) validating transactions received from the blockchain network; (iii) maintaining a distributed, decentralized storage of validated transactions with other transaction validation nodes in the blockchain network; and (iv) distributing data corresponding to said validated transactions to the blockchain network for mining.
    Type: Application
    Filed: June 5, 2018
    Publication date: September 3, 2020
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200266985
    Abstract: The invention relates to distributed ledger technologies such as consensus-based blockchains. A blockchain transaction may include digital resources that are encumbered by a locking script that encodes a set of conditions that must be fulfilled before the encumbered resources may be used (e.g., transferring ownership/control of encumbered resources). A worker (e.g., a computer system) performs one or more computations to generate a proof, which is encoded as part of an unlocking script. A verification algorithm may utilize the proof, a verification key, and additional data such as a cryptographic material associated with the worker (e.g., a digital signature) to verify that digital assets of the transaction should be transferred. As a result of the validation of this transaction, any third party is able to check the contract was executed corrected rather than re-executing the contract, thus saving computational power.
    Type: Application
    Filed: October 29, 2018
    Publication date: August 20, 2020
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200213125
    Abstract: A protocol is described which: (i) allows storage nodes to be rewarded for maintaining a public blockchain; and (ii) verifies the integrity of the blockchain with the help of a Proof-of-Blockchain Storage (PoBS) scheme. The protocol provides a way to cryptographically check if a data file stored on a remote server is intact using a challenge-response method. The protocol is secured against a man-in-the-middle attack. A malicious peer cannot pass the challenge to a third party which is storing the data and give back the response. The scheme is also publicly verifiable.
    Type: Application
    Filed: July 16, 2018
    Publication date: July 2, 2020
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200202312
    Abstract: Methods and devices for propagating transactions in a network of nodes, each node having one or more connections to other nodes. The method includes determining that one of the nodes is a bottleneck for propagation of transactions; receiving, over a first time period, a plurality of new transactions from one or more first nodes in the network of nodes; combining the plurality of new transactions using network coding and a local encoding vector to generate a message; and sending the message and a global encoding vector to one or more second nodes in the network of nodes instead of sending the plurality of new transactions to the one or more second nodes. The network may be a blockchain network.
    Type: Application
    Filed: June 4, 2018
    Publication date: June 25, 2020
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20200186336
    Abstract: Methods and devices for two nodes to authenticate each other as credentialed by a group of autonomous specialized nodes, without involving the group or involving a centralized certificate manager or authenticator. The method may involve a first node and a second node using bilinear pairing operations involving their respective identifiers and secret points to derive the same session key. Provided the secret points and identifiers were obtained from the group using the group private key, the bilinear pairing operation leads to generation of the same session key at each of the two nodes, thereby authenticating their respective credentials and enabling trusted communications between the two nodes.
    Type: Application
    Filed: June 4, 2018
    Publication date: June 11, 2020
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT