FuguSeed
FuguSeed makes BIP39 seed words with three dice on paper, and turns them into a SeedQR. Seed words that a program generates depend on the random source of that program. FuguSeed contributes no entropy: the dice give it, and the paper holds the words.
fuguseed-words builds and checks a printed word sheet.
On that sheet, one throw of a d8 and two d16 selects one of the 2048
words, with no arithmetic. fuguseed-qr turns the 12 words
into a Standard SeedQR, zone by zone, in a terminal, so a person can
draw it on paper.
The two programs have two trust levels.
fuguseed-words sees no seed word, so it can run on any
computer. It builds on the Fugu
library. fuguseed-qr sees the words, so it must run on an
air-gapped computer only. It is one packed file on core Perl v5.34,
with no dependency.
FuguSeed is a companion of FuguPass: it makes the master that FuguPass reads.
Installation
Install Fugu and FuguSeed from CPAN with cpanm:
cpanm --notest Fugu App::FuguSeed
A release also holds the packed fuguseed-qr file, and
the signed SHA256 manifest of the release names it. Copy that one file
to the air-gapped computer. Compare its digest with the manifest
before the first run, as fuguseed-qr(1) states.
Documentation
- The manuals: the offline procedure, the two commands, and every module
- The source repository and the specification
- The releases