Ethereum Classic Prepares for the Thanos Hard Fork Upgrade

DeanMachine
etc_core
Published in
4 min readNov 9, 2020

Ethereum Classic is undergoing a network upgrade code named Thanos (ECIP-1099). Participating core developers and community members concluded consensus on October 2nd, 2020, to accept ECIP-1099. The Mordor Testnet has successfully implemented the Thanos upgrade, and now we are excited to prepare for mainnet activation.

Why is the Thanos Upgrade important?

After the successful implementation of MESS, the finality algorithm for 51% protection, it was decided to double the Ethash epoch duration from 30,000 to 60,000 blocks, effectively reducing the DAG size. This modified Ethash is also referred to as EtcHash. This will allow miners with 3GB and 4GB GPU systems to resume mining ETC, increasing security and promoting a more distributed and healthy mining ecosystem.

Lowering the DAG size? Yes we are!

DAG Rationale

The original intent of the DAG was to provide ASIC resistance to the mining protocol in order to prevent centralization of mining distributions and thereby provide for an objectively fair distribution of tokens. As evident by ASICs being developed that are capable of matching current GPU miners while being more energy efficient, the DAG has succeeded in leveling the playing field between GPU incumbents and ASIC challengers, avoiding ASIC takeover and domination, and leading to a competitive and large mining ecosystem. However the original parameters are proving too aggressive, resulting in obsoleting support for GPUs still in wide use today by miners.

Calibrating these parameters to better reflect todays hardware markets and mining ecosystem will bring the DAG growth back in sync with commonly used GPUs. Allowing the DAG system to continue to serve it’s purpose far into the future.

The Thanos Hard-Fork schedule

Estimated dates may change as the network moves closer to the activation block.

1. Mordor Testnet activation at block 2,520,000, successfully activated on October 18th, 2020.

2. Ethereum Classic Mainnet activation at block 11,700,000, or around November 28th, 2020.

Core-Geth v.1.11.17

This release contains security and consensus-relevant fixes. This update is recommended for all users.

  • Fixes bit boundary for DAG generation runtime (#223).
  • Initial implementation of support for Parity’s trace_ RPC API module (#211).
  • Merges upstream thru ethereum/go-ethereum v1.9.23.

*some miners have been reporting issues after epoch 385. If you have been experiencing issues, please upgrade to Core-geth v1.11.17 immediately

Hard-Fork Dashboard

A hard-fork dashboard is available: https://classic.fork.fault.dev/

As a Miner or Mining Pool, what do I need to do?

To ensure a successful fork, download the most recent version of the node software:

· Core-geth v1.11.17 or later

You will also need to update your mining software to a new version supporting Thanos. We are in the process of finalizing this list and we will send a follow-up with the mining software clients. You can find the list here.

If you’d like to test on the Mordor Testnet, these are the clients currently supporting etchash:

Announced

In queue

Open Ethereum Pool will be updated by November 15th, available here

As an Exchange, Wallet, or other ETC service provider, what do I need to do?

To ensure a successful fork, download the most recent version of the node software:

· Core-geth v1.11.17 or later

Support

• Core-geth support: https://discord.gg/tWpZ7az

• Core-geth Github: https://github.com/etclabscore/core-geth/issues

• For assistance with implementation or more information about Thanos and testing, please contact dean.p@etclabs.org, or elizabeth.k@etclabs.org.

Attention Besu, Multi-geth Parity-Ethereum, OpenEthereum, and Geth-Classic consumers

  • Hyperledger Besu implements the Thanos protocol upgrade starting at version v20.10.1-RC2 or later. Please note, that Besu does not yet implement the MESS Security features and should be closely monitored during potential future network attacks
  • Parity Ethereum, OpenEthereum, Multi-Geth and Geth Classic are deprecated. These clients are no longer or only minimally maintained and Ethereum Classic will no longer support them due to security concerns running this software in production. Nodes that use these clients will no longer function correctly after the Thanos upgrade.

Attention Ethercluster consumers

  • Ethercluster does not support Core-Geth. If you are currently using Ethercluster, we are recommending a switch to BloqCloud

Learn More about Thanos

ECIP — 1099: Calibrate Epoch Duration

ETCHash Resources

Sign-up to ETC Signal 📡

ETC Signal is a newsletter for only important network events such as; hard-fork updates, security alerts, and must-know news that impacts Ethereum Classic consumers.

• Sign-up form: https://tinyurl.com/ydalt8eu

DISCLAIMER This is an emergent and evolving highly technical space. If you choose to implement the recommendations in this post and continue to participate, you should make sure you understand how it impacts you. You should understand that there are risks involved including but not limited to risks like unexpected bugs. By choosing to implement these recommendations, you alone assume the risks of the consequences. This post and recommendations are not a sale of any kind and do not create any warranties of any kind including but not limited to any relating to the Ethereum Classic network or the Ethereum Classic clients referred to herein.

--

--

DeanMachine
etc_core

Dean Pappas | Building on Solana | Ex Grape, Marlin, Ethereum Classic, Zel, Taucoin | Ex GM at Zeta Global | Hearthstone and MTG