HOW TO USE A CALCULATOR TO RANDOMLY GENERATE BITCOIN KEYS
--

This guide will show you how to use a graphing calculator and a rolling die to generate private and public bitcoin keys offline. This is beneficial since you can rely on the randomness of your die throws to generate a truly unique set of keys, as well as being able to do it without using a potentially vulnerable general purpose computer.


The idea, methodology and source code are all based on a demo video [https://vimeo.com/whitslack/ti89-bitcoin-diceware] posted by Matt Whitlock. He was kind enough to help me create this guide for you and all credit goes to him.


[DISCLAIMER: Use at your own risk. This is experimental software and should be treated as such. The source code is open, but has not yet been reviewed.]


image



PARTS REQUIRED


- TI-89 Graphing Calculator
- TI Graph Link Cable
- Rolling Die (a 12-sided die is used in this example)
- A computer to transfer diceware.89z file



SOURCE CODE (written in C for the TIGCC compiler)


- Source [http://mattwhitlock.com/diceware/diceware.c]
- Compiled [http://mattwhitlock.com/diceware/diceware.89z]



HOW-TO GUIDE


Step 1. Plug your Graph Link cable into your computer and connect it to your calculator.


Step 2. Using transfer software such as TiLP [https://en.wikipedia.org/wiki/TiLP] or TI’s own software, send the compiled ‘diceware.89z’ file to the calculator.


Step 3. Start the program on the calculator as you would any other program. (You can either type “diceware()” or pick it from the VAR-LINK menu.)


Step 4. The program will ask for the number of sides that your die has. Input this and press the enter button.


Step 5. The program will now ask you to roll the die and enter the result. For a 12-sided die, you will need to roll and input the results 72 times. This may seem like a lot, but it is ensuring you have a good level of randomness (and thus security) when generating your keys.


Step 6. Once complete, you will be shown your newly generated private key and associated public address. Write this information down and you now have a securely generated offline paper wallet!



––
BY MATT WHITLOCK & CHRIS ROBINSON