Skip to content

algorandfoundation/falcon-signatures

Repository files navigation

falcon – a CLI tool to explore FALCON signatures

This repository introduces the falcon CLI tool, designed to facilitate exploration of the FALCON signature scheme.

This tool is part of the R&D work to make the Algorand blockchain quantum-safe, but it can also be used independently to explore FALCON signatures.

The tool implements the FALCON-1024 scheme, based on this implementation, using deterministic signing (which means signing a message with a given private key will always produce the same signature).

Key type Size
Public key 1,793 bytes
Private key 2,305 bytes
Signature 1,538 bytes (uncompressed)

FALCON-1024 targets NIST security level 5 — i.e., at least as hard to break as brute-forcing AES-256 (~256-bit classical security). That’s the highest NIST Post-Quantum Cryptography category for signatures.


Installation

Install via go install

If you have Go1.21+ installed, you can install directly with:

go install github.com/algorandfoundation/falcon-signatures/cmd/falcon@latest

This places the falcon binary in your Go bin directory (usually $GOBIN or $GOPATH/bin). Make sure that directory is on your PATH.

Verify installation:

falcon help

Pre-built binaries

Pre-built binaries are available on the releases page


Build from source

You need Go1.25+ to build from source:

git clone https://github.com/algorandfoundation/falcon-signatures.git
cd falcon-signatures
make build

This creates the falcon binary at ./build/falcon.

Run make help to see all available commands.


Usage

Available commands:

Command Description
falcon create Create a new keypair
falcon sign Sign a message
falcon verify Verify a signature for a message
falcon info Display information about a keypair file
falcon version Show the CLI build version
falcon help Show help
falcon algorand Algorand-specific commands

Key Management

falcon create generates keys using 24-word BIP-39 mnemonics by default for easy recovery.

  • Default: 256-bit entropy with mnemonic (recoverable)
  • High security: 384-bit entropy without mnemonic (--no-mnemonic)
  • Deterministic: Generate from custom seed (--seed)

See falcon create documentation for details.


License

This project is licensed under the AGPL.

About

Explorations of post-quantum Falcon signatures

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 5