Search

Search for projects by name or address

Eclipse logo
Eclipse

Badges

About

Eclipse is a sidechain powered by the Solana Virtual Machine (SVM).


  • Total Value SecuredTVS
    $7.70 M3.57%
  • Past day UOPSDaily UOPS
    2.830.08%
  • Type
    Other

  • Purpose
    Universal

  • Tokens breakdown

    Sequencer failureState validationData availabilityExit windowProposer failure

    Badges

    About

    Eclipse is a sidechain powered by the Solana Virtual Machine (SVM).

    Why is the project listed in others?

    The proof system isn't fully functional

    Consequence: projects without a proper proof system fully rely on single entities to safely update the state. A malicious proposer can finalize an invalid state, which can cause loss of funds.

    There is no data availability bridge

    Consequence: projects without a data availability bridge fully rely on single entities (the sequencer) to honestly rely available data roots on Ethereum. A malicious sequencer can collude with the proposer to finalize an unavailable state, which can cause loss of funds.

    Learn more about the recategorisation here.


    Total
    Canonically BridgedCanonically Bridged ValueCanonical
    Natively MintedNatively Minted TokensNative
    Externally BridgedExternally Bridged ValueExternal

    ETH & derivatives
    Stablecoins
    BTC & derivatives
    Other
    Compare with other projects
    Past Day UOPS
    Past Day Ops count
    Max. UOPS
    Past day UOPS/TPS Ratio
    Compare with other projects

    This section shows how much data the project publishes to its data-availability (DA) layer over time. The project currently posts data toCelestiaCelestia.



    Data posted
    Avg size per day
    Avg size per L2 UOP

    Compare with other projects
    Sequencer failureState validationData availabilityExit windowProposer failure
    Sequencer failure
    No mechanism

    There is no mechanism to have transactions be included if the sequencerA party responsible for ordering and executing transactions on the rollup. The sequencer verifies transactions, compresses the data into a block, and submits the data related to it to enable state reconstruction to Ethereum L1 as a single transaction. The data can be either transaction data or state diffs. is down or censoring.

    State validation
    None

    Currently the system permits invalid state rootsA cryptographic hash succinctly representing a state using a Merkle tree.. More details in project overview.

    Data availability
    External

    Proof construction and state derivation fully rely on data that is posted on Celestia. SequencerA party responsible for ordering and executing transactions on the rollup. The sequencer verifies transactions, compresses the data into a block, and submits the data related to it to enable state reconstruction to Ethereum L1 as a single transaction. The data can be either transaction data or state diffs. tx roots are not checked against the Blobstream bridgeA message-passing protocol between two blockchains. At its most basic, a token bridge consists of a smart contract which can escrow funds on one side of the bridge, and instruct the release or minting of corresponding assets on the other side, but bridges could also support arbitrary messages. How these instructions are validated is a critical factor in assessing the trust assumptions of a bridge. data roots onchain, but L2Layer 2 (L2) is a category of technical solutions aimed to scale the base layer in a trust minimized way. This category includes solutions like rollups as well as state channels and plasma. Other solutions are able to scale further, but with the introduction of additional trust assumptions, which are therefore not trust minimized. Sometimes the term Layer 2 is used to refer to include these solutions too, like validiums and optimiums, but to distinguish between trust minimized and non trust minimized solutions they are often referred to as "light" L2s, opposed to "strong" L2s like rollups. nodes can verify data availabilityThe property of a rollup's data being reachable by any node retrieving the data that were rolled up and executed to reach the proposed state. Data availability (DA), specifically decoupling it from the rollup nodes themselves, is one of the preeminent factors which allows a rollup to scale securely. A rollup is faced with a decision of what to use as a DA layer to guarantee that any node can retrieve this data--permissionlessly under any circumstance. For this reason, using Ethereum for DA currently provides the strongest security guarantees. If data is stored somewhere other than a permissionless L1, then the project is not a rollup, but rather a validium or an optimium. by running a Celestia light clientSometimes labelled interchangeably as a “node”, they are tasked with processing transactions and managing the blockchains's state. They run the computations for each transaction according to the rollup's virtual machine and protocol rules. If comparing to Ethereum clients, these would be execution clients such as Geth, as opposed to consensus clients..

    Exit window
    None

    There is no window for users to exit in case of an unwanted upgrade since contracts are instantly upgradable.

    Proposer failure
    Cannot withdraw

    Only the whitelisted proposers can publish state rootsA cryptographic hash succinctly representing a state using a Merkle tree. on L1Layer 1 (L1) is a blockchain that is self-reliant on its validator set for its security and consensus properties. Ethereum is an example of a layer 1. Blockchains started receiving the moniker of layer 1 once layer 2 became a meaningful area of development., so in the event of failure the withdrawals are frozen.

    Data is posted to Celestia

    Eclipse uses Celestia for data availabilityThe property of a rollup's data being reachable by any node retrieving the data that were rolled up and executed to reach the proposed state. Data availability (DA), specifically decoupling it from the rollup nodes themselves, is one of the preeminent factors which allows a rollup to scale securely. A rollup is faced with a decision of what to use as a DA layer to guarantee that any node can retrieve this data--permissionlessly under any circumstance. For this reason, using Ethereum for DA currently provides the strongest security guarantees. If data is stored somewhere other than a permissionless L1, then the project is not a rollup, but rather a validium or an optimium..

    There is no automatic fallback mechanism to Ethereum for data availability. If Celestia becomes unavailable, the chain relies entirely on Celestia for transaction data recovery.

    • Funds can be frozen if celestia becomes unavailable and transaction data cannot be retrieved.

    1. Eclipse Celestia Integration
    Learn more about the DA layer here: Celestia logoCelestia
    No state validation

    Eclipse implements a custom permissioned bridgeA message-passing protocol between two blockchains. At its most basic, a token bridge consists of a smart contract which can escrow funds on one side of the bridge, and instruct the release or minting of corresponding assets on the other side, but bridges could also support arbitrary messages. How these instructions are validated is a critical factor in assessing the trust assumptions of a bridge.. Withdrawals need to be actively authorized by a Multisig. Moreover, there is no mechanism to send arbitrary messages from Eclipse back to Ethereum. There is a 7d delay for withdrawals.

    • Users can be censored if the bridge operators decide not to mint tokens after observing a deposit.

    • Funds can be stolen if the Treasury owner decides to transfer the funds locked on L1.

    1. CanonicalBridge.sol - Etherscan source code, authorizeWithdraw() function
    2. Mailbox.sol - Etherscan source code, receiveMessage() function calls CanonicalBridge
    3. Treasury.sol - Etherscan source code, emergencyWithdraw() function

    Past upgrades

    The metrics include upgrades on the currently used proxy contracts. Historical proxy contracts and changes of such are not included.

    Count of upgrades
    1
    Last upgrade
    1y 10mo ago
    Avg upgrade interval
    1y 1mo
    2025 November 20, 10:56 UTC
    16changes

    - CanonicalBridgeV1 cannot be used to withdraw funds from Treasury anymore. - CanonicalBridgeV2 deactivated, replaced by CanonicalBridgeV3: the main change in V3 is new events via DepositedWithId and depositIndex, V3 can settle v1 and v2 pending withdrawals https://disco.l2beat.com/diff/eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51/eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a

    EOA (eth:0x1a84163249B2909f746C725F23D5ae2a66D7C4fE) {
    +++ description: None
    receivedPermissions.0.from:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    }
    - Status: DELETED
    contract CanonicalBridge (eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    contract Eclipse Multisig (eth:0x4720342419C1D316B948690d12C86D5b485C64E0) {
    +++ description: None
    receivedPermissions.0:
    - {"permission":"interact","from":"eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11","description":"authorize withdrawals to any address.","role":".withdrawAuthorityAC"}
    receivedPermissions.1:
    - {"permission":"interact","from":"eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11","description":"grant / revoke all access control roles and thus access all permissioned functions in the contract.","role":".defaultAdminAC"}
    receivedPermissions.2:
    - {"permission":"interact","from":"eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11","description":"pause the contract for deposits and withdrawals.","role":".pauserAC"}
    receivedPermissions.3.from:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    receivedPermissions.4.from:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    receivedPermissions.5.from:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    }
    contract Eclipse Multisig 2 (eth:0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC) {
    +++ description: None
    receivedPermissions.0:
    - {"permission":"interact","from":"eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51","description":"grant / revoke all access control roles and thus access all permissioned functions in the contract.","role":".defaultAdminAC"}
    }
    - Status: DELETED
    contract CanonicalBridgeV2 (eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    contract Treasury (eth:0xD7E4b67E735733aC98a88F13d087D8aac670E644) {
    +++ description: Permissioned escrow for assets bridged to Eclipse. There is no canonical messaging and users need to trust the bridge operators to process deposits and authorize withdrawals.
    values.accessControl.DEPOSITOR_ROLE.members.1:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    values.accessControl.WITHDRAW_AUTHORITY_ROLE.members.0:
    - "eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11"
    values.accessControl.WITHDRAW_AUTHORITY_ROLE.members.2:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    values.withdrawerAC.0:
    - "eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11"
    values.withdrawerAC.2:
    - "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    + "eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a"
    }
    + Status: CREATED
    contract CanonicalBridgeV3 (eth:0x504392F02ee64D6B51aD3bCf7999E69EBe28b30a)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    2025 September 08, 14:36 UTC
    2changes

    ms signer removed.

    contract Eclipse Multisig (eth:0x4720342419C1D316B948690d12C86D5b485C64E0) {
    +++ description: None
    values.$members.1:
    - "eth:0xCD2fA978D163c0068167dDff8b6951f0E626e6A4"
    values.multisigThreshold:
    - "3 of 5 (60%)"
    + "3 of 4 (75%)"
    }
    2025 July 14, 12:44 UTC
    9changes

    Discovery rerun on the same block number with only config-related changes.

    New and verified contracts

    + Status: CREATED
    contract GnosisSafe (0x0706Ffc1722D53a85ba90f32807880ccee968Fed)
    +++ description: None
    + Status: CREATED
    contract CanonicalBridgeV1 (0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    + Status: CREATED
    contract Eclipse Multisig (0x4720342419C1D316B948690d12C86D5b485C64E0)
    +++ description: None
    + Status: CREATED
    contract Eclipse Multisig 2 (0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC)
    +++ description: None
    + Status: CREATED
    contract EtherBridge (0x83cB71D80078bf670b3EfeC6AD9E5E6407cD0fd1)
    +++ description: (Deprecated) Entrypoint for depositing assets. This contract calls the Mailbox contract for each deposit. In practice this path is not used for deposits.
    + Status: CREATED
    contract CanonicalBridgeV2 (0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    + Status: CREATED
    contract Mailbox (0xb23B2492f7A9631104A5877F7FFA00633660968d)
    +++ description: (Deprecated) Mailbox contract for L1 -> L2 messaging. There is no canonical way to send messages back.
    + Status: CREATED
    contract Upgrader0to1 (0xD02f545d57536BC1E8F12D867731F006AacE71E3)
    +++ description: This contract was used for an upgrade an still retains its permissions and permissioned actors.
    + Status: CREATED
    contract Treasury (0xD7E4b67E735733aC98a88F13d087D8aac670E644)
    +++ description: Permissioned escrow for assets bridged to Eclipse. There is no canonical messaging and users need to trust the bridge operators to process deposits and authorize withdrawals.
    2025 July 07, 17:02 UTC
    12changes

    discodrive. new contract 'canonicalBridgeV2' added with minimal diff to the old one.

    EOA (0x1a84163249B2909f746C725F23D5ae2a66D7C4fE) {
    +++ description: None
    receivedPermissions.0.from:
    - "eth:0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11"
    + "eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    }
    contract CanonicalBridgeV1 (0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11) {
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    values.accessControl.WITHDRAW_AUTHORITY_ROLE.members.1:
    - "0x1a84163249B2909f746C725F23D5ae2a66D7C4fE"
    values.withdrawAuthorityAC.1:
    - "0x1a84163249B2909f746C725F23D5ae2a66D7C4fE"
    }
    contract Eclipse Multisig (0x4720342419C1D316B948690d12C86D5b485C64E0) {
    +++ description: None
    receivedPermissions.3:
    + {"permission":"interact","from":"eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51","description":"authorize withdrawals to any address.","role":".withdrawAuthorityAC"}
    receivedPermissions.4:
    + {"permission":"interact","from":"eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51","description":"grant / revoke all access control roles and thus access all permissioned functions in the contract.","role":".defaultAdminAC"}
    receivedPermissions.5:
    + {"permission":"interact","from":"eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51","description":"pause the contract for deposits and withdrawals.","role":".pauserAC"}
    }
    contract Eclipse Multisig 2 (0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC) {
    +++ description: None
    receivedPermissions.0:
    + {"permission":"interact","from":"eth:0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51","description":"grant / revoke all access control roles and thus access all permissioned functions in the contract.","role":".defaultAdminAC"}
    }
    contract Treasury (0xD7E4b67E735733aC98a88F13d087D8aac670E644) {
    +++ description: Permissioned escrow for assets bridged to Eclipse. There is no canonical messaging and users need to trust the bridge operators to process deposits and authorize withdrawals.
    values.accessControl.DEPOSITOR_ROLE.members.0:
    - "0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11"
    values.accessControl.DEPOSITOR_ROLE.members.1:
    + "0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    values.accessControl.WITHDRAW_AUTHORITY_ROLE.members.2:
    + "0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    values.withdrawerAC.2:
    + "0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51"
    }
    + Status: CREATED
    contract CanonicalBridgeV2 (0x867A8FcD5Bb6774d4d37fb342D669A35FF789a51)
    +++ description: Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.
    2024 November 05, 12:13 UTC
    High severity
    28changes

    Bridge upgrade without major logic changes. EtherBridge - Now called CanonicalBridge.sol - More granular roles (AuthorityMultisig still main admin) - 'FraudWindow' of 7d introduced for normal withdrawals (but still using permissioned withdrawals, and Treasury allows permissioned direct emergencyWithdraw()) - Two step process for withdrawals interfaces with the bridge and not the Treasury directly: 1) authorizeWithdraw() by permissioned actor any time 2) claimWithdraw() after 7d by anyone Treasury - AccessControl and SemVer added - minor changes EtherBridge

    contract TreasuryOwner (0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC) {
    +++ description: None
    receivedPermissions:
    - [{"permission":"upgrade","target":"0xD7E4b67E735733aC98a88F13d087D8aac670E644"}]
    }
    contract EtherBridge (0x83cB71D80078bf670b3EfeC6AD9E5E6407cD0fd1) {
    +++ description: None
    values.paused:
    - false
    + true
    }
    contract Treasury (0xD7E4b67E735733aC98a88F13d087D8aac670E644) {
    +++ description: None
    sourceHashes.1:
    - "0x9bdc786276b4d7feab768c6c8c296d44e22918524e1a28b23db40678d2b0eeef"
    + "0x63d1cc40bc2613e87b2d6905ffda15f04f069e3bf72cb12a2979f95a0e7010b7"
    issuedPermissions.0.target:
    - "0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"
    + "0x0000000000000000000000000000000000000000"
    values.$admin:
    - "0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"
    + "0x0000000000000000000000000000000000000000"
    values.$implementation:
    - "0xa8E15d2B1bf6B0Fd3Bc9Ead06323c0730b67f8d4"
    + "0xF1F7a359C3f33EE8A66bdCbf4c897D25Caf90978"
    values.$pastUpgrades.1:
    + ["2024-11-05T03:53:23.000Z","0x15aecc2b0cac5c03221b0f7ade10e888ad4f944df4bdc19c1f3c40fc56d5ebbb",["0xF1F7a359C3f33EE8A66bdCbf4c897D25Caf90978"]]
    values.$upgradeCount:
    - 1
    + 2
    values.accessControl.DEFAULT_ADMIN_ROLE.members.1:
    + "0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"
    values.accessControl.DEFAULT_ADMIN_ROLE.members.0:
    + "0x4720342419C1D316B948690d12C86D5b485C64E0"
    values.accessControl.PAUSER_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0xD02f545d57536BC1E8F12D867731F006AacE71E3","0x4720342419C1D316B948690d12C86D5b485C64E0","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.accessControl.STARTER_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0xD02f545d57536BC1E8F12D867731F006AacE71E3","0x4720342419C1D316B948690d12C86D5b485C64E0","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.accessControl.UPGRADER_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0xD02f545d57536BC1E8F12D867731F006AacE71E3","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.accessControl.EMERGENCY_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0xD02f545d57536BC1E8F12D867731F006AacE71E3","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.accessControl.DEPOSITOR_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.accessControl.WITHDRAW_AUTHORITY_ROLE:
    + {"adminRole":"DEFAULT_ADMIN_ROLE","members":["0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11","0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"]}
    values.getVersionComponents.major:
    - 1
    + 2
    values.owner:
    - "0x7B2c1CbB33c53c3C6a695e36096AD2cfCE1c0efC"
    values.pendingOwner:
    - "0x4720342419C1D316B948690d12C86D5b485C64E0"
    values.DEFAULT_ADMIN_ROLE:
    + "0x0000000000000000000000000000000000000000000000000000000000000000"
    values.DEPOSITOR_ROLE:
    + "0xd50fd8c1b5fa5213a5974932fcc33d2992a99225bc9319caf7cf652d0d2b9acf"
    values.EMERGENCY_ROLE:
    + "0x9e97963c33348a1cae64c3216747be51682ee42f36d1ed282cb81018cdb30e3d"
    values.PAUSER_ROLE:
    + "0x39935d86204acf3d77da26425d7a46606d2550568c6b1876f3a2e76c804c7626"
    values.STARTER_ROLE:
    + "0xac6a94bcd1ac2877eda181de9748e5972fc07f76d4864cecf836b3fca185e53c"
    values.UPGRADER_ROLE:
    + "0x0fb7166d9f681d2bd296a45a1a2e81365c392be30b6156d73b45df44e85cdb9f"
    values.WITHDRAW_AUTHORITY_ROLE:
    + "0xfe482b7b16acc2ea6eda181934b481a09d50ed8e3579b43c531bc57b84336c53"
    }
    + Status: CREATED
    contract CanonicalBridge (0x2B08D7cF7EafF0f5f6623d9fB09b080726D4be11)
    +++ description: None
    + Status: CREATED
    contract Upgrader0to1 (0xD02f545d57536BC1E8F12D867731F006AacE71E3)
    +++ description: None
    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner

    Ethereum

    Actors:

    Eclipse Multisig0x4720…64E0

    A Multisig with 3/4 threshold.

    • Can interact with CanonicalBridgeV3
      • authorize withdrawals to any address
      • grant / revoke all access control roles and thus access all permissioned functions in the contract
      • pause the contract for deposits and withdrawals
    • Can interact with Upgrader0to1
      • start an upgrade of the core contracts
    • Can interact with Treasury
      • grant / revoke all access control roles and thus access all permissioned functions in the contract
    Eclipse Multisig 20x7B2c…0efC

    A Multisig with 3/5 threshold.

    • Can upgrade with no delay
      • Treasury
    • Can interact with Treasury
      • grant / revoke all access control roles and thus access all permissioned functions in the contract
      • withdraw ETH from the contract, even when it is paused
      • withdraw ETH from the contract
    • Can interact with CanonicalBridgeV3
      • authorize withdrawals to any address
    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner
    A diagram of the smart contract architecture
    A diagram of the smart contract architecture

    Ethereum

    CanonicalBridgeV30x5043…b30a

    Entry point to deposit and withdraw ETH. There is no canonical messaging system. Deposited funds are sent to a Treasury contract and withdrawals must be authorized by a permissioned actor.

    • Roles:
      • defaultAdmin: Eclipse Multisig
      • pauser: Eclipse Multisig
      • withdrawAuthority: EOA 1, Eclipse Multisig

    Permissioned escrow for assets bridged to Eclipse. There is no canonical messaging and users need to trust the bridgeA message-passing protocol between two blockchains. At its most basic, a token bridge consists of a smart contract which can escrow funds on one side of the bridge, and instruct the release or minting of corresponding assets on the other side, but bridges could also support arbitrary messages. How these instructions are validated is a critical factor in assessing the trust assumptions of a bridge. operators to process deposits and authorize withdrawals.

    • Roles:
      • defaultAdmin: Eclipse Multisig, Eclipse Multisig 2
      • emergency: Eclipse Multisig 2, Upgrader0to1
      • upgrader: Eclipse Multisig 2, Upgrader0to1
      • withdrawer: CanonicalBridgeV3, Eclipse Multisig 2
    Upgrader0to10xD02f…71E3

    This contract was used for an upgrade an still retains its permissions and permissioned actors.

    • Roles:
      • upgrader: Eclipse Multisig

    The current deployment carries some associated risks:

    • Funds can be stolen if a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL).