Python bindings for an experimental SuperNova IVC (Rust backend)
Project description
seminova
Python bindings for an experimental SuperNova IVC (Rust backend)
seminova is a Python wrapper around an experimental Rust implementation of SuperNova-style IVC folding, with direct R1CS construction from Python.
It’s not a full zkSNARK or anything close to production, but it works, it’s fast, and it’s great to play around with folding proofs with it.
⚠️ Disclaimer
This isn’t the complete SuperNova protocol from the Microsoft paper. It’s basically a trimmed-down toolkit to play with the folding part.
- ❌ not fully sound
- ❌ not zero-knowledge
- ❌ not meant for production at all
- ✔️ great for learning and experimentation
- ✔️ fast enough for small/medium circuits
- ✔️ useful if you want to understand IVC
What Works Today
- Build R1CS matrices directly from Python (no ceremony)
- Create
PyR1CSobjects and fold them together - Basic satisfiability checks (non-zk)
- Incrementally update proofs with new folded instances
- Access commitments, digests, witness/instance bytes
Future Plans
- zero-knowledge (hiding commitments)
- point proof gadgets
- DSL for augmented circuits
- more like an actual SuperNova
- probably not a subnova anymore
Source
Repository: https://github.com/debxylen/seminova
License
MIT.
Credits
The rust backend is sourced from the MIT-licensed implementation from: https://github.com/jules/supernova
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file seminova-0.0.2.tar.gz.
File metadata
- Download URL: seminova-0.0.2.tar.gz
- Upload date:
- Size: 25.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6899ddb92f2384ac10e4154f6074f0e83e22cbf7e47a3e6d27a26624c5fa00e4
|
|
| MD5 |
a68398e2f3924e3576e84e7cc99f26ec
|
|
| BLAKE2b-256 |
5cd3924442ef9ffe0aafcf773ddb9f452a97708cd89f24beb4b42543b975e760
|
File details
Details for the file seminova-0.0.2-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: seminova-0.0.2-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 684.3 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56f3b034fefaa8a5298778c003c120ff06051f50239cc66de9706c588325bfb0
|
|
| MD5 |
18105ce9a0eb642815a618635b1ce4d2
|
|
| BLAKE2b-256 |
834070610646a7a79517e577f1f43c01e853f160c92707ac2bf25cf37b6ee824
|