Patents by Inventor Simone MADEO

Simone MADEO 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).

  • 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: 20210026599
    Abstract: Techniques described herein may be utilised to implement methods and systems for lossless compression and serialisation of arithmetic circuits to a bit stream using compression techniques such as the arithmetic coding. An arithmetic circuit representing a smart contract may be compressed using arithmetic coding, thereby generating a compressed arithmetic circuit that can be stored or broadcast to a blockchain network using less computational resources (e.g., data storage resources) than would otherwise be needed to store the arithmetic circuit. The arithmetic circuit can be efficiently compressed using entropy coding based on the frequency of elements in the data structure, such as the arithmetic operator types. Instructions for de-serialisation and de-compression can also be embedded in the bit stream, and can be used (e.g., by another computer system) to reconstruct the original circuit in a lossless manner.
    Type: Application
    Filed: March 15, 2019
    Publication date: January 28, 2021
    Inventors: Silvia BARTOLUCCI, Simone MADEO
  • Publication number: 20210021607
    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: Application
    Filed: March 6, 2019
    Publication date: January 21, 2021
    Inventors: Silvia BARTOLUCCI, Simone MADEO
  • Publication number: 20200403899
    Abstract: A method of propagating data packets in a network of nodes is disclosed.
    Type: Application
    Filed: February 8, 2019
    Publication date: December 24, 2020
    Inventors: Silvia BARTOLUCCI, Simone MADEO
  • Publication number: 20200389519
    Abstract: A method of propagating data packets in a network of nodes is disclosed. The method, implemented at one of the nodes, includes: generating at least one data packet of a first type; collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: randomly select two or more neighbouring nodes connected to said one of the nodes; transmit, to each of the two or more selected neighbouring nodes: the data packet, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation that is arbitrarily selected for that neighbouring node. The invention is particularly suited for implementation on a blockchain network such as, for example, the Bitcoin blockchain.
    Type: Application
    Filed: November 19, 2018
    Publication date: December 10, 2020
    Inventors: Silvia BARTOLUCCI, Daniel JOSEPH, Simone MADEO
  • 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: 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: 20200295942
    Abstract: A computer implemented method and system is described which uses blockchain technology as a storage system for data acquired from a set of digital twins. The blockchain can be used to generate an immutable transaction history of data produced by the set of digital twins. In the case of an error or failure, parties of interest can then access and analyse an immutable record of data. 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: Silvia BARTOLUCCI, Simone MADEO
  • 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: 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