Separating hashing from proof-of-work in blockchain environments
Inventors
Assignees
Interested in licensing this patent?
MTEC can help explore whether this patent might be available for licensing for your application.
Abstract
Blockchain environments may mix-and-match different encryption, difficulty, and/or proof-of-work schemes when mining blockchain transactions. Each encryption, difficulty, and/or proof-of-work scheme may be separate, stand-alone programs, files, or third-party services. Blockchain miners may be agnostic to a particular coin's or network's encryption, difficulty, and/or proof-of-work schemes, thus allowing any blockchain miner to process or mine data in multiple blockchains. GPUs, ASICs, and other specialized processing hardware components may be deterred by forcing cache misses, cache latencies, and processor stalls. Hashing, difficulty, and/or proof-of-work schemes require less programming code, consume less storage space/usage in bytes, and execute faster. Blockchain mining schemes may further randomize byte or memory block access, further improve cryptographic security.
Core Innovation
The invention relates to agnostic blockchain mining by functionally separating hashing, difficulty, and proof-of-work into separately callable or hosted modules or services. A blockchain network provides a proof-of-work target scheme and identifiers so a miner can use a separate encryption or hashing algorithm from a proof-of-work mechanism. The miner hashes a received blockchain transaction with the separate hashing algorithm to produce a hash value, and then executes the proof-of-work mechanism using that hash value to generate a proof-of-work result.
The proof-of-work target scheme is used to identify a proof-of-work mechanism and a separate hashing algorithm that is separately specified by the proof-of-work target scheme. In optional or dependent embodiments, the miner also identifies a difficulty algorithm, generates a difficulty from the hash value, and compares the resulting difficulty and proof-of-work result to the proof-of-work target scheme associated with the blockchain environment. The document further addresses identifying a proof-of-work algorithm from the proof-of-work target scheme and using it to generate the proof-of-work result.
To deter specialized hardware, the proof-of-work mechanism that is separated from the separate hashing algorithm discourages mining using application-specific integrated circuits by causing a cache miss. The document describes using a randomized database table together with bit-shuffle, framed as forcing cache misses or stalls by making the table non-cacheable or by accessing it via network latency or service. The separation and randomization are presented as enabling reduced code and storage, CPU democratic mining, lower power and energy, and improved flexibility and security through randomization, including optional outsourcing of encryption, difficulty, proof-of-work, table, and bit-shuffle via service providers or servers.
Claims Coverage
The partial content provides three independent claims (clm-00001, clm-00008, clm-00015). Across these independent claims, the main inventive features are separately receiving or identifying components from a proof-of-work target scheme, generating a hash value using a separate hashing algorithm, executing the proof-of-work mechanism using that hash value to produce a proof-of-work result, and discouraging specialized hardware by causing a cache miss.
Separately specified proof-of-work target scheme and components
Receiving a proof-of-work target scheme associated with the blockchain environment and identifying a proof-of-work mechanism specified by the proof-of-work target scheme, and identifying a separate hashing algorithm that is separately specified by the proof-of-work target scheme from the proof-of-work mechanism.
Hashing blockchain transaction with separate hashing algorithm
Receiving a blockchain transaction and generating a hash value by hashing the blockchain transaction using the separate hashing algorithm that is separately specified by the proof-of-work target scheme.
Proof-of-work execution using hash value from separate hashing algorithm
Generating a proof-of-work result by executing the proof-of-work mechanism using the hash value generated by the separate hashing algorithm.
Discouraging specialized hardware by causing a cache miss
Wherein the proof-of-work mechanism discourages using an application-specific integrated circuit or a specialized hardware processor in the blockchain environment by causing a cache miss.
In the independent claims, mining of a blockchain transaction is performed by receiving a proof-of-work target scheme, identifying a proof-of-work mechanism and a separately specified hashing algorithm, hashing the transaction to generate a hash value, and executing the proof-of-work mechanism using that hash value to generate a proof-of-work result. The proof-of-work mechanism is configured to discourage specialized hardware by causing a cache miss.
Stated Advantages
Reduced code/storage.
CPU democratic mining.
Lower power/energy.
Improved flexibility/security through randomization.
Documented Applications
Agnostic blockchain mining by functionally separating hashing, difficulty, and proof-of-work into separately callable or hosted modules or services.
Outsourcing mining operations using service providers or servers for encryption, difficulty, proof-of-work, table, and bit-shuffle, and supporting virtual blockchain mining or virtual machines with remote retrieval.
Interested in licensing this patent?