You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
slush0 a6105fbcb8
Howto for deterministic builds
10 years ago
demo
firmware
gen
trezor-common@bf7b99fd28
trezor-crypto@e588906f81
.gitignore
.gitmodules
COPYING
Dockerfile
Makefile
Makefile.include
README Howto for deterministic builds 10 years ago
buttons.c
buttons.h
firmware-docker-build.sh
firmware-fingerprint.sh
layout.c
layout.h
memory.c
memory.h
memory.ld
memory_app_0.0.0.ld
memory_app_1.0.0.ld
oled.c
oled.h
rng.c
rng.h
serialno.c
serialno.h
setup.c
setup.h
util.c
util.h

README

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.