Skip to content
A minimal Bitcoin wallet intended for embedded devices
C C++ Makefile MATLAB Assembly Protocol Buffer Objective-C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
avr
gen_twiddle
lpc11uxx
pic32
test_vectors
GPL
LIBFIXMATH_LICENCE
LICENCE
Makefile
PROTOCOL
README
aes.c
aes.h
baseconv.c
baseconv.h
bignum256.c
bignum256.h
bip32.c
bip32.h
common.h
ecdsa.c
ecdsa.h
endian.c
endian.h
fft.c
fft.h
fix16.c
fix16.h
hash.c
hash.h
hmac_drbg.c
hmac_drbg.h
hmac_sha512.c
hmac_sha512.h
hwinterface.h
int64.h
messages.pb.c
messages.pb.h
messages.proto
pb.h
pb_decode.c
pb_decode.h
pb_encode.c
pb_encode.h
pbkdf2.c
pbkdf2.h
prandom.c
prandom.h
ripemd160.c
ripemd160.h
sha256.c
sha256.h
statistics.c
statistics.h
storage_common.h
stream_comm.c
stream_comm.h
test_helpers.c
test_helpers.h
transaction.c
transaction.h
wallet.c
wallet.h
xex.c
xex.h

README

Hardware Bitcoin Wallet
by someone42, unless stated otherwise

A minimal Bitcoin (see http://bitcoin.org/ ) 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.

Everything in the lpc11uxx/ subdirectory is specific to the LPC11Uxx series of
microcontrollers. The lpc11uxx/ subdirectory also contains a Makefile which
will produce a non-testing binary.
You can’t perform that action at this time.