Rust 및 기타 LLVM 컴파일 언어로 작성된 프로그램의 올바른 실행을 증명하는 영지식 가상 머신입니다.
starkware-libs/stwo
M31 필드에서 Circle STARK를 증명하고 검증하는 Rust 구현으로, no_std 검증기와 SIMD 증명 백엔드를 제공합니다.
- 스타
- 507
- 포크
- 183
- 열린 이슈
- 48
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
Stwo는 Rust로 작성된 Circle STARK 증명기이자 검증기입니다. 메르센 소수 필드 M31(2^31 − 1)에서 증명 시스템을 실행하며, 이를 통해 AVX2, AVX-512, NEON, WebAssembly SIMD 같은 SIMD 레인에 매핑되는 32비트 모듈러 연산을 활용할 수 있습니다. 라이브러리에는 M31, CM31, QM31 필드 타워, circle FFT, circle 도메인용 FRI 변형, lifted Merkle 커밋, Blake2s, Blake3, Poseidon252, Keccak256을 비롯한 여러 Fiat-Shamir 채널이 포함되어 있습니다.
저장소는 여러 crate로 구성됩니다. 핵심 crate에서는 no_std 검증기를 `prover` 기능으로 활성화되는 증명기와 분리합니다. 이와 함께 constraint framework, air-utils, 참조 예제(Fibonacci, Poseidon2, Blake, PLONK 스타일, 상태 머신)가 제공됩니다. 메모리와 테이블 검증을 위한 GKR 및 LogUp 조회 인자도 포함되어 있습니다.
Stwo는 StarkWare의 SHARP 증명기와 Cairo VM용 stwo-cairo 증명기의 기반입니다. 애플리케이션별 증명기는 별도 저장소에서 개발됩니다. 2026년 7월 말부터 개발은 starkware-libs/proving으로 옮겨갑니다.
핵심 기능
- 01M31 필드에서 동작하는 Circle STARK 증명기 및 검증기.
- 02증명기 코드를 제외하고 빌드할 수 있는 no_std 검증기.
- 03AVX2, AVX-512, NEON, WebAssembly용 SIMD 백엔드와 CPU 참조 백엔드.
- 04Blake2s, Blake3, Poseidon252, Keccak256을 지원하는 여러 Fiat-Shamir 채널.
- 05메모리와 테이블 검증을 위한 GKR 및 LogUp 조회 인자.
- 06`parallel` 기능으로 활성화할 수 있는 Rayon 기반 병렬 증명.
활용 사례
- STARK 백엔드를 기반으로 zkVM 또는 검증 가능한 연산 시스템 구축.
- Solidity 또는 Cairo 컨트랙트 같은 온체인 환경에 소형 STARK 검증기 임베딩.
- Circle STARK 구성과 circle 도메인에서의 FRI 실험.
- STARK 기반 증명을 위한 Poseidon2, Blake 등의 참조 회로 연구.
빠른 시작
- 1
Rust 의존성으로 stwo를 추가합니다(verifier만 사용하거나 prover feature와 함께 사용).
- 2
전체 prover를 release 모드로 빌드합니다.
cargo build --release --features prover - 3
표준 테스트 스위트를 실행합니다.
cargo test --features prover
사용 전 알아둘 점
- rust-toolchain.toml에 고정된 Rust nightly가 필요합니다.
- 전체 prover 성능을 내려면 AVX2, AVX-512 또는 NEON을 지원하는 CPU가 필요합니다.
- 2026년 7월부터 개발이 새 리포지토리로 이전됩니다.
토픽
자주 묻는 질문
- stwo은(는) 무엇인가요?
- M31 필드에서 Circle STARK를 증명하고 검증하는 Rust 구현으로, no_std 검증기와 SIMD 증명 백엔드를 제공합니다. Stwo는 Rust로 작성된 Circle STARK 증명기이자 검증기입니다. 메르센 소수 필드 M31(2^31 − 1)에서 증명 시스템을 실행하며, 이를 통해 AVX2, AVX-512, NEON, WebAssembly SIMD 같은 SIMD 레인에 매핑되는 32비트 모듈러 연산을 활용할 수 있습니다. 라이브러리에는 M31, CM31, QM31 필드 타워, circle FFT, circle 도메인용 FRI 변형, lifted Merkle 커밋, Blake2s, Blake3, Poseidon252, Keccak256을 비롯한 여러 Fiat-Shamir 채널이 포함되어 있습니다.
- stwo은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- stwo은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- stwo은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. stwo의 마지막 커밋은 2026년 11월 5일입니다.
- stwo은(는) 어디에 사용할 수 있나요?
- STARK 백엔드를 기반으로 zkVM 또는 검증 가능한 연산 시스템 구축. Solidity 또는 Cairo 컨트랙트 같은 온체인 환경에 소형 STARK 검증기 임베딩. Circle STARK 구성과 circle 도메인에서의 FRI 실험. STARK 기반 증명을 위한 Poseidon2, Blake 등의 참조 회로 연구.
- stwo는 어떻게 설치하나요?
- Rust 의존성으로 stwo를 추가합니다(verifier만 사용하거나 prover feature와 함께 사용). 전체 prover를 release 모드로 빌드합니다.: cargo build --release --features prover 표준 테스트 스위트를 실행합니다.: cargo test --features prover
- stwo은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/starkware-libs/stwo
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
영지식 애플리케이션을 위한 Aleo 네트워크를 구동하는 탈중앙화 운영체제 및 노드 소프트웨어입니다.
circom 회로에 사용하는 Groth16, PLONK, FFLONK zkSNARK 증명을 생성하고 검증하는 JavaScript 및 WebAssembly 라이브러리입니다.
Lean으로 작성한 형식 검증된 Ethereum 기본 요소로, Lean 프로젝트에서 함께 사용할 사양과 증명을 제공하는 공용 라이브러리입니다.
브라우저, Node 또는 Mina Protocol용으로 증명과 검증을 수행하는 영지식 회로 및 zkApps 개발용 TypeScript 프레임워크입니다.
데이터베이스 서버 없이 비밀번호와 비밀 정보를 공유할 수 있는 셀프 호스팅 일회용 암호화 웹 앱입니다.