hashsigs-solidity README

The project's README from github.com/QuipNetwork/hashsigs-solidity. As one markdown file: README.md.

WOTS+ Solidity Implementation

A Solidity implementation of the Winternitz One-Time Signature Plus (WOTS+) scheme.

Development

This project uses Foundry for development and testing.

Prerequisites

Install Foundry:

curl -L https://foundry.paradigm.xyz | bash
foundryup

Testing

Run the Foundry tests:

forge test -vv

The -vv flag increases verbosity to show more test details. Use -vvv for even more detailed output including stack traces.

Building

forge build

License

Copyright (C) 2024 quip.network

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

hashsigs-solidity (QuipNetwork/hashsigs-solidity)

evm
Searching Database…

What is this?A Solidity implementation of hash-based post-quantum signatures using the Winternitz One-Time Signature Plus (WOTS+) scheme, meant to be used inside blockchain smart contracts.
Is this a standalone app or something I plug into my own contracts?It is a Solidity smart contract library/building block you integrate into your own blockchain project, not a standalone application.
How do I build and test it?Install Foundry, then run forge build to compile the contracts and forge test to run the test suite.
What do I need installed before building this?You need the Foundry toolchain (forge) installed to build and test the contracts.
Can I reuse the same key pair to sign multiple times?No - WOTS+ is a one-time signature scheme by design, so each key pair is only cryptographically safe to use for a single signature.
What is WOTS+ exactly?WOTS+ is a hash-based one-time signature scheme considered resistant to attacks from quantum computers, unlike elliptic-curve signatures (ECDSA) used by most blockchains today.
Why would a smart contract need post-quantum signatures?Traditional signature schemes used on-chain today could eventually be broken by sufficiently powerful quantum computers, so hash-based schemes like WOTS+ offer a forward-looking defense for critical on-chain key material.
Can I get more detail when a test fails?Run forge test with -vv for more test details, or -vvv to also see full stack traces for failures.
Size
87.5 MB
Stars
11.2K
Updated
CommitAug 07
Age
1y
Commits · 90 Days