snarkOS  by ProvableHQ

Decentralized OS for ZK applications

created 5 years ago
4,460 stars

Top 11.2% on sourcepulse

GitHubView on GitHub
Project Summary

snarkOS is a decentralized operating system designed for zero-knowledge (ZK) applications, serving as the core infrastructure for the Aleo network. It enables the verification of transactions and the storage of encrypted application states in a publicly verifiable manner. This project is targeted at developers and operators looking to build or participate in the Aleo ecosystem, offering a robust platform for privacy-preserving computation.

How It Works

snarkOS implements a peer-to-peer network architecture supporting distinct node roles: Validators for consensus, Clients for ledger maintenance and network interaction, and Provers for solving ZK puzzles. This modular design allows for specialized hardware and network configurations, optimizing performance and security for different operational needs within the Aleo network.

Quick Start & Requirements

  • Installation: Clone the repository, checkout the testnet-beta tag, run ./build_ubuntu.sh (for Ubuntu) or ensure Rust is installed, then cargo install --locked --path .. Open ports 4130/tcp and 3030/tcp.
  • Requirements: 64-bit OS (Ubuntu 22.04 LTS, macOS Ventura+, Windows 11+), substantial CPU (24-core+ for clients, 64-core+ for validators), ample RAM (128GiB+ for clients, 256GiB+ for validators), and fast NVMe SSD storage (2TB+ for clients, 4TB+ for validators). Network bandwidth of 250Mbps+ is recommended.
  • CUDA Acceleration: Optional for Provers, requires NVIDIA GPU with SM_70 or later and CUDA Toolkit.
  • Resources: Build Guide, CLI Options.

Highlighted Details

  • Supports distinct node roles: Validator, Client (Core/Outer), and Prover.
  • Offers optional CUDA acceleration for Prover nodes to leverage GPU for ZK computations.
  • Includes a local devnet script (devnet.sh) for testing and development.
  • Provides telemetry features for tracking validator participation.

Maintenance & Community

The project lists numerous contributors, indicating active development. Community interaction channels are not explicitly linked in the README.

Licensing & Compatibility

The project is licensed under a permissive license, welcoming contributions. Specific license details are not elaborated beyond a general statement.

Limitations & Caveats

The system has significant hardware requirements, particularly for validator nodes. While CUDA acceleration is supported, it requires specific NVIDIA hardware. The README mentions a testnet-beta tag, suggesting potential instability or ongoing development.

Health Check
Last commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
71
Issues (30d)
25
Star History
44 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.