A verifiable implementation of the Optimism rollup state transition.
What's Kona? • Overview • Contributing • Credits
Kona is a suite of portable implementations of the OP Stack rollup state transition, namely the derivation pipeline and the block execution logic.
Built on top of these libraries, this repository also features a fault proof program designed to deterministically execute the rollup state transition in order to verify an L2 output root from the L1 inputs it was derived from.
Kona's libraries were built with alternative backend support and extensibility in mind - it is not just a fault proof program! Kona is also used by:
To build your own backend for kona, or build a new application on top of its libraries, see the SDK section of the book.
kona is currently in active development, and is not yet ready for use in production.
kona
client: The bare-metal program that runs on top of a fault proof VM.host: The host program that runs natively alongside the FPVM, serving as the Preimage Oracle server.
Build Pipelines
cannon: Docker image for compiling to the bare-metalmips-unknown-nonetarget.asterisc: Docker image for compiling to the bare-metalriscv64gc-unknown-none-elftarget.
client / host SDK
common: A suite of utilities for developingclientprograms to be ran on top of Fault Proof VMs.common-proc: Proc macro for theclientprogram entrypoint.primitives: Primitive types for use inkonacrates.preimage: High level interfaces to thePreimageOracleABImpt: Utilities for interacting with the Merkle Patricia Trie in the client program.executor:no_stdstateless block executor for the OP Stack.derive:no_stdcompatible implementation of the derivation pipeline.
The book contains a more in-depth overview of the project, contributor guidelines, tutorials for getting started with building your own programs, and a reference for the libraries and tools provided by Kona.
kona is inspired by the work of several teams, namely OP Labs and other contributors' work on the op-program and BadBoiLabs's work on Cannon-rs.
