> ## Documentation Index
> Fetch the complete documentation index at: https://docs.optimism.io/llms.txt
> Use this file to discover all available pages before exploring further.

# absolute prestate 및 preimage 파일 생성

> 무허가(permissionless) 결함 증명(fault proof)을 위한 kona-client absolute prestate를 생성, 검증 및 구성합니다.

# 개요

absolute prestate는 `kona-client`의 특정 빌드에 대한 온체인 커밋먼트입니다. 이에 대응하는 preimage(gzip으로 압축된 바이너리)는 분쟁 시점에 `op-challenger`가 실행하는 파일입니다. 이 가이드는 이를 재현하기 위한 최소한의 절차를 설명합니다.

> [!NOTE]
>
> [Upgrade 19](https://docs.optimism.io/ko/notices/archive/upgrade-19)부터 `CANNON_KONA`(게임 유형 `8`)가 무허가 결함 증명(fault proof)의 respected game type입니다. 체인이 아직 공개 Superchain Registry에 등록되어 있지 않다면 대신 [사용자 지정 kona-client absolute prestate 생성](https://docs.optimism.io/ko/chain-operators/tutorials/kona-custom-prestate.md)을 따르십시오.

## 사전 요구 사항

* [Docker](https://docs.docker.com/engine/install/) 실행 중
* [`just`](https://github.com/casey/just) 설치됨

## prestate 생성 및 검증

**1. 릴리스 태그 체크아웃**

```bash theme={null}
git clone https://github.com/ethereum-optimism/optimism.git
cd optimism
git checkout kona-node/v<VERSION>
```

**2. prestate 빌드**

```bash theme={null}
just reproducible-prestate-kona
```

빌드는 Docker에서 실행되며 아티팩트를 `rust/kona/prestate-artifacts-cannon/`에 기록합니다.

**3. 해시 읽기 및 검증**

```bash theme={null}
jq -r .pre rust/kona/prestate-artifacts-cannon/prestate-proof.json
```

출력된 해시를 [`standard-prestates.toml`](https://github.com/ethereum-optimism/superchain-registry/blob/main/validation/standard/standard-prestates.toml)에서 해당 릴리스 태그의 `cannon64-kona` 항목과 비교하십시오. 일치하면 빌드 환경이 정직하다는 것이 확인됩니다.

## op-challenger 구성

빌드로 생성된 해시 이름 파일 `rust/kona/prestate-artifacts-cannon/0x<HASH>.bin.gz`를 `op-challenger` 인스턴스가 접근할 수 있는 위치에 업로드한 다음, 기존 challenger 구성에 kona 전용 환경 변수를 추가합니다.

```bash theme={null}
OP_CHALLENGER_TRACE_TYPE=cannon-kona,permissioned
OP_CHALLENGER_CANNON_KONA_PRESTATES_URL=<HTTP_URL_PATH_TO_PRESTATES>
```

challenger는 각 분쟁에 맞는 바이너리를 찾기 위해 `*_PRESTATES_URL`에 `/0x<hash>.bin.gz`를 덧붙입니다. 기존의 `OP_CHALLENGER_ROLLUP_CONFIG`, `OP_CHALLENGER_L2_GENESIS`, `OP_CHALLENGER_GAME_FACTORY_ADDRESS`는 변경 없이 그대로 적용됩니다.

## 다음 단계

* [사용자 지정 kona-client absolute prestate 생성](https://docs.optimism.io/ko/chain-operators/tutorials/kona-custom-prestate.md) — 아직 Superchain Registry에 등록되지 않은 체인용입니다.
* [무허가 결함 증명으로 마이그레이션](https://docs.optimism.io/ko/chain-operators/tutorials/migrating-permissionless.md).
* [결함 증명 설명](https://docs.optimism.io/ko/op-stack/fault-proofs/explainer.md).
