Skip to content

andgohq/bowser-bitcoin-hardware-wallet

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BOWSER, DIY BITCOIN HARDWARE WALLET V1

Join our telegram support/chat.

Building your own hardware wallet is a bit like building a lightsaber, only really necessary if you want to be a Jedi.

Now building hardware wallets is easy with the help of uBitcoin an Arduino library created by Stepan Snigirev.

Building hardware wallets not only gives greater autonomy/liberty, it is an excellent excuse to get a deeper understanding of how bitcoin keys, seeds and signing works.

For use with Electrum Wallet 3.3.8 https://download.electrum.org/3.3.8/

Disclaimer/risk-profile

Project is out of beta and ready for use, but use at your own risk. Its best to think of Bowser wallet like a cold storage paper wallet that can sign transactions. Some security is achieved by the passphrase being stored/verified as a hash, however the mnemonic is stored in an accessible location on the device and the passphrase could be brute forced, so the wallet details are only pseudo-secure on the device. The risk/use profile of Bowser is storing in a secure location as you would with a paper wallet, the benefit of Bowser is it gives the option to sign transactions via PSBTs on an offline, dedicated device.

Latest version

https://github.com/arcbtc/bowser-bitcoin-hardware-wallet/releases/tag/v1

Tutorial

https://www.youtube.com/watch?v=DG1zrlAVdys

SD COMMANDS

Commands to enter into bowser.txt on the SD card.

Wipe device completely, setup new wallet:
HARD RESET

Restore from a seed backup:
RESTORE husband behind shallow promote....

Sign an Electrum transaction:
SIGN 45505446ff00020000000001016cb....

Morse-code cheat sheet

Installing Arduino

Install Aruino IDE https://www.arduino.cc/en/Guide/HomePage

Install ESP32 Boards https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

Libraries Used

  • uBitcoin (Download library from github and "Add Zip Library" in Arduino Library Manager...Tested with v1.0.2)
  • M5Stack (Install from "Library Manager" in Arduino)
  • lvgl (Install from "Library Manager" in Arduino, search as "lvgl", appears in the list as "lv_arduino")

Materials

  • M5Stack (grey one is better)
  • SD card (not sure if size is an issue for larger SD, 16GB works fine)

About

Hardware wallet with M5Stack Core2

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 99.7%
  • C++ 0.3%