Thursday, October 30, 2014

Hardware Bitcoin Wallet

A minimal Bitcoin (see ) wallet for embedded devices. The
wallet is responsible for parsing transactions, prompting the user and signing
transactions. In order to do this, the wallet also stores and manages private
keys, but it does not store anything else. The wallet is not aware of the
blockchain and communicates with a BitCoin client ("the host" from the point
of view of the code here) via. a point-to-point stream-based link.

Everything in the top-level source directory is self-contained and should be
platform-independent. The only platform-dependent file there is common.h,
which should be modified if porting to other platforms. hwinterface.h
describes what platform-dependent functions need to be implemented. The
Makefile in the top-level source directory will build platform-independent
unit tests. Those unit tests can make use of the test vectors in the
test_vectors/ subdirectory.

Everything in the avr/ subdirectory is specific to the 8 bit AVR platform. The
Makefile in avr/ will produce a (non-testing) binary suitable for programming
an 8 bit AVR device with.


Tools for Building this:
OS: Ubuntu 12.04 
Compiler: AVRGCC
Programmer: AVRDude
Dev. Board: Arduino Mega or Arduino Uno.

How to Operate This Walllet:

1. You need to have desktop application.
2. Which will connected serially with virtual USB of PC with wallet and accepts commands.
3. Accordingly wallet will perform tasks.

Good Luck.