Skip to content

Updated to remove STR2

Latest

Choose a tag to compare

@PartiallyFrozen PartiallyFrozen released this 15 Sep 19:32
9cfc906

DICEWRD - 24-word BIP39 seed phrase from dice rolls, on a TI-84 Plus

WHAT THIS IS
A program for the TI-84 Plus / TI-84 Plus Silver Edition that turns
100 rolls of an ordinary six-sided die into a 24-word BIP39 seed
phrase, entirely on the calculator. The maths is the same as the
dice feature of hardware wallets (entropy = SHA-256 of the rolls),
so the result can be checked with any BIP39 tool.

Not for the TI-84 Plus CE (different processor).

FILES
BIP39EN.8xv the 2048-word English wordlist (AppVar, 13 KB)
DICEWRD.8xp the program itself (assembly, 3 KB)
SEED.8xp a one-line launcher so you can run it from the PRGM menu

SPACE NEEDED
About 13 KB of archive (or RAM) for the wordlist and 7 KB of free RAM
to run. Check with 2nd MEM, 2 (Mem Mgmt/Del), 1 (All).

INSTALL WITH TI CONNECT CE

  1. Install TI Connect CE from education.ti.com and start it.
  2. Connect the calculator with the USB cable and turn it on.
    It should appear under CONNECTED CALCULATORS.
  3. Click the Calculator Explorer icon (the second icon on the left).
  4. Drag BIP39EN.8xv, DICEWRD.8xp and SEED.8xp onto the file list.
  5. In the dialog, set BIP39EN to Archive and the two programs to RAM,
    then click SEND.

(Calculator to calculator also works: 2nd LINK on both units,
RECEIVE on one, SEND the AppVar and the two programs from the other.)

USE

  1. Unplug the USB cable first.
  2. PRGM, choose SEED, ENTER. (Running DICEWRD directly gives
    ERR:SYNTAX; always use SEED.)
  3. Roll a real six-sided die 100 times. After each roll press the
    digit 1-6. DEL removes the last roll. The counter shows progress.
  4. After 100 rolls press ENTER. The 24 words appear eight per page;
    press any key for the next page. Write the words down, in order,
    exactly as shown.
  5. Press a key on the final message and a SeedQR code appears: the
    same 24 words in the SeedSigner "SeedQR" format, which Sparrow
    Wallet, SeedSigner, Specter and others can scan as a seed import.
    Scanning it loads the seed into that device, so only do it on a
    device you trust, and treat the QR exactly like the words.
  6. Press a key to return to the home screen. The program erases the
    words, the rolls and the QR from the calculator's memory as it
    exits, so make sure you have written them down before this step.

If the program shows "TEST MODE" it found a string variable Str1 with
test rolls and used those instead of asking. Delete Str1 and rerun.

AFTERWARDS - IMPORTANT
Nothing of the seed is kept on the calculator after the program exits
(except in TEST MODE, which stores the test phrase in Str2). Never
take a photo of the words or type them into a computer or phone; the
paper copy is the wallet.

SAFETY NOTES

  • Use a real die and do all 100 rolls. Never reuse a set of rolls.
  • The calculator only counts the rolls; it cannot judge whether they
    were random. Rolls you make up in your head are not.
  • Test first with rolls you don't intend to use, then do the real run.
  • Never fund a wallet from a phrase generated while the cable was
    connected.