ZKP 개발에 필요한 라이브러리 설치가 있었다.
https://docs.circom.io/getting-started/installation/#important-deprecation-note
1) rustup 설치
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh 설치
circom은 Rust로 쓰여진 ZKP 라이브러리이다. rust 언어가 컴파일 되려면 버전 관리 등의 관리 역할을 해주는 rustup 을 설치해주어야 한다고 한다.
위의 명령어는 macOS와 Linux에서 동작한다.
+) 또한 circom 라이브러리를 사용하기 위해서는 node.js가 설치되어 있어야 하며 npm, yarn이 사용 가능해야 한다.
rustup을 설치하게 되면 자동으로 cargo 등이 설치된다.
2) circom 프로젝트 git clone 해오고 > cargo build --release
git clone https://github.com/iden3/circom.git 을 터미널에 입력한다.
그러고 자신이 만든 디렉토리의 위치에서 cd circom을 해야 cargo.toml의 위치를 찾아 cargo build --release를 해야 한다.
-> 나의 경우 루트 디렉토리에는 cargo.toml의 위치가 없다. 즉, cargo.toml의 파일이 설치된 부모 경로에서 실행해야 한다.
cargo build --release 를 하면 이것저것 다운로드가 된다.
3) snarkjs 설치
snarkjs는 circom에서 생성된 코드 생성, ZKP 검증을 담당하는 npm 패키지이다.
'Blockchain > ZKP' 카테고리의 다른 글
zokrates library 간단 사용기(template,signal) (0) | 2024.03.24 |
---|---|
zkSNARKs란? (circom-zkSNARKs의 관계) (0) | 2024.03.24 |