# K2 Markdown version of https://ethbeat.org/layer2s/projects/k2 ## Summary **Warning:** This project is archived and no longer maintained. **Warning:** K2 has been shut down. On 2026-09-15 the OptimismPortal and L1StandardBridge were upgraded to disable deposits and standard withdrawals: escrowed ETH and ERC20s can only be claimed on L1 with a Merkle proof against roots set by the KarakMultisig, which can recover all remaining funds after 2027-09-12. No claim interface or Merkle tree has been published. The only public notice is a [Discord announcement from November 2025](https://farcaster.xyz/pranjal/0x030bd1ba) asking users to unstake and bridge out by 2025-12-31. **Warning:** 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](https://medium.com/l2beat/framework-update-l2-projects-recategorisation-5d43b0d1fe50). - Total Value Secured: $5.06 M (+3.12% compared to seven days ago; canonically bridged $5.06 M, natively minted $0.00, externally bridged $0.00; 0.00% with additional trust assumptions compared to the tokens involved and the Stage assigned to the project's canonical messaging bridge) - TVS by asset: ETH & derivatives $4.90 M (96.9%), Stablecoins $156.71 K (3.09%) - Past day UOPS: No data - Gas token: ETH - Type: Other - Purpose: Universal - Host chain: Ethereum - Chain ID: 2410 ### Risks - Sequencer failure: Self sequence (12h delay; sentiment: good) - State validation: None (3d challenge period; sentiment: bad) - Data availability: External (sentiment: bad) - Exit window: None (sentiment: bad) - Proposer failure: Cannot withdraw (sentiment: bad) ### About K2 is a general-purpose L2, which rebranded to the OpenGDP Network to soon become an asset tokenization-focused L1. ### Links - Website: https://karak.network/ - Bridge: https://k2bridge.karak.network/ - Docs: https://docs.opengdp.network/get-started/introduction/start-here - Explorer: https://explorer.karak.network/ - Social: https://twitter.com/Karak_Network, https://t.me/Karak_Network, https://discord.com/invite/opengdp - Contracts explorer (Disco): https://disco.ethbeat.org/ui/p/karak ### Badges - EVM: This project uses the Ethereum Virtual Machine to run its smart contracts and supports the Solidity programming language - Celestia: This project is posting its data to Celestia - Built on OP Stack: The project is built on the OP Stack - Caldera: This project was deployed via the rollup-as-a-service provider Caldera ## Value Secured The interactive TVS charts are shown on [the HTML page](https://ethbeat.org/layer2s/projects/k2#tvs). Token by token: [TVS breakdown](https://ethbeat.org/layer2s/projects/k2/tvs-breakdown). - [TVS chart (JSON)](https://ethbeat.org/api/scaling/tvs/k2?range=max) - [TVS breakdown by token (JSON)](https://ethbeat.org/api/scaling/tvs/k2/breakdown) ## Activity The interactive activity chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/k2#activity). - [Activity chart (JSON)](https://ethbeat.org/api/scaling/activity/k2?range=max) ## Onchain costs The section shows the operating costs that L2s pay to Ethereum. The interactive costs chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/k2#onchain-costs). ### Tracked transactions #### Batch submissions - transfer: 2023-12-22 06:31 UTC - now; currently used; from: [0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E](https://etherscan.io/address/0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E); to: [0xff00000000000000000000000000000000002410](https://etherscan.io/address/0xff00000000000000000000000000000000002410) #### State updates - functionCall: 2023-12-20 05:04 UTC - now; currently used; address: [0x0a23342520Aa8Ca963c4201801F4D3E95e731637](https://etherscan.io/address/0x0a23342520Aa8Ca963c4201801F4D3E95e731637); selector: 0x9aaab648; signature: `function proposeL2Output(bytes32 _outputRoot, uint256 _l2BlockNumber, bytes32 _l1Blockhash, uint256 _l1BlockNumber)` ## Liveness This section shows how "live" the project's operators are by displaying how frequently they submit transactions of the selected type. It also highlights anomalies - significant deviations from their typical schedule. The interactive liveness chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/k2#liveness). ### Tracked transactions #### Batch submissions - transfer: 2023-12-22 06:31 UTC - now; currently used; from: [0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E](https://etherscan.io/address/0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E); to: [0xff00000000000000000000000000000000002410](https://etherscan.io/address/0xff00000000000000000000000000000000002410) #### State updates - functionCall: 2023-12-20 05:04 UTC - now; currently used; address: [0x0a23342520Aa8Ca963c4201801F4D3E95e731637](https://etherscan.io/address/0x0a23342520Aa8Ca963c4201801F4D3E95e731637); selector: 0x9aaab648; signature: `function proposeL2Output(bytes32 _outputRoot, uint256 _l2BlockNumber, bytes32 _l1Blockhash, uint256 _l1BlockNumber)` ## Milestones & Incidents - 2026-09-15 (incident): [K2 shut down, exits replaced by Merkle claims](https://etherscan.io/tx/0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd). Batch posting stopped; bridge contracts only allow Merkle-proof claims of escrowed funds. - 2025-11-17: [Karak rebrands to OpenGDP](https://x.com/OpenGDP/status/1990437951529226293). Karak rebrands to OpenGDP. - 2024-02-27: [K2 Network Early Access Launch](https://x.com/Karak_Network/status/1762561646999068899?s=20). K2 Network is live on mainnet. ## Risk summary **Warning:** Fraud proof system is currently under development. Users need to trust the block proposer to submit correct L1 state roots. ### Funds can be stolen if 1. a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL), 2. an invalid state root is submitted to the system (CRITICAL). ### Funds can be lost if 3. the sequencer posts an unavailable transaction root (CRITICAL), 4. the data is not available on the external provider (CRITICAL). ### Funds can be frozen if 5. the centralized validator goes down. Users cannot produce blocks themselves and exiting the system requires new block production (CRITICAL). ### MEV can be extracted if 6. the operator exploits their centralized position and frontruns user transactions. ## Risk analysis **Warning:** Fraud proof system is currently under development. Users need to trust the block proposer to submit correct L1 state roots. ### Sequencer failure Self sequence (12h delay; sentiment: good) In the event of a sequencer failure, users can force transactions to be included in the project's chain by sending them to L1. There can be up to a 12h delay on this operation. ### State validation None (3d challenge period; sentiment: bad) Currently the system permits invalid state roots. More details in project overview. ### Data availability External (sentiment: bad) Proof construction and state derivation fully rely on data that is posted on Celestia. Sequencer tx roots are not checked against the Blobstream bridge data roots onchain, but L2 nodes can verify data availability by running a Celestia light client. ### Exit window None (sentiment: bad) There is no window for users to exit in case of an unwanted upgrade since contracts are instantly upgradable. ### Proposer failure Cannot withdraw (sentiment: bad) Only the whitelisted proposers can publish state roots on L1, so in the event of failure the withdrawals are frozen. ## Stage K2 is not even a Stage 0 project. **The project does not pass the walkaway test**: users are not able to exit in the presence of malicious operators if the Security Council disappears. ### Stage 0 1 issue needs fixing. - Met: The project self-identifies as a Validium or Optimium. - Met: State roots are posted to Ethereum L1. - Met: A source-available node exists that can reconstruct the L2 state when DA is accessible. Please note that the ETHBEAT team has not verified the validity of the node source code. [View code](https://github.com/ethereum-optimism/optimism/tree/develop/op-node) - Issue: The proof system is still under development. ### Stage 1 3 issues need fixing. **Principle** - Issue: Compromising ≥75% of the Security Council to push a malicious upgrade, or sequencer+DA-committee collusion to withhold data and finalize invalid state roots, should be the only ways (other than bugs) to steal funds or block withdrawals indefinitely. **Guidelines** - Issue: Users' withdrawals can be censored by the permissioned operators. - Issue: Upgrades executed by actors with more centralized control than a Security Council provide less than 7d for users to exit if the permissioned operator is down or censoring. [Learn more about Stages](https://ethbeat.org/stages). Please keep in mind that these stages do not reflect project security, this is an opinionated assessment of project maturity based on subjective criteria, created with a goal of incentivizing projects to push toward better decentralization. Each team may have taken different paths to achieve this goal. ## Data availability ### Data is posted to Celestia Transactions roots are posted onchain and the full data is posted on Celestia. Since the Blobstream bridge is not used, availability of the data is not verified against Celestia validators, meaning that the Sequencer can single-handedly publish unavailable roots. **Risks** - Funds can be lost if the sequencer posts an unavailable transaction root (CRITICAL). - Funds can be lost if the data is not available on the external provider (CRITICAL). **References** - [Introducing Blobstream: streaming modular DA to Ethereum](https://blog.celestia.org/introducing-blobstream/) - [Derivation: Batch submission - OP Mainnet specs](https://github.com/ethereum-optimism/specs/blob/main/specs/protocol/derivation.md#batch-submission) - [BatchInbox - address](https://etherscan.io/address/0xff00000000000000000000000000000000002410#code) - [OptimismPortal.sol - source code, depositTransaction function](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) ## State validation ### No state validation OP Stack projects can use the OP fault proof system, already being deployed on some. This project though is not using fault proofs yet and is relying on the honesty of the permissioned Proposer and Challengers to ensure state correctness. The smart contract system permits invalid state roots. **Risks** - Funds can be stolen if an invalid state root is submitted to the system (CRITICAL). **References** - [L2OutputOracle.sol - source code, deleteL2Outputs function](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) ## Upgrades & Governance ### 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: 2 - Last upgrade: 1mo 20d ago - Avg upgrade interval: 1y 5mo - 2026-09-15 04:45 UTC, upgrade of [OptimismPortal](https://etherscan.io/address/0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73#code): transaction [0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd](https://etherscan.io/tx/0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd), implementations: [0xB1762246367681e5b335968950e8A17b0c56021D](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) ([diff](https://disco.ethbeat.org/diff/eth:0x3fe449Ef47228F03f979F9D955196494243cdf7E/eth:0xB1762246367681e5b335968950e8A17b0c56021D)) - 2023-12-21 07:32 UTC, deployment of [OptimismPortal](https://etherscan.io/address/0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73#code): transaction [0x8a473670c3340bb6aa707beddf92664cf6d4ac8c79b785a6a0963531ba0e066d](https://etherscan.io/tx/0x8a473670c3340bb6aa707beddf92664cf6d4ac8c79b785a6a0963531ba0e066d), implementations: [0x3fe449Ef47228F03f979F9D955196494243cdf7E](https://etherscan.io/address/0x3fe449Ef47228F03f979F9D955196494243cdf7E#code) - 2023-12-21 07:31 UTC, deployment of [L2OutputOracle](https://etherscan.io/address/0x0a23342520Aa8Ca963c4201801F4D3E95e731637#code): transaction [0x0c0f24dc018c3729da70c02c63d573dfac8fe99a9937b31da75b64d3ec98c88e](https://etherscan.io/tx/0x0c0f24dc018c3729da70c02c63d573dfac8fe99a9937b31da75b64d3ec98c88e), implementations: [0x394317B191f5c7A371e74594776B1EfDc33d10D6](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) - 2023-12-21 07:29 UTC, upgrade of [L1CrossDomainMessenger](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code): transaction [0x99fc5a58e224a9b519ed673d54b977070cb7093fe0aeb7ac5b2a93b1a541727b](https://etherscan.io/tx/0x99fc5a58e224a9b519ed673d54b977070cb7093fe0aeb7ac5b2a93b1a541727b), implementations: [0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b](https://etherscan.io/address/0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b#code) ([diff](https://disco.ethbeat.org/diff/eth:0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d/eth:0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b)) - 2023-12-21 07:25 UTC, deployment of [OptimismMintableERC20Factory](https://etherscan.io/address/0xF04a74899FF4c4410fAF3B5faa29B8Fd199C13DB#code): transaction [0xabefa8137a3edd703261a62514df2180cfe8251dea6867ab87386a0eb2f94281](https://etherscan.io/tx/0xabefa8137a3edd703261a62514df2180cfe8251dea6867ab87386a0eb2f94281), implementations: [0xe1863A873f61fDD16560cAa7692a2A994b51E76A](https://etherscan.io/address/0xe1863A873f61fDD16560cAa7692a2A994b51E76A#code) - 2023-12-21 07:23 UTC, deployment of [L1ERC721Bridge](https://etherscan.io/address/0x952851CecB07705A5bb483C1CE080F97e1E7491E#code): transaction [0x47bceb663a46c76e798b58969b6d6154ea215e03822c2a76faf0caeb34fb2216](https://etherscan.io/tx/0x47bceb663a46c76e798b58969b6d6154ea215e03822c2a76faf0caeb34fb2216), implementations: [0xc4550911Df26E604aA560dee6a9b66D0CA933482](https://etherscan.io/address/0xc4550911Df26E604aA560dee6a9b66D0CA933482#code) - 2023-12-21 03:15 UTC, deployment of [SystemConfig](https://etherscan.io/address/0x622333688CC1878C7ff4205c89bDe051798788A7#code): transaction [0xf5b7950924dfea5813bc7b14b1e0d19c87cd862ee9717f7d24806b92e57c5ada](https://etherscan.io/tx/0xf5b7950924dfea5813bc7b14b1e0d19c87cd862ee9717f7d24806b92e57c5ada), implementations: [0x01D5303F326B992845eef2782D4c9a7c6DdE4470](https://etherscan.io/address/0x01D5303F326B992845eef2782D4c9a7c6DdE4470#code) - 2023-12-20 05:04 UTC, deployment of [L1CrossDomainMessenger](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code): transaction [0x2fcb412e58cba3af863cd4a0397c65bf6347a726aae1d698b79aa30cdaf877fa](https://etherscan.io/tx/0x2fcb412e58cba3af863cd4a0397c65bf6347a726aae1d698b79aa30cdaf877fa), implementations: [0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code) ## Updates Each date links the update on the HTML page, which also shows its contract diffs. ### [2026-09-16 14:49 UTC](https://ethbeat.org/layer2s/projects/k2?update=7a4fdc50) (high severity, 26 changes) K2 core bridge contracts replaced with a Merkle-claim exit mechanism; batch posting stopped. OptimismPortal implementation `0x3fe449Ef47228F03f979F9D955196494243cdf7E` (v1.10.0) → `0xB1762246367681e5b335968950e8A17b0c56021D` (v2.3.0), upgraded and paused by the KarakMultisig on 2026-09-15 04:45 UTC (tx `0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd`). `depositTransaction()`, `receive()`, `proveWithdrawalTransaction()` and `finalizeWithdrawalTransaction()` now revert. Escrowed ETH (1876 ETH) is claimable via `claimETH(amount, proof)` against `merkleRootETH` = `0x6822879a8b8b0acb7a826beaec075d292958ffcb64c980959c0d0aea5ea0f8f9`, set on 2026-09-16 04:03 UTC (tx `0x2080dbdfa4798b9003dfe3e8b5bf8ea1772143eaf44acac1217002904eef87ec`, which also unpaused the portal); leaf = `keccak256(bytes.concat(keccak256(abi.encode(claimer, amount))))`, claims are cumulative per address. The Guardian can pause/unpause claims and, while paused and after `RECOVERY_TIMESTAMP` = 1820707200 (2027-09-12), call `recoverETH(recipient)` for the full balance. https://disco.l2beat.com/diff/eth:0x3fe449Ef47228F03f979F9D955196494243cdf7E/eth:0xB1762246367681e5b335968950e8A17b0c56021D L1StandardBridge implementation `0xC4De51792746960FC0ac78360b8e9c6E103F3B13` (v1.4.0) → `0xF44B55E152e872FF5CbD3d9F3bd732F67d5B366A` (v2.3.0) in the same tx. All deposit entrypoints and `finalizeBridgeETH()`/`finalizeBridgeERC20()` now revert. Escrowed ERC20s are claimable via `claimTokens(tokens[], amounts[], proof[])` against `merkleRoot` = `0x0747603ccf64fdae7c52f9e69c1bafbb8b171860812139d59972cd8d022e3840` (set 2026-09-16 04:03 UTC); leaf = `keccak256(bytes.concat(keccak256(abi.encode(claimer, tokens, amounts))))`, cumulative per claimer and token. The Guardian (read from the portal) can call `recoverTokens(recipient, tokens[])` under the same paused + `RECOVERY_TIMESTAMP` conditions, and `sweepETH()` while claims are paused to forward the bridge's ETH balance to the OptimismPortal. https://disco.l2beat.com/diff/eth:0xC4De51792746960FC0ac78360b8e9c6E103F3B13/eth:0xF44B55E152e872FF5CbD3d9F3bd732F67d5B366A Batcher `0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E` last posted to the inbox on 2026-09-15 01:22:59 UTC; L2 blocks since then are empty sequencer-window blocks. Proposer `0x4179f43f3b994e97090557363b09F403138a729e` keeps posting output roots for them every 7200 blocks (last 2026-09-16 13:49 UTC, L2 block 43063200). Last withdrawal initiated on L2 2026-09-13 18:51 UTC; withdrawals not finalized before the upgrade cannot be finalized. No claims executed yet; no public Merkle tree or announcement of the claim mechanism found. ### [2026-07-09 09:57 UTC](https://ethbeat.org/layer2s/projects/k2?update=639bf9a7) (1 change) SystemConfig `opStackDA.isUsingCelestia: false → true`. K2 is posting to Celestia again after the brief switch to Ethereum calldata on 2026-07-01; that switch was transient and has been removed from the config. ### [2026-07-01 16:32 UTC](https://ethbeat.org/layer2s/projects/k2?update=b652168b) (1 change) SystemConfig `opStackDA.isUsingCelestia`: `true` → `false`. Karak no longer uses Celestia DA. ### [2025-12-12 10:25 UTC](https://ethbeat.org/layer2s/projects/k2?update=06f19687) (1 change) K2 is posting to Celestia. ### [2025-11-28 12:50 UTC](https://ethbeat.org/layer2s/projects/k2?update=aec8755c) (1 change) Posts calldata instead of Celestia blobs. ### [2025-07-14 12:45 UTC](https://ethbeat.org/layer2s/projects/k2?update=fbf109a6) (10 changes) Discovery rerun on the same block number with only config-related changes. ### [2024-02-28 08:50 UTC](https://ethbeat.org/layer2s/projects/k2?update=9942f7d8) (10 changes) Update discovery to include the multisig threshold. ## Operator ### The system has a centralized operator The operator is the only entity that can propose blocks. A live and trustworthy operator is vital to the health of the system. **Risks** - MEV can be extracted if the operator exploits their centralized position and frontruns user transactions. **References** - [L2OutputOracle.sol - source code, CHALLENGER address](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) - [L2OutputOracle.sol - source code, PROPOSER address](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) ### Users can force any transaction Because the state of the system is based on transactions submitted on the underlying host chain and anyone can submit their transactions there it allows the users to circumvent censorship by interacting with the smart contract on the host chain directly. **References** - [Sequencing Window - OP Mainnet Specs](https://github.com/ethereum-optimism/optimism/blob/51eeb76efeb32b3df3e978f311188aa29f5e3e94/specs/glossary.md#sequencing-window) - [OptimismPortal.sol - source code, depositTransaction function](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) ## Withdrawals ### Regular messaging The user initiates L2->L1 messages by submitting a regular transaction on this chain. When the block containing that transaction is settled, the message becomes available for processing on L1. The process of block finalization takes a challenge period of 3d to complete. **Risks** - Funds can be frozen if the centralized validator goes down. Users cannot produce blocks themselves and exiting the system requires new block production (CRITICAL). **References** - [OptimismPortal.sol - source code, proveWithdrawalTransaction function](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) - [OptimismPortal.sol - source code, finalizeWithdrawalTransaction function](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) - [L2OutputOracle.sol - source code, PROPOSER check](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) ### Forced messaging If the user experiences censorship from the operator with regular L2->L1 messaging they can submit their messages directly on L1. The system is then obliged to service this request or halt all messages, including forced withdrawals from L1 and regular messages initiated on L2. Once the force operation is submitted and if the request is serviced, the operation follows the flow of a regular message. **References** - [Forced withdrawal from an OP Stack blockchain](https://docs.optimism.io/stack/transactions/forced-transaction) ## Other considerations ### EVM compatible smart contracts are supported OP stack chains are pursuing the EVM Equivalence model. No changes to smart contracts are required regardless of the language they are written in, i.e. anything deployed on L1 can be deployed on L2. **References** - [Introducing EVM Equivalence](https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306) ## Permissions Explore these contracts and permissions in Disco, ETHBEAT's contract explorer: https://disco.ethbeat.org/ui/p/karak ### Ethereum #### Actors ##### KarakMultisig Addresses: [0x28A227d4faF0f4f75897438E24C43EF1CDABb920](https://etherscan.io/address/0x28A227d4faF0f4f75897438E24C43EF1CDABb920) A Multisig with 3/5 threshold. - Can upgrade **with no delay** - L2OutputOracle [via: ProxyAdmin] - SystemConfig [via: ProxyAdmin] - L1ERC721Bridge [via: ProxyAdmin] - L1CrossDomainMessenger [via: ProxyAdmin] - L1StandardBridge [via: ProxyAdmin] - OptimismPortal [via: ProxyAdmin] - OptimismMintableERC20Factory [via: ProxyAdmin] - Can interact with L2OutputOracle - Allowed to challenge or delete state roots proposed by a Proposer - Can interact with SystemConfig - it can update the preconfer address, the batch submitter (Sequencer) address and the gas configuration of the system - Can interact with L1StandardBridge - set merkleRoot, sweep the bridge's ETH into the OptimismPortal while claims are paused, and after the recovery timestamp withdraw all tokens and ETH - Can interact with OptimismPortal - set merkleRootETH, pause and unpause claims, and after RECOVERY_TIMESTAMP (while paused) withdraw the whole ETH balance - Can interact with AddressManager - set and change address mappings [via: ProxyAdmin] Participants (5): [0xAb86E21e9BFA559B93ca6f783362BFf5504f2cac](https://etherscan.io/address/0xAb86E21e9BFA559B93ca6f783362BFf5504f2cac), [0x7E973c8f8aCDb71E4e00A19631739FFBF9748Cd0](https://etherscan.io/address/0x7E973c8f8aCDb71E4e00A19631739FFBF9748Cd0), [0xBcB3EaB21eCe8864aFcC07f7613bD6D8bB5C28d3](https://etherscan.io/address/0xBcB3EaB21eCe8864aFcC07f7613bD6D8bB5C28d3), [0x988378eD49F538104fDBaC1A0ac2Edf9890EA4f2](https://etherscan.io/address/0x988378eD49F538104fDBaC1A0ac2Edf9890EA4f2), [0x282DB123D1cbf5437c295EA0df0137E5FaDbD117](https://etherscan.io/address/0x282DB123D1cbf5437c295EA0df0137E5FaDbD117) ##### EOA 1 Addresses: [0x4179f43f3b994e97090557363b09F403138a729e](https://etherscan.io/address/0x4179f43f3b994e97090557363b09F403138a729e) - Can interact with L2OutputOracle - Allowed to post new state roots of the current layer to the host chain ##### EOA 2 Addresses: [0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E](https://etherscan.io/address/0x84BdFb21ed7C8B332a42bFD595744a84F3101e4E) - Can interact with SystemConfig - Allowed to commit transactions from the current layer to the host chain ## Smart contracts ![A diagram of the smart contract architecture](https://ethbeat.org/static/images/architecture/opstack-optimium.78a63812.png) Explore these contracts and permissions in Disco, ETHBEAT's contract explorer: https://disco.ethbeat.org/ui/p/karak ### Ethereum #### L2OutputOracle Addresses: [0x0a23342520Aa8Ca963c4201801F4D3E95e731637](https://etherscan.io/address/0x0a23342520Aa8Ca963c4201801F4D3E95e731637#code), [0x394317B191f5c7A371e74594776B1EfDc33d10D6](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2023-12-21 07:31 UTC, deployment of [L2OutputOracle](https://etherscan.io/address/0x0a23342520Aa8Ca963c4201801F4D3E95e731637#code): transaction [0x0c0f24dc018c3729da70c02c63d573dfac8fe99a9937b31da75b64d3ec98c88e](https://etherscan.io/tx/0x0c0f24dc018c3729da70c02c63d573dfac8fe99a9937b31da75b64d3ec98c88e), implementations: [0x394317B191f5c7A371e74594776B1EfDc33d10D6](https://etherscan.io/address/0x394317B191f5c7A371e74594776B1EfDc33d10D6#code) Contains a list of proposed state roots which Proposers assert to be a result of block execution. Currently only the PROPOSER address can submit new state roots. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig - **challenger**: KarakMultisig - **proposer**: EOA 1 Can be upgraded by: KarakMultisig with no delay #### SystemConfig Addresses: [0x622333688CC1878C7ff4205c89bDe051798788A7](https://etherscan.io/address/0x622333688CC1878C7ff4205c89bDe051798788A7#code), [0x01D5303F326B992845eef2782D4c9a7c6DdE4470](https://etherscan.io/address/0x01D5303F326B992845eef2782D4c9a7c6DdE4470#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2023-12-21 03:15 UTC, deployment of [SystemConfig](https://etherscan.io/address/0x622333688CC1878C7ff4205c89bDe051798788A7#code): transaction [0xf5b7950924dfea5813bc7b14b1e0d19c87cd862ee9717f7d24806b92e57c5ada](https://etherscan.io/tx/0xf5b7950924dfea5813bc7b14b1e0d19c87cd862ee9717f7d24806b92e57c5ada), implementations: [0x01D5303F326B992845eef2782D4c9a7c6DdE4470](https://etherscan.io/address/0x01D5303F326B992845eef2782D4c9a7c6DdE4470#code) Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig - **batcherHash**: EOA 2 - **owner**: KarakMultisig Can be upgraded by: KarakMultisig with no delay #### OptimismPortal (escrow) Addresses: [0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73](https://etherscan.io/address/0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73#code), [0xB1762246367681e5b335968950e8A17b0c56021D](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 1mo 20d ago, Avg upgrade interval: 1y 5mo) - 2026-09-15 04:45 UTC, upgrade of [OptimismPortal](https://etherscan.io/address/0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73#code): transaction [0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd](https://etherscan.io/tx/0x59515cbe7245d0856751523549d7b4524beb5f31930b2bc7bc3016b8071e65fd), implementations: [0xB1762246367681e5b335968950e8A17b0c56021D](https://etherscan.io/address/0xB1762246367681e5b335968950e8A17b0c56021D#code) ([diff](https://disco.ethbeat.org/diff/eth:0x3fe449Ef47228F03f979F9D955196494243cdf7E/eth:0xB1762246367681e5b335968950e8A17b0c56021D)) - 2023-12-21 07:32 UTC, deployment of [OptimismPortal](https://etherscan.io/address/0xeeCE9CD7Abd1CC84d9dfc7493e7e68079E47eA73#code): transaction [0x8a473670c3340bb6aa707beddf92664cf6d4ac8c79b785a6a0963531ba0e066d](https://etherscan.io/tx/0x8a473670c3340bb6aa707beddf92664cf6d4ac8c79b785a6a0963531ba0e066d), implementations: [0x3fe449Ef47228F03f979F9D955196494243cdf7E](https://etherscan.io/address/0x3fe449Ef47228F03f979F9D955196494243cdf7E#code) Modified OptimismPortal: deposits, proving and finalizing withdrawals are disabled. ETH held by the contract can only be claimed with a Merkle proof against merkleRootETH. After RECOVERY_TIMESTAMP and while claims are paused, the guardian can withdraw the whole ETH balance. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig - **guardian**: KarakMultisig The following tokens are included in the value secured calculation: ETH Can be upgraded by: KarakMultisig with no delay #### L1ERC721Bridge Addresses: [0x952851CecB07705A5bb483C1CE080F97e1E7491E](https://etherscan.io/address/0x952851CecB07705A5bb483C1CE080F97e1E7491E#code), [0xc4550911Df26E604aA560dee6a9b66D0CA933482](https://etherscan.io/address/0xc4550911Df26E604aA560dee6a9b66D0CA933482#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2023-12-21 07:23 UTC, deployment of [L1ERC721Bridge](https://etherscan.io/address/0x952851CecB07705A5bb483C1CE080F97e1E7491E#code): transaction [0x47bceb663a46c76e798b58969b6d6154ea215e03822c2a76faf0caeb34fb2216](https://etherscan.io/tx/0x47bceb663a46c76e798b58969b6d6154ea215e03822c2a76faf0caeb34fb2216), implementations: [0xc4550911Df26E604aA560dee6a9b66D0CA933482](https://etherscan.io/address/0xc4550911Df26E604aA560dee6a9b66D0CA933482#code) Used to bridge ERC-721 tokens from host chain to this chain. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig Can be upgraded by: KarakMultisig with no delay #### L1CrossDomainMessenger Addresses: [0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code), [0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b](https://etherscan.io/address/0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 2y 10mo ago, Avg upgrade interval: 1y 5mo) - 2023-12-21 07:29 UTC, upgrade of [L1CrossDomainMessenger](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code): transaction [0x99fc5a58e224a9b519ed673d54b977070cb7093fe0aeb7ac5b2a93b1a541727b](https://etherscan.io/tx/0x99fc5a58e224a9b519ed673d54b977070cb7093fe0aeb7ac5b2a93b1a541727b), implementations: [0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b](https://etherscan.io/address/0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b#code) ([diff](https://disco.ethbeat.org/diff/eth:0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d/eth:0xc5c3DF92714aAf510F8dD9a4c9C67D35f7d7376b)) - 2023-12-20 05:04 UTC, deployment of [L1CrossDomainMessenger](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code): transaction [0x2fcb412e58cba3af863cd4a0397c65bf6347a726aae1d698b79aa30cdaf877fa](https://etherscan.io/tx/0x2fcb412e58cba3af863cd4a0397c65bf6347a726aae1d698b79aa30cdaf877fa), implementations: [0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d](https://etherscan.io/address/0x9BFfA66a8FcAAd7AC9ea7c7d4b9a6fc46777022d#code) Sends messages from host chain to this chain, and relays messages back onto host chain. In the event that a message sent from host chain to this chain is rejected for exceeding this chain's epoch gas limit, it can be resubmitted via this contract's replay function. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig Can be upgraded by: KarakMultisig with no delay #### L1StandardBridge (escrow) Addresses: [0xBA61F25dd9f2d5f02D01B1C2c1c5F0B14c4B48A3](https://etherscan.io/address/0xBA61F25dd9f2d5f02D01B1C2c1c5F0B14c4B48A3#code), [0xF44B55E152e872FF5CbD3d9F3bd732F67d5B366A](https://etherscan.io/address/0xF44B55E152e872FF5CbD3d9F3bd732F67d5B366A#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) Modified L1StandardBridge: deposits and finalizing withdrawals are disabled. ERC20 tokens held by the contract can only be claimed with a Merkle proof against merkleRoot. After the recovery timestamp and while claims are paused (both read from OPTIMISM_PORTAL), the guardian can withdraw all tokens and ETH. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig - **guardian**: KarakMultisig All supported tokens in this escrow are included in the value secured calculation. Can be upgraded by: KarakMultisig with no delay #### ProxyAdmin Addresses: [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) - Roles: - **owner**: KarakMultisig #### OptimismMintableERC20Factory Addresses: [0xF04a74899FF4c4410fAF3B5faa29B8Fd199C13DB](https://etherscan.io/address/0xF04a74899FF4c4410fAF3B5faa29B8Fd199C13DB#code), [0xe1863A873f61fDD16560cAa7692a2A994b51E76A](https://etherscan.io/address/0xe1863A873f61fDD16560cAa7692a2A994b51E76A#code) (Implementation (Upgradable)), [0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C](https://etherscan.io/address/0x1612F868EbA1cea65ee66bF4A7C75001b0D4065C#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2023-12-21 07:25 UTC, deployment of [OptimismMintableERC20Factory](https://etherscan.io/address/0xF04a74899FF4c4410fAF3B5faa29B8Fd199C13DB#code): transaction [0xabefa8137a3edd703261a62514df2180cfe8251dea6867ab87386a0eb2f94281](https://etherscan.io/tx/0xabefa8137a3edd703261a62514df2180cfe8251dea6867ab87386a0eb2f94281), implementations: [0xe1863A873f61fDD16560cAa7692a2A994b51E76A](https://etherscan.io/address/0xe1863A873f61fDD16560cAa7692a2A994b51E76A#code) A helper contract that generates OptimismMintableERC20 contracts on the network it's deployed to. OptimismMintableERC20 is a standard extension of the base ERC20 token contract designed to allow the L1StandardBridge contracts to mint and burn tokens. This makes it possible to use an OptimismMintableERC20 as this chain's representation of a token on the host chain, or vice-versa. - Roles: - **admin**: ProxyAdmin; ultimately KarakMultisig Can be upgraded by: KarakMultisig with no delay 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).