Method and system for storing a binary large object
AssigneeInterbit Ltd.
InventorThomas Thompson
Life of this patent
Estimating the term…
Abstract
Methods, systems, and techniques for storing a binary large object involve receiving, at a first node comprising part of a first blockchain, the binary large object; hashing the binary large object; sending the binary large object from the first node to at least one other node that is part of the first blockchain without using the first blockchain; and after the binary large object has been disseminated to at least the number of nodes on the first blockchain required to achieve consensus, storing a hash of the binary large object on the first blockchain. Sending the binary large object involves disseminating the binary large object to at least a number of nodes on the first blockchain required to achieve consensus.
Claims16
A method for storing a binary large object, the method comprising:
- (a) receiving, at a first node comprising part of a first blockchain, the binary large object;
- (b) hashing the binary large object;
- (c) sending the binary large object from the first node to at least one other node comprising part of the first blockchain without using the first blockchain, wherein the sending comprises part of disseminating the binary large object to at least a number of nodes on the first blockchain required to achieve consensus;
- and
- (d) after the binary large object has been disseminated to at least the number of nodes on the first blockchain required to achieve consensus, storing a hash of the binary large object on the first blockchain.
A method for storing a binary large object, the method comprising:
- (a) receiving, at a second node from a first node, a binary large object, wherein each of the first and second nodes comprise part of a first blockchain and the binary large object is received at the second node without using the first blockchain;
- (b) after receiving an entirety of the binary large object, determining a hash of the binary large object that was received at the second node from the first node;
- (c) receiving a proposed hash of the binary large object;
- (d) determining whether the proposed hash is equivalent to the hash of the binary large object that was received at the second node from the first node;
- and
- (e) only voting to store the proposed hash on the first blockchain if the proposed hash is equivalent to the hash of the binary large object that was received at the second node from the first node.
A system for storing a binary large object, the system comprising:
- (a) network interface hardware for interfacing with another node comprising part of a first blockchain;
- (b) a data store having stored on it the first blockchain and for storing the binary large object;
- (c) a processor communicatively coupled to the data store and network interface hardware;
- and
- (d) a memory communicatively coupled to the processor and having stored on it computer program code that is executable by the processor and that when executed by the processor causes the processor to perform a method comprising:
- (i) receiving, at a first node comprising part of the first blockchain, the binary large object;
- (ii) hashing the binary large object;
- (iii) sending the binary large object from the first node to at least one other node comprising part of the first blockchain without using the first blockchain, wherein the sending comprises part of disseminating the binary large object to at least a number of nodes on the first blockchain required to achieve consensus;
- and
- (iv) after the binary large object has been disseminated to at least the number of nodes on the first blockchain required to achieve consensus, storing a hash of the binary large object on the first blockchain.
A system for storing a binary large object, the system comprising:
- (a) network interface hardware for interfacing with another node comprising part of a first blockchain;
- (b) a data store having stored on it the first blockchain and for storing the binary large object;
- (c) a processor communicatively coupled to the data store and network interface hardware;
- and
- (d) a memory communicatively coupled to the processor and having stored on it computer program code that is executable by the processor and that when executed by the processor causes the processor to perform a method comprising:
- (i) receiving, at a second node from a first node, a binary large object, wherein each of the first and second nodes comprise part of the first blockchain and the binary large object is received at the second node without using the first blockchain;
- (ii) after receiving an entirety of the binary large object, determining a hash of the binary large object that was received at the second node from the first node;
- (iii) receiving a proposed hash of the binary large object;
- (iv) determining whether the proposed hash is equivalent to the hash of the binary large object that was received at the second node from the first node;
- and
- (v) only voting to store the proposed hash on the first blockchain if the proposed hash is equivalent to the hash of the binary large object that was received at the second node from the first node.
Dependencies are inferred from the claim text.