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

  • Patent number: 11489751
    Abstract: A method of propagating data packets in a network of nodes is disclosed.
    Type: Grant
    Filed: February 8, 2019
    Date of Patent: November 1, 2022
    Assignee: nChain Licensing AG
    Inventors: Silvia Bartolucci, Simone Madeo
  • Patent number: 11474784
    Abstract: Techniques described herein may be utilized to implement methods and systems for lossless compression and serialization 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-serialization 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: Grant
    Filed: March 15, 2019
    Date of Patent: October 18, 2022
    Assignee: nChain Licensing AG
    Inventors: Silvia Bartolucci, Simone Madeo, Craig Steven Wright
  • Patent number: 11468411
    Abstract: Validator nodes and methods of operating a validator node to process blockchain transactions. The validator node provides a plurality of mining nodes with access to a set of unconfirmed transactions, typically by providing a hash of those transactions, in exchange for a token from each of the mining nodes. If one of the plurality of mining nodes successfully mines a block containing the set of unconfirmed transactions, the validator node refunds the token to that mining node and retains the remaining tokens. If a miner other than one of the plurality of mining nodes successfully mines a block before any of the plurality of mining nodes is able to mine a block containing the set of unconfirmed transactions, then the validator node transfers to each of the plurality of mining nodes a modified token.
    Type: Grant
    Filed: June 11, 2018
    Date of Patent: October 11, 2022
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Patent number: 11468077
    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: Grant
    Filed: June 5, 2018
    Date of Patent: October 11, 2022
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Patent number: 11463452
    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: March 6, 2019
    Date of Patent: October 4, 2022
    Assignee: nChain Licensing AG
    Inventors: Silvia Bartolucci, Simone Madeo
  • Publication number: 20220294622
    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: March 29, 2022
    Publication date: September 15, 2022
    Inventors: Giuseppe Destefanis, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Publication number: 20220284012
    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: Application
    Filed: May 23, 2022
    Publication date: September 8, 2022
    Inventors: Simone MADEO, Patrick MOTYLINSKI, Giuseppe DESTEFANIS, Stephane VINCENT
  • Publication number: 20220271919
    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: February 23, 2022
    Publication date: August 25, 2022
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Patent number: 11416249
    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: Grant
    Filed: March 15, 2019
    Date of Patent: August 16, 2022
    Assignee: nChain Licensing AG
    Inventors: Alexandra Covaci, Patrick Motylinski, Simone Madeo, Stephane Vincent, Craig Steven Wright
  • Publication number: 20220232068
    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: February 3, 2022
    Publication date: July 21, 2022
    Inventors: Silvia BARTOLUCCI, Daniel JOSEPH, Simone MADEO
  • Publication number: 20220188296
    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: November 20, 2021
    Publication date: June 16, 2022
    Inventors: Giuseppe DESTEFANIS, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT, Alexandra COVACI
  • Patent number: 11341123
    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: Grant
    Filed: June 25, 2018
    Date of Patent: May 24, 2022
    Assignee: nChain Licensing AG
    Inventors: Simone Madeo, Patrick Motylinski, Giuseppe Destefanis, Stephane Vincent
  • Patent number: 11296873
    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: Grant
    Filed: June 4, 2018
    Date of Patent: April 5, 2022
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Patent number: 11271729
    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: December 12, 2018
    Date of Patent: March 8, 2022
    Assignee: nChain Licensing AG
    Inventors: Alexandra Covaci, Simone Madeo, Patrick Motylinski, Stephane Vincent
  • Patent number: 11245757
    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: Grant
    Filed: November 19, 2018
    Date of Patent: February 8, 2022
    Assignee: nChain Licensing AG
    Inventors: Silvia Bartolucci, Daniel Joseph, Simone Madeo
  • Publication number: 20210377041
    Abstract: Systems and methods described herein relate to the execution of locking transactions in a blockchain system. In the context of smart contracts, it may be advantageous to have a public record (e.g., recorded on a blockchain) of a proof of correct execution of a circuit published by a worker and the verification key, thereby allowing anyone (e.g., nodes of the blockchain) to verify validity of the computation and proof. However, there are challenges to recording large blocks of data (e.g., large keys that may comprise multiple elliptic curve points) on the blockchain.
    Type: Application
    Filed: October 29, 2018
    Publication date: December 2, 2021
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Patent number: 11182380
    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: Grant
    Filed: June 25, 2018
    Date of Patent: November 23, 2021
    Assignee: nChain Licensing AG
    Inventors: Giuseppe Destefanis, Simone Madeo, Patrick Motylinski, Stephane Vincent, Alexandra Covaci
  • Publication number: 20210226795
    Abstract: In a distributed system, a first computer system may require computationally verifiable assurances of the authenticity and integrity of computations (e.g., performed as part of the execution of a program) performed by a second computer system. Methods described herein may be utilized to enforce and/or ensure the correct execution of a program. The first computer system may delegate execution of a program to a second computer system and a protocol may be employed to constrain the second computer system to perform a correct execution of the program. The protocol may include mitigation and correction routines that mitigate and/or correct the incorrect execution of a program. In various systems and methods described herein, the protocol may utilize a blockchain network such as a Bitcoin-based blockchain network.
    Type: Application
    Filed: October 30, 2018
    Publication date: July 22, 2021
    Inventors: Alexandra COVACI, Simone MADEO, Patrick MOTYLINSKI, Stephane VINCENT
  • Publication number: 20210226986
    Abstract: A method for propagating data packets in a network of nodes is disclosed.
    Type: Application
    Filed: May 9, 2019
    Publication date: July 22, 2021
    Inventors: Silvia BARTOLUCCI, Simone MADEO
  • Publication number: 20210204189
    Abstract: A method of propagating data packets in a network of nodes is disclosed. This may be a blockchain network such as, for example, the Bitcoin network.
    Type: Application
    Filed: May 9, 2019
    Publication date: July 1, 2021
    Inventors: Silvia BARTOLUCCI, Simone MADEO