CLI tool to sign and verify files with the post-quantum signature scheme FALCON, a round 3 finalist for digital signature algorithms in NIST's post-quantum cryptography standardization competition
With cargo
cargo install --git https://github.com/chiefbiiko/falcon-cli#0.1.2
The tool will come available on your command line as falcon
To install and compile successfully make sure you are at least using rustc 1.55.0
Or curl
release_url=https://github.com/chiefbiiko/falcon-cli/releases/download/v0.1.2/falcon-cli-v0.1.2-x86_64-unknown-linux-gnu.gz
curl -fsSL $release_url | gunzip > /usr/local/bin/falcon
chmod u+x /usr/local/bin/falcon
Find current prebuilds for Linux, and macOS , Windows on the releases page
If not havin' generated a key pair yet (default location ~/.falcon-cli
) do it now
falcon --keygen
A test file to roundtrip
echo "msg 2 sign safely post quantum" > ./file.txt
Signin' and openin' - here explcititely referencin' secret and public key with the -s
and -p
options respectively
falcon -S -o ./signed.txt -s ~/.falcon-cli/secret.key ./file.txt
falcon -O -o ./opened.txt -p ~/.falcon-cli/public.key ./signed.txt
Outcome
cmp ./opened.txt ./file.txt
cat ./opened.txt ./file.txt
# msg 2 sign safely post quantum
# msg 2 sign safely post quantum
falcon-cli 0.1.2
chiefbiiko <[email protected]>
Sign and verify files with the post-quantum signature scheme FALCON
USAGE:
falcon [FLAGS] [OPTIONS] [FILE]
ARGS:
<FILE> Input file
FLAGS:
-F, --force Overwrites possibly existing key files
-h, --help Print help information
-K, --keygen Generates a fresh FALCON keypair
-O, --open Verifies a file
-S, --sign Signs a file
-V, --version Print version information
OPTIONS:
-d <degree> 512 or 1024; default 1024
-f <file> Input file
-k <public-key> Base64 public key
-o <output> Output file
-p <public-key-file> Public key file; default: ~/.falcon-cli/public.key
-s <secret-key-file> Secret key file; default: ~/.falcon-cli/secret.key
If no input/output file(s) are given stdin/stdout are used for IO