A Rust implementation of WOTS+ (Winternitz One-Time Signature) scheme, with Solana program support.
To build the library:
cargo buildFor release build:
cargo build --releaseTo build the Solana program:
cd solana
cargo build-sbfRun all tests:
cargo testRun specific test vectors:
cargo test test_wotsplus_keccak256_vectorsRun Solana program tests:
cd solana
cargo test-sbfFor test output and backtrace:
RUST_BACKTRACE=1 cargo test-sbf -- --nocapture 2>&1
Show compute units only:
RUST_BACKTRACE=1 cargo test-sbf -- --nocapture 2>&1 | grep "compute units:"
- Rust 1.70 or later
- Solana CLI tools (for Solana program development): https://solana.com/docs/intro/installation
NOTE: if on Mac, do not use brew to install rust and instead use https://www.rust-lang.org/tools/install
.
├── src/ # Core WOTS+ implementation
├── solana/ # Solana program implementation
└── tests/ # Test vectors and unit tests
AGPL-3.0, see COPYING