개요
cannon은 동일하게 동작해야 하는 두 부분으로 구성됩니다.- 온체인
MIPS64.sol— 빅엔디언 64비트 MIPS(MIPS64r1) 명령어 실행을 Solidity로 구현한 것으로, L1에서 분쟁 대상인 단일 명령어를 검증하는 데 사용됩니다. - 오프체인
mipsevm— 동일한 명령어 집합에 대한 계측(instrumented) 에뮬레이터로, 전체 프로그램을 실행하고 임의의 한 단계를 온체인에서 반복하는 데 필요한 witness 데이터를 생성합니다.
시작하기
- Cannon 사용법 — 저장소 내 README에서 cannon 빌드, kona-client ELF를 초기 VM 상태로 로드하는 방법, 에뮬레이터 실행 방법을 안내합니다.
사용 방법 가이드
- 절대 prestate 및 preimage 파일 생성 — op-challenger가 분쟁 시점에 실행하는 kona-client의 cannon prestate를 빌드하고 검증합니다.
- 사용자 지정 kona-client 절대 prestate 생성 — 공개 Superchain Registry에 아직 등록되지 않은 체인을 위한 동일한 작업입니다.
구성 및 플래그 레퍼런스
- 이 사이트에는 아직 cannon의 구성 레퍼런스 페이지가 없습니다. cannon은 전적으로 CLI
플래그로 구성되며, 플래그는
cannon --help와 저장소 내 README에 문서화되어 있습니다.
릴리스
- GitHub의 cannon 릴리스 태그 — cannon은 아직 릴리스 아래에 페이지가 없습니다.
소스 및 사양 링크
- Optimism 모노레포의 소스:
cannon/. 온체인 컨트랙트는packages/contracts-bedrock/src/cannon에 있습니다. - Cannon 개요 문서 — 온체인/오프체인 분할과 witness 데이터(packed state, 메모리 증명, preimage 데이터)에 대한 저장소 내 문서입니다.
- Cannon 결함 증명 VM 사양 — VM의 규범적 정의입니다.