1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-26 09:28:13 +00:00
Go to file
2014-06-20 00:19:02 +02:00
demo import v1.0.0 2014-04-29 14:38:32 +02:00
firmware adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
gen import v1.0.0 2014-04-29 14:38:32 +02:00
trezor-common@bf7b99fd28 implement ClearSession 2014-06-17 16:03:07 +02:00
trezor-crypto@e588906f81 adapt to new aes api 2014-06-09 19:00:07 +02:00
.gitignore small changes to scripts for deterministic builds 2014-06-19 02:31:07 +02:00
.gitmodules import v1.0.0 2014-04-29 14:38:32 +02:00
buttons.c import v1.0.0 2014-04-29 14:38:32 +02:00
buttons.h adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
COPYING import v1.0.0 2014-04-29 14:38:32 +02:00
Dockerfile add repo key to Dockerfile 2014-06-19 19:01:41 +02:00
firmware-docker-build.sh small changes to scripts for deterministic builds 2014-06-19 02:31:07 +02:00
firmware-fingerprint.sh small changes to scripts for deterministic builds 2014-06-19 02:31:07 +02:00
layout.c import v1.0.0 2014-04-29 14:38:32 +02:00
layout.h import v1.0.0 2014-04-29 14:38:32 +02:00
Makefile import v1.0.0 2014-04-29 14:38:32 +02:00
Makefile.include small changes to scripts for deterministic builds 2014-06-19 02:31:07 +02:00
memory_app_0.0.0.ld import v1.0.0 2014-04-29 14:38:32 +02:00
memory_app_1.0.0.ld import v1.0.0 2014-04-29 14:38:32 +02:00
memory.c adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
memory.h import v1.0.0 2014-04-29 14:38:32 +02:00
memory.ld import v1.0.0 2014-04-29 14:38:32 +02:00
oled.c adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
oled.h import v1.0.0 2014-04-29 14:38:32 +02:00
README Howto for deterministic builds 2014-06-20 00:19:02 +02:00
rng.c adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
rng.h import v1.0.0 2014-04-29 14:38:32 +02:00
serialno.c import v1.0.0 2014-04-29 14:38:32 +02:00
serialno.h import v1.0.0 2014-04-29 14:38:32 +02:00
setup.c adapt to new opencm3 include structure 2014-06-19 00:12:31 +02:00
setup.h import v1.0.0 2014-04-29 14:38:32 +02:00
util.c import v1.0.0 2014-04-29 14:38:32 +02:00
util.h import v1.0.0 2014-04-29 14:38:32 +02:00

TREZOR firmware

http://bitcointrezor.com/

How to build Trezor firmware?
=============================
1. Install Docker (docker.com)
2. git clone git@github.com:trezor/trezor-mcu.git
3. cd trezor-mcu
4. ./firmware-docker-build.sh

This generates trezor.bin in current directory and prints sha256 fingerprint on last line of build log.

How to get sha256 fingerprint of firmware signed and distributed by SatoshiLabs?
================================================================================
1. Pick proper version of firmware binary listed on https://mytrezor.com/data/firmware/releases.json
2. Download it: wget -O trezor.signed.bin.hex https://mytrezor.com/data/firmware/trezor-1.1.0.bin.hex
3. xxd -r -p trezor.signed.bin.hex trezor.signed.bin
4. ./firmware-fingerprint.sh trezor.signed.bin

Step 4 should produce the same sha256 fingerprint like your local build.

The reasoning behind "firmware-fingerprint.sh" is that signed firmware has special header holding signatures themselves,
which must be removed before calculating fingerprint.