Block mining methods and apparatus
AssigneeTop Galore Limited
InventorsTimo Tobias Hanke, Sergio Demian Lerner
Life of this patent
Estimating the term…
Abstract
Block chain mining methods and apparatus. A mid-state generator develops a plurality, n, of mid-states by selectively varying a portion of the block, and, in particular, the block header. A single message expander develops a message schedule by expanding a message in accordance with a predetermined expansion function; and the message schedule is shared with a plurality, n, of compressors, each developing a result as a function of the message schedule and a respective one of the n unique mid-states in accordance with a predetermined compression function. The compressors can be either rolled core or pipelined core.
Claims12
A method for mining a block, comprising a block header, as a function of a predetermined hash function applied on the block header, the predetermined hash function comprising an expansion operation and a compression operation, the method comprising the steps of:
- retrieving, by a processing system comprising a processor and memory, a plurality of transactions associated with the block from a ledger stored on a server of a decentralized network, the processing system comprising a single shared expander and a plurality of compressor entities, each being implemented as hardware components in an application specific integrated circuit;
- determining, by the processing system, a plurality of candidate roots from the received plurality of transactions associated with the block, each candidate root including a predetermined pattern;
- developing, by a mid-state generator entity of the processing system, m mid-states, each mid-state being developed from a first portion of one of the plurality of candidate roots, the mid-state generator developing a new mid-state of the m mid-states every compressor entity pipe clock, with each mid-state of the m mid-states being passed down a compressor entity chain at the pipe clock rate;
- distributing the determined plurality of m mid-states to a beginning stage of the plurality of compressor entities;
- performing, by the single shared expander of the processing system using an input of a message and a nonce, the expansion operation on a second portion of each of the plurality of candidate roots to produce a message schedule, the message schedule comprising a plurality of message schedule elements, the single shared expander being provided by a single shared rolled message expander entity;
- distributing the message schedule to the plurality of compressor entities via the single shared expander;
- delaying delivery of the plurality of m mid-states to a final stage of the plurality of compressor entities using a FIFO having a number of stages, the number of stages corresponding to the plurality of message schedule elements of the message schedule;
- for each of the m mid-states, performing, by one of a plurality of compressors of the processing system, the compression operation on a combination of one of the m mid-states and the message schedule, the plurality of compressors being communicatively coupled to the single shared expander and receiving the message schedule from the single shared expander, the compression for each of the m mid-states producing a respective one of m results;
- identifying, by the processing system, a block solution from the m results by comparing each of the m results to a target;
- and
- providing, by the processing system, the block solution to the ledger stored on the server.
Dependencies are inferred from the claim text.