Repolode
aleo-labs-protocol

aleo-labs-protocol/snarkOS

영지식 애플리케이션을 위한 Aleo 네트워크를 구동하는 탈중앙화 운영체제 및 노드 소프트웨어입니다.

스타
4,530
포크
2,697
열린 이슈
131
마지막 커밋
어제

어떤 프로젝트인가요?

snarkOS는 영지식 애플리케이션을 위한 블록체인인 Aleo 네트워크의 노드 구현체입니다. 트랜잭션을 검증하고 암호화된 애플리케이션 상태를 공개적으로 검증 가능한 방식으로 저장합니다. 소프트웨어는 세 가지 노드 역할로 실행됩니다. AleoBFT 합의에 참여하는 validator, 원장 사본을 보관하고 트랜잭션과 솔루션을 전달하는 client, 원장을 유지하지 않고 Aleo 퍼즐을 푸는 prover입니다.

이 프로젝트는 Rust로 작성되었으며 소스에서 cargo로 설치합니다. 노드 실행, Aleo 계정 생성 및 서명을 위한 snarkos CLI와 클라이언트를 위한 3030 포트 REST 서버를 제공합니다. Validator는 텔레메트리와 Prometheus 메트릭을 노출할 수 있으며, 스크립트로 로컬 devnet을 실행해 한 머신에서 여러 노드를 테스트할 수 있습니다.

노드를 운영하려면 상당한 하드웨어가 필요합니다. Validator의 권장 사양은 코어 64개 이상, RAM 256 GiB, NVMe 스토리지 수 테라바이트입니다. 저장소에는 RocksDB 체크포인트 기반의 로컬 백업 도구와 이전 스토리지 형식에서 마이그레이션하는 문서도 포함되어 있습니다.

핵심 기능

  • 01Aleo 네트워크에서 validator, client, prover 노드 역할을 실행합니다.
  • 02노드 실행과 Aleo 계정 관리를 위한 snarkos CLI를 제공합니다.
  • 03클라이언트용 REST 서버와 validator 텔레메트리 엔드포인트를 노출합니다.
  • 04한 머신에서 여러 노드를 실행할 수 있는 로컬 devnet 스크립트를 포함합니다.
  • 05하드 링크를 사용해 공간을 절약하는 RocksDB 기반 로컬 백업 기능을 제공합니다.

활용 사례

  • Aleo 네트워크에서 validator 또는 client 노드를 운영합니다.
  • prover 노드로 증명 처리 능력을 제공합니다.
  • 로컬 devnet에서 여러 노드의 Aleo 동작을 테스트합니다.
  • 영지식 블록체인의 합의 및 네트워킹 코드를 살펴봅니다.

빠른 시작

  1. 1

    Rust를 설치합니다(README의 Rust 설치 링크 참조).

  2. 2

    저장소의 mainnet 브랜치를 클론합니다.

    git clone --branch mainnet --single-branch https://github.com/ProvableHQ/snarkOS.git
  3. 3

    클론한 디렉터리에서 snarkOS를 설치합니다.

    cargo install --locked --path .
  4. 4

    클라이언트 노드를 시작합니다(설치 후에는 어느 디렉터리에서든 실행 가능).

    snarkos start --client --nodisplay --node 0.0.0.0:4130 --peers "core_client_ip_1:4130,core_client_ip_2:4130,core_client_ip3:4130,outer_client_ip_1:4130,..." --verbosity 1 --rest 0.0.0.0:3030

사용 전 알아둘 점

  • 클라이언트 플랫폼은 Ubuntu, macOS, Windows만 지원하며, 검증자에는 Ubuntu 22.04가 필요합니다.
  • 노드를 실행하려면 매우 높은 사양의 하드웨어가 필요합니다. 클라이언트도 예를 들어 128GiB 이상의 RAM과 수 테라바이트의 저장 공간이 필요합니다.
  • CUDA prover 기능은 실험 단계이며 호환성을 깨는 변경이 있을 수 있습니다.

토픽

자주 묻는 질문

snarkOS은(는) 무엇인가요?
영지식 애플리케이션을 위한 Aleo 네트워크를 구동하는 탈중앙화 운영체제 및 노드 소프트웨어입니다. snarkOS는 영지식 애플리케이션을 위한 블록체인인 Aleo 네트워크의 노드 구현체입니다. 트랜잭션을 검증하고 암호화된 애플리케이션 상태를 공개적으로 검증 가능한 방식으로 저장합니다. 소프트웨어는 세 가지 노드 역할로 실행됩니다. AleoBFT 합의에 참여하는 validator, 원장 사본을 보관하고 트랜잭션과 솔루션을 전달하는 client, 원장을 유지하지 않고 Aleo 퍼즐을 푸는 prover입니다.
snarkOS은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
snarkOS은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
snarkOS은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. snarkOS의 마지막 커밋은 2026년 11월 6일입니다.
snarkOS은(는) 어디에 사용할 수 있나요?
Aleo 네트워크에서 validator 또는 client 노드를 운영합니다. prover 노드로 증명 처리 능력을 제공합니다. 로컬 devnet에서 여러 노드의 Aleo 동작을 테스트합니다. 영지식 블록체인의 합의 및 네트워킹 코드를 살펴봅니다.
snarkOS는 어떻게 설치하나요?
Rust를 설치합니다(README의 Rust 설치 링크 참조). 저장소의 mainnet 브랜치를 클론합니다.: git clone --branch mainnet --single-branch https://github.com/ProvableHQ/snarkOS.git 클론한 디렉터리에서 snarkOS를 설치합니다.: cargo install --locked --path . 클라이언트 노드를 시작합니다(설치 후에는 어느 디렉터리에서든 실행 가능).: snarkos start --client --nodisplay --node 0.0.0.0:4130 --peers "core_client_ip_1:4130,core_client_ip_2:4130,core_client_ip3:4130,outer_client_ip_1:4130,..." --verbosity 1 --rest 0.0.0.0:3030
snarkOS은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/aleo-labs-protocol/snarkOS

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트

circom 회로에 사용하는 Groth16, PLONK, FFLONK zkSNARK 증명을 생성하고 검증하는 JavaScript 및 WebAssembly 라이브러리입니다.

보안#zksnark#zero-knowledge#cryptography
2천+2 이번 주489JavaScriptGPL-3.0업데이트 지난달