Author: Andy Parkins 2014-07-04 11:15:35
Published on: 2014-07-04T11:15:35+00:00
In an email conversation between Alan Reiner and Dr. Andy Perkins, they discuss the use of ROMix in Bitcoin mining to make it IO-Hungry rather than memory hungry. ROMix takes N sequential hashes and stores the results into a single N*32 byte lookup table which requires storing 32,000,000 sequential bytes in RAM. The goal is to make hashing IO-hungry instead of memory hungry. Doing so would require miners to read 20 GB of data on every hash even if only a small fraction of the data is used for each hash. This would make it 1000x harder for miners to produce one hash for everybody, which does not affect the actual hash rate but makes it harder to reproduce. The difficulty adjustment algorithm ensures blocks come at 10 minutes regardless of hash rate. This can be done by picking a harder algorithm or upping the size of the input data that needs hashing. Unlike an algorithm change, upping the size of the input cannot be reduced by building a better ASIC.
Updated on: 2023-06-09T00:39:01.970925+00:00