Skip to content

Releases: etclabscore/core-geth

Hermes (v1.12.22)

28 Mar 02:39
v1.12.22
729b580

Choose a tag to compare

DNS Discovery Migration

The ETC DNS discovery infrastructure has been migrated from blockd.info to etcdisco.net. The new domain includes a node explorer where operators can browse and search the current set of discovered peers across Classic mainnet and Mordor testnet, with filtering by protocol capabilities and node scoring. The previous endpoint (enrtree://AJE62Q4DUX4QMMXEHCSSCSC65TDHZYSMONSD64P3WULVLSF6MRQ3K@all.classic.blockd.info) remains functional during the transition, and the signing key is unchanged.

Maintenance

This release contains no consensus changes — all updates are limited to the p2p networking layer. All node operators are encouraged to upgrade at their earliest convenience.

Aegis (v1.12.21)

18 Mar 23:26
v1.12.21
f768305

Choose a tag to compare

Security hotfix: P2P crash-loop

This is an emergency patch addressing an active attack against Ethereum Classic bootnodes. Malicious P2P traffic was exploiting missing input validation in the ECIES handshake path, causing nodes to crash-loop on restart.

Fixes

Three cherry-picks from upstream go-ethereum:

  • crypto/ecies: use AES blocksize — Corrects minimum ciphertext length validation to use the actual AES block size instead of a hardcoded value of 1.
  • crypto/ecies: fix ECIES invalid-curve handling (#33669) — Validates that the remote public key lies on the expected curve before performing ECDH, preventing an invalid-curve oracle attack.
  • p2p/rlpx: 2KB maximum size for handshake messages (#30029) — Rejects oversized handshake packets, preventing memory abuse during the RLPx handshake.

CI

  • Pinned GitHub Actions runners to ubuntu-22.04 and windows-2022 to restore compatibility with deprecated/updated runner images.

Upgrade priority

Strongly recommended for bootnodes and any node directly reachable from the internet with a high volume of inbound P2P connections. Nodes behind firewalls or with restricted inbound access are less likely to be affected, but upgrading is still advised. This release contains no consensus changes — only P2P-layer hardening. It is a drop-in replacement for v1.12.20.

Prophasis (v1.12.20)

10 Jun 14:53
v1.12.20
c2fb441

Choose a tag to compare

This release merges the v1.13.x ethereum/go-ethereum release series, through v1.13.15.

Geth v1.13.0 is a major milestone in the lifetime of Geth, bits and bobs being in development for around 6 years now. Since a release note cannot do it justice, please see our Geth v1.13.0 release blog post.

This release series brought Ethereum through the Cancun fork, which established Shard Blob Transactions, beacon block roots in the EVM, and new opcodes; none of which are directly relevant to ETC now.

What has been relevant to ETC is that upstream versions of ethash and other PoW-related code have been abandoned as ETH pursues an engineering path exclusively concerned with PoS. This leaves core-geth as the primary maintainer of these packages. The span between our two clients is yawning, but we hope you'll find this release a welcome bridge between worlds.

Please find a few cherry-picked references below for your convenience.

  • Path database scheme is the default for new instances (replacing hash scheme).
  • Dropped ETH66 and ETH67 protocol versions.
  • Logging-related CLI API changes, since geth now uses a Go language library slog. Notably, --log.backtraceat and --log.debug are removed.
  • A few RPC API changes, including an added call eth_getBlockReceipts, modifying the block parameter in eth_call optional (defaulting to latest), and causing eth_syncing to behave differently.
  • Support for the light protocol (aka les) is dropped.
  • Add ethereum/go-ethereum Cancun support for all pertinent networks.
    • EIP-1153: Transient storage opcodes
    • EIP-4788: Beacon block root in the EVM
    • EIP-4844: Shard Blob Transactions
    • EIP-5656: MCOPY - Memory copying instruction
    • EIP-6780: SELFDESTRUCT only in same transaction
    • EIP-7516: BLOBBASEFEE opcode
  • And lots of bug fixes for new and existing features.

Persiphone (v1.12.19)

05 Feb 19:51
v1.12.19
78c9133

Choose a tag to compare

Fixed

  • Fix UPnP unwanted termination, which was causing nodes behind a NAT to be unreachable. (#611)
  • Fix config toml, go generate. Allowing setting the ECBP1100 and OverrideECBP1100Deactivate through TOML configuration. (#614)

Comparison with last release: v1.12.19..v1.12.18
Docker images published under etclabscore/core-geth.

Gaia (v1.12.18)

09 Jan 16:41
v1.12.18
8d5cf0d

Choose a tag to compare

What's Changed

Fixed

  • Fix mordor bootnode IP (#604)

Comparison with last release: v1.12.18..v1.12.17
Docker images published under etclabscore/core-geth.

Aphrodite (v1.12.17)

06 Dec 19:51
v1.12.17
b61f312

Choose a tag to compare

⚠️ This release is a mandatory upgrade for ETC clients, it includes upcoming activation values for the Spiral hardfork, scheduled for late January 2024. This release also includes an important fix for a miner DoS vulnerability, where an attacker could toggle mining intermittently by broadcasting statuses with fake total difficulties. For more information, please see the blog post/disclosure here.

All users are strongly encouraged to upgrade to this version or later.

What's Changed

  • Spiral hardfork activation values for ETC mainnet are configured per spec. Block 19_250_000, eta January 31, 2024.
  • MESS (ECBP1100) is scheduled to deactivate coincidentally with the Spiral hard fork.

Fixes

  • Fix miner auto-pause vulnerability, resolving #586 (#596).

Real Eris (v1.12.16)

08 Nov 22:36
v1.12.16
f19e04f

Choose a tag to compare

Fix a logistics issue with the latest release (v1.12.15) which, in fact, did not include the Mordor (Testnet) Spiral activation numbers! So this release does actually have the Spiral configuration for Mordor coded. 🤦 🚀
The master branch has included the Spiral blocks for Mordor since merging #571.

Fixed

  • Mordor Spiral activation number (9,957,000).
  • Fixed a silent-but-deadly error which caused geth, when having a colliding or otherwise unavailable authenticated HTTP address/port (which is enabled by default), to stall out immediately after start up. Now, an error is now thrown and geth will stop (#578).

Eris (v1.12.15)

26 Oct 12:22
v1.12.15
2171350

Choose a tag to compare

  • Add block activation numbers for Ethereum Classic's Spiral fork for the Mordor network (#571). Specifications for this network upgrade are available in the ECIP-1109

    This is expected to become active around November 7th 2023

⚠️ THIS IS A MANDATORY RELEASE FOR MORDOR CLIENTS* ⚠️

*: this release is not mandatory for mainnet clients

Poseidon (v1.12.14)

21 Sep 20:50
f1c80f7

Choose a tag to compare

This release merges upstream through ethereum/go-ethereum@v1.12.2.

What's Changed

  • Merge ethereum/go-ethereum release v1.12.1
  • Merge ethereum/go-ethereum release v1.12.2

Highlights

The list below is an abstract of noteworthy changes. For reference please consult the ethereum/go-ethereum release notes at their original source. Notable divergences or changes we make to these upgrades will be noted here, below. There are none in this release, which contains all origin patches.

  • Support for EIP-4844 Blobpool type transactions
  • EVM opcodes for upcoming EIPs and their supporting logic, including CKZG and BLS encyrption.
    Note that these additions and changes are implemented conditionally, and are not necessarily activated or even planned for Ethereum Classic.
    • EIP-3855's PUSH0 instruction
    • EIP-3860's rules for limiting and metering initcode.
    • EIP-4844's DATAHASH instruction
    • EIP-1153's TSTORE, TLOAD instructions
    • EIP-5656's MCOPY instruction
    • EIP-6780's SELFDESTRUCT rule that it can only happen in the same transaction
  • Developer mode uses simulated Beacon block sealing rules by default, ethash still an option
  • Partial implementation of the new path-based storage scheme
  • Partial implementation of Verkle tree logic
  • Fixes a serious memory leak in snap sync
  • Fixes --nodiscover to actually prevent discovery

Comparison with last release: v1.12.13..v1.12.14
Docker images published under etclabscore/core-geth.

Alcyone (v1.12.13)

07 Jul 21:34
v1.12.13
b813ca5

Choose a tag to compare

This release merges upstream up to ethereum/go-ethereum@v1.12.0.

What's Changed

  • Merge ethereum/go-ethereum release v1.12.0. #551

  • Drops Kotti chain support. #552

    for syncing with Kotti, v1.12.12 can be used. In advance, this v1.12.13 can also be used by importing Kotti genesis in advance of syncing.

Highlights

  • In this merge we had to revert the changes made upstream with regards proof-of-work removal.
  • core-geth defaults to use Pebble as a backend if no existing database is found (ethereum/go-ethereum#27136). If a previous LevelDB database exists core-geth will keep using that, and if you must have LevelDB for some compatibility reasons, you can force it in Geth with the --db.engine=leveldb flag.

Comparison with last release: v1.12.12..v1.12.13
Docker images published under etclabscore/core-geth.