Saltar al contenido principal

v3.0


Key InformationDetails
VersionConflux v3.0.0
Hardfork IntroducedYes
Incompatible ChangesYes (CIP-150, CIP-151, CIP-152, CIP-154, CIP-156, CIP-165, CIP-645, CIP-7702)

Introduction

Conflux v3.0.0 is a hardfork introducing incompatible protocol changes including new type transaction, bug fixes, EVM Opcode changes

This update extensively modifies the EVM implementation details to ensure consistency between eSpace and Ethereum, especially various edge case behaviors and gas cost adjustments, to optimize the development experience for developers and the usage experience of various Ethereum development tools.

Upgrade Overview

  • Set code transaction (CIP-7702) in eSpace is now supported. This kind of transactions can set code for EOAs, which means users can now batch transactions, enable social recovery, and pay gas fees in tokens other than native CFX, all without migrating to a new wallet.
  • The penalty for PoS malicious behavior from permanent stake forfeiting to temporary stake locking for 6 months.(CIP-156)
  • EVM changes: This hardfork introduces a great many changes to the EVM, including new precompile contracts(CIP-165), bug fixes(CIP-154, CIP-645), and behavior alignments with Ethereum to enhance the development experience(CIP-150, CIP-151, CIP-152, CIP-645).
  • RPC changes:
    • Supports for CIP-7702 changes:
      • Transaction Query RPCs(eth_getTransactionByHash, eth_getBlockByHash, eth_getBlockByNumber): field authorizationList is added to the transaction object.
      • eth_estimateGas and eth_call: supports field authorizationList
    • Support gasFee in transaction receipt for espace RPC
    • eSpace block.gasLimit change to half of the consensus gas limit, add block.espaceGasLimit to return the real gas limit for eSpace transactions.
    • eSpace parity style trace RPCs updates:
      • Trace RPC methods now compatible with parity and erigon, including trace_block, trace_transaction, trace_filter, this is a API breaking change
      • Two new RPCs trace_get and trace_blockSetAuth are added
      • trace_blockSetAuth is a Conflux specific RPC used to get the block set auth result, check trace doc for details.
      • These trace methods now support SelfDestruct(Suicide) trace, to access historical selfdestruct transaction data, a resync of the data is required.
    • eSpace now support geth style txpool namespace methods, including: txpool_status, txpool_inspect, txpool_content, txpool_contentFrom
    • eth_call, eth_estimateGas add support for stateoverride feature.

CIP List

CIP-7702

CIP-7702 Set Code for EOA introduces EIP-7702 to Conflux eSpace, enabling EOAs to have code set for them. This allows users to batch transactions, enable social recovery, and pay gas fees in tokens other than native CFX, all without migrating to a new wallet. This is one of the most impactful features in Ethereum's Pectra upgrade.

CIP-645

CIP-645 Align Conflux eSpace Behavior with EVM proposes aligning Conflux eSpace's behavior (especially those relating to gas costs) with Ethereum's EVM to ensure compatibility with Ethereum development tools.

This includes implementing multiple EIPs:

DescriptionLink
EIP-1108: Reduces gas costs for alt_bn128 precompileEIP-1108
EIP-1884: Reprices trie-size-dependent opcodesEIP-1884
EIP-2028: Reduces Calldata gas costEIP-2028
EIP-2200: Rebalances net-metered SSTORE gas costEIP-2200
EIP-2565: Reduces gas cost for modular exponentiation transactionsEIP-2565
EIP-2929: Increases gas costs for opcode transactions to mitigate DDoSEIP-2929
EIP-3529: Removes gas refunds for SELFDESTRUCT and reduces SSTORE refundsEIP-3529
EIP-3651: Reduces gas fees for accessing COINBASE addressEIP-3651
EIP-3860: Limits initcode size to 49152EIP-3860

Furthermore, this CIP addresses various opcode discrepancies to provide a consistent development experience.

CIP-150

CIP-150 Reject New Contract Code starting with the 0xEF byte replicates EIP-3541, which disallows new code starting with the 0xEF byte to be deployed. This is a prerequisite to ensure future compatibility with Ethereum's subsequent upgrades, such as the EVM Object Format and EOA account code.

CIP-151

CIP-151 SELFDESTRUCT only in Same Transaction replicates EIP-6780, which prevents contracts from being destroyed by SELFDESTRUCT in most cases, with the only exception being the destruction of a contract within the same transaction as its creation. This is a prerequisite for implementing EIP-7702, as it prevents security issues like replay attacks when EOAs have proxy contract addresses set.

It should be noted that this CIP also disables the destroy function in the Conflux core space AdminControl internal contract, which means that the destroy function will no longer be usable and will result in an internal contract error.

CIP-152

CIP-152 Reject Transactions from Senders with Deployed Code replicates EIP-3607, which addresses a potential security issue where an EOA could share the same address as a contract due to a collision attack. This prevents scenarios where a seemingly legitimate contract could attract user funds, only for those funds to be spent using the private key of the EOA with the same address.

CIP-154

CIP-154 Fix Inconsistent Implementation of TLOAD addresses an implementation error in CIP-142, which incorrectly implemented the TLOAD opcode as SLOAD. This fix ensures that TLOAD properly reads from transient storage instead of persistent storage, preventing security vulnerabilities and unexpected behavior in smart contracts.

CIP-156

CIP-156 Change the PoS Malicious Penalty From Stake Forfeiting to Stake Locking changes the penalty for PoS malicious behavior from permanent stake forfeiting to temporary stake locking for 6 months. This reduces concerns for honest but careless node operators while still providing the community time to investigate and decide on appropriate penalties for actual attacks.

CIP-165

CIP-165 Precompile for BLS12-381 curve operations replicates EIP-2537, which introduces new precompile contracts to Conflux eSpace for BLS12-381 curve operations.

Releases

Testnet

Key InformationDetails
ReleaseConflux v3.0.0-testnet
AnouncementConflux Network Hardfork Upgrade List and RPC Changes Overview (May 24, 2025)
Deadlines
  • Node Upgrade: Before epoch number reaches 223340000 (estimated on July 1st 2025)
  • CIP-156 Activation: When PoS block number reaches 2745000 (estimated on July 1st 2025)

Mainnet

Key InformationDetails
Release
Anouncement
Deadlines