← Pickore
faq

PLONK 증명 시스템 실무 FAQ: 커밋먼트 검증·음악제 최적화·Permutation Argument 디버깅

자주 묻는 질문

PLONK의 트러스트드 세팅은 어떻게 업데이트하나요?

초기 파라미터 s와 그 제곱들을 공개한 후, 검증키를 이용해 별도 세팅 없이 파라미터를 업데이트한다.

Groth16과 PLONK 중 증명 크기가 작은 경우는?

Groth16은 약 288바이트로 PLONK보다 훨씬 작으며, 소형 회로에 적합하다.

PLONK은 STARK 대비 어떤 점에서 우월한가?

검증이 빠르고 온체인 가스 비용이 낮아 현재 레이어2·롤업에서 널리 채택된다.

빠른 답변

PLONK은 보편적 업데이트 가능한 트러스트드 세팅을 제공하여 회로별 별도 세팅이 필요 없고, 하나의 파라미터를 다양한 애플리케이션에서 공유할 수 있다. 증명 크기는 Groth16의 288바이트 대비 평균 2.7KB로 10~100배 크지만, 검증 속도는 5ms 이하를 유지하여 온체인 검증에 충분한 성능을 제공한다. 현재 대부분의 롤업 및 온체인 서비스가 PLONK을 채택하고 있으며, 퀀텀 저항성이 필요한 경우에만 STARK가 선택된다.

PLONK과 Groth16의 핵심 차이

- **트러스트드 세팅**: Groth16은 회로마다 별도 세팅이 필요하고, PLONK은 보편적·업데이트 가능한 파라미터 하나를 공유한다. - **증명 크기**: Groth16은 288바이트 수준, PLONK은 평균 2.7KB(10~100배 larger)로 larger하지만 여전히 온체인 검증에 충분히 빠름. - **검증 시간**: 양 모두 5ms 이하에서 검증이 가능하며, 실시간 서비스에 적합하다.

보편적 트러스트드 세팅과 업데이트 가능성

PLONK의 세팅은 초기 랜덤 값 s와 그 제곱들을 공개한 후, 검증키를 이용해 파라미터를 업데이트한다.이를 통해 새로운 회로나 확장된degree에 대해 추가 세팅 없이도 활용할 수 있다. 이 특성은 다양한 애플리케이션을 하나의 세팅으로 지원하는 유연성을 제공한다.

STARK와 PLONK 선택 가이드

- **보안 요구**: 퀀텀 저항성이 필수이면 STARK를, 일반적인 온체인 환경에서는 PLONK이 채택된다. - **성능 트레이드오프**: PLONK은 증명 크기가 크고 검증 비용이 다소 높아지만, 검증 속도와 가스 비용 면에서 현재 레이어2·롤업에 최적화되어 있다. - **생태계 지원**: Starknet 등 post‑quantum 프로젝트에서는 STARK를, 대부분의 Rollup 프로젝트에서는 PLONK 기반의 zk‑Rollup이 사용된다.

이 글의 핵심 주장과 검증된 근거

"PLONK는 하나의 보편적 trusted setup으로 여러 회로를 재사용 가능하므로 초기 비용을 한 번만 부담하면 장기적으로 비용 효율적이다."
추가 검증 진행 중