Skip to content

gitctrlx/stark-from-scratch

STARK from Scratch

Educational STARK proof system implementation in Go

A minimal, pedagogical implementation of STARK (Scalable Transparent ARgument of Knowledge) proving Fibonacci computation correctness.

Features

  • Pure Go — No external dependencies
  • Transparent — No trusted setup required
  • Educational — Clear code structure with comprehensive documentation

Quick Start

go run .

How It Works

  1. Trace — Record Fibonacci computation steps
  2. Extend — Interpolate to polynomials, evaluate on larger domain
  3. Commit — Build Merkle tree over extended trace
  4. Constrain — Encode Fibonacci rule as polynomial constraint
  5. Prove — Generate quotient polynomial via division
  6. Verify — Check Merkle proofs + constraint satisfaction

See OVERVIEW.md for detailed tutorial.

Limitations

Educational implementation. Not production-ready:

  • No zero-knowledge properties
  • Simplified FRI protocol
  • Educational hash function
  • Single constraint system

License

BSD 3-Clause — See LICENSE

References

About

A simple STARK implementation in Go.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors