Ethash is the proof-of-work function in Ethereum-based blockchain currencies. It uses Keccak, a hash function eventually standardized to SHA-3. These two are different, and should not be confused. Since version 1.0, Ethash has been designed to be ASIC-resistant via memory-hardness (harder to implement in special ASIC chips) and easily verifiable. It also uses a slightly modified version of earlier Dagger and Hashimoto hashes to remove computational overhead. Previously referred to as Dagger-Hashimoto, the Ethash function has evolved over time. Ethash uses an initial 1 GB dataset known as the Ethash DAG and a 16 MB cache for light clients to hold. These are regenerated every 30,000 blocks, known as an epoch. Miners grab slices of the DAG to generate mix-hashes using transaction and receipt data, along with a cryptographic nonce to generate a hash below a dynamic target difficulty.
ASIC Miner Controversy
In April 2018, the first ASIC miners for Ethash, the ASIC-resistant hash, were announced by Bitmain. Fear of over-influence from Bitmain and 51% attacks prompted discussions of bricking the devices, forcing ASIC miners into hard-mode mining, or continuing or expediting development and eventual release of Casper. Vitalik Buterin, the co-founder Ethereum, considers ASIC miners to not be a threat to Ethereum. It was decided that Ethereum would switch from its pure proof of work to a hybrid Proof of Work and Proof of Stake scheme called "Casper the Friendly Finality Gadget" (FFG), where every 1 in 50 blocks is created with Proof of Stake for partial finality (the prevention of new forks). On a future hard fork yet to be decided, Ethereum will produce all new blocks with Proof of Stake through a separate design of Casper, known as "Casper the Friendly GHOST" or sometimes "Casper Correct-By-Construction" (CBC), and Ethash will be officially deprecated on the main Ethereum blockchain due to an exponential rise in mining difficulty. Other blockchains utilizing Ethash (including the Ethereum Foundation's Ropsten test network) have not announced plans to deprecate its use.
- SHA-3 – another Keccak-based hash
- "wiki: The Ethereum Wiki". 8 February 2018. Retrieved 8 February 2018 – via GitHub.
- Rudlang, Marit (Jun 2017). Comparative Analysis of Bitcoin and Ethereum (PDF). Norway: NTNU: Norwegian University of Science and Technology. pp. 52–53. Retrieved 29 September 2018.
- Vitalik Buterin. Dagger: A memory-hard to compute, memory-easy to verify scrypt alternative. Tech Report, hashcash.org website, 2013.
- Dryja, Thaddeus. "Hashimoto: I/O bound proof of work" (PDF). Semantic Scholar. Archived from the original (PDF) on 2017-08-10.
- Tikhomirov, Sergei (17 Feb 2018). "Ethereum: State of Knowledge and Research Perspectives" (PDF). International Symposium on Foundations and Practice of Security (FPS 2017): 206–221. Retrieved 29 September 2018.
- Zamfir, Vlad (1 November 2017). "A Template for Correct-by-Construction Consensus Protocols" (PDF).