mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-26 09:28:13 +00:00
62e07befeb
Pin GPG key of ARM GCC repo by full fingerprint in Docker build |
||
---|---|---|
demo | ||
firmware | ||
gen | ||
trezor-common@bf7b99fd28 | ||
trezor-crypto@e588906f81 | ||
.gitignore | ||
.gitmodules | ||
buttons.c | ||
buttons.h | ||
COPYING | ||
Dockerfile | ||
firmware-docker-build.sh | ||
firmware-fingerprint.sh | ||
layout.c | ||
layout.h | ||
Makefile | ||
Makefile.include | ||
memory_app_0.0.0.ld | ||
memory_app_1.0.0.ld | ||
memory.c | ||
memory.h | ||
memory.ld | ||
oled.c | ||
oled.h | ||
README | ||
rng.c | ||
rng.h | ||
serialno.c | ||
serialno.h | ||
setup.c | ||
setup.h | ||
util.c | ||
util.h |
TREZOR firmware http://bitcointrezor.com/ How to build Trezor firmware? ============================= 1. Install Docker (docker.com) 2. git clone https://github.com/trezor/trezor-mcu.git 3. cd trezor-mcu 4. sudo ./firmware-docker-build.sh (sudo may be needed on some distros because of Docker) 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.