1. 개요 현존하는 해시 함수들(SHA, KECCAK 등)은 수 많은 비트 연산들로 정의되기때문에 컴퓨터로 빠르게 연산 결과를 얻을 수 있다. 하지만 해시함수를 구성하는 모든 비트 연산들을 산술연산으로 표현하려면 많은 제약식들이 필요하고 이는 해시 함수의 입출력 관계에

1. 개요 이번에는 영지식 증명 프로토콜의 증명 대상인 circuit의 구현 방법에 대해 알아보자. 최근에 영지식 증명 프로토콜들을 구현하는 여러 프로젝트들이 있지만, 그 중에서도 lookup table 및 custom gate를 활용한 circuit의 작성이 가능한

1. 개요 이전 글에 이어 이번에는 영지식 증명 프로토콜에서의 circuit 최적화 방법에 대해 알아보자. 참고한 코드는 Scroll's poseidon hash circuit 이며, 이 깃허브 저장소에는 최적화된 버전의 poseidon hash circuit과 최적화
0. Notation & Background Notation $M$는 $3\times 3$ mds 행렬 $M^{-1}$는 행렬 $M$의 역행렬 $f:\mathbb{F}p^3\rightarrow \mathbb{F}p^3$ 는 full 라운드의 비선형 연산을 나타내는 함