primordialomegazero/libsodium-schnorr — explained in plain English
Analysis updated 2026-05-18
Generate and verify Schnorr signatures on the secp256k1 curve used by Bitcoin.
Sign and verify using the ed25519 curve as an alternative to secp256k1.
Experiment with the project's fractal signature tree and self-healing recovery feature.
| primordialomegazero/libsodium-schnorr | ac000/find-flv | acc4github/kdenlive-omnifade | |
|---|---|---|---|
| Stars | 0 | — | 0 |
| Language | C | C | C |
| Last pushed | — | 2013-04-05 | — |
| Maintenance | — | Dormant | — |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
No independent security audit yet, the custom hash function is not a standardized algorithm.
libsodium-schnorr is a C library implementing the Schnorr signature scheme, a well known way of proving you hold a secret key by producing a short signature, based on the secp256k1 curve used by Bitcoin, with added support for the ed25519 curve. On top of standard Schnorr signing and verifying, the project adds its own additional constructions: a custom hash function based on the golden ratio, and a scheme the author calls fractal signature trees, made of recursive layers of grouped signatures with a self healing feature meant to detect and repair broken parts of the tree. The core signing and verification functions are written in C and depend on OpenSSL for the secp256k1 elliptic curve math, with libsodium as an optional dependency if you want ed25519 support. According to the README, the project reaches roughly 450 signatures per second on the author's own Ryzen 5 test machine, and the author reports test videos covering an overall test suite, a deeper look at the fractal tree feature, and a stress test that reached 300,000 signatures before timing out at the fifteen minute mark. Several papers referencing this work are listed as submitted, not yet published, to a cryptography preprint archive. The README itself is upfront about its limits: single threaded signing speed is capped at a few hundred per second, the million signature stress test has not been completed, ed25519 support currently depends on an external libsodium install rather than a built in implementation, the custom golden ratio hash function is not a recognized or standardized algorithm and is suggested only for non critical uses, deep fractal trees can use a lot of memory, and the mathematical claims have not yet been checked by an outside security audit. To try it, you clone the repository and compile the core Schnorr code directly with gcc, linking against OpenSSL. The project is released under the MIT license.
libsodium-schnorr is a C library for Schnorr signatures on secp256k1 and ed25519, with experimental extensions like a custom hash and recursive fractal signature trees.
Mainly C. The stack also includes C, OpenSSL, libsodium.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.