1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-15 10:58:09 +00:00
Commit Graph

306 Commits

Author SHA1 Message Date
matejcik
389f1418ed
protobuf: drop Optional markers (relying on implicit optional)
and add a conditional import for List
2018-05-24 15:41:07 +02:00
matejcik
efa0f60493
protobuf: use trezor-common submodule to generate messages 2018-05-24 15:41:07 +02:00
matejcik
fb318fb69b
tools: update build_protobuf and pb2py to the refactored versions
from python-trezor, with appropriate modifications for trezor-core

The end goal is to have these files identical, ideally coming from
trezor-common. This is most of the way there, only thing remaining
is handling of target paths.
2018-05-24 15:41:07 +02:00
Pavol Rusnak
ffc2bf30b8
src: remove CoinType usage, usage internal CoinInfo instead 2018-05-24 15:18:05 +02:00
Pavol Rusnak
a1204d8d7d
src: cleanup CoinType usage, don't return coins in Features 2018-05-22 18:52:26 +02:00
Pavol Rusnak
13ffe75a48
tools: chmod +x build_protobuf 2018-02-27 14:26:01 +01:00
Jan Pochyla
048e0706b3 tools/pb2py: fix default list value 2018-02-27 00:12:44 +01:00
Jan Pochyla
a4477b8bef tools/build_protobuf: fix path to trezor_common 2018-02-27 00:12:44 +01:00
Pavol Rusnak
ee242ea416
src.trezor.messages: fix and regenerate 2018-02-26 17:20:48 +01:00
Jan Pochyla
b9c111f6ae tools: add init method to messages 2018-02-26 16:13:00 +01:00
Tomas Susanka
d23a236616 tools: build mocks uses sorted 2018-02-26 16:13:00 +01:00
Pavol Rusnak
c53b0afd5b
tools: fix bug in vheader processing in binctl 2018-02-24 21:48:58 +01:00
Jan Pochyla
d0c742e884 src/apps/common/coins: regenerate 2018-02-09 11:37:13 +01:00
Pavol Rusnak
77ea31aa8a
embed/extmod/modtrezorui: revert NO_HINT change 2018-02-08 15:04:33 +01:00
Pavol Rusnak
329b7d1488
embed/extmod/modtrezorui: regenerate fonts with NO_HINTING, update rendering to subpixel precision 2018-02-07 19:33:39 +01:00
Pavol Rusnak
1c5beb1c12
embed/bootloader: add information about firmware (version, vendor, etc.) to Features message 2018-02-06 17:06:43 +01:00
Pavol Rusnak
36d034d83a
tools: show fingerprint for vendorheaders too 2018-01-30 16:38:19 +01:00
Pavol Rusnak
b79ea10434
tools: update protobuf (sync with python-trezor) 2018-01-30 15:11:09 +01:00
Pavol Rusnak
f0152902fc
tools: drop netifaces requirement from keyctl-proxy 2018-01-29 15:49:55 +01:00
Pavol Rusnak
132660c378
tools: loop on error in keyctl-proxy 2018-01-29 15:29:54 +01:00
Pavol Rusnak
81ff60c3e1
tools: drop combine_sign; rework keyctl into 3 tools 2018-01-29 15:07:47 +01:00
Pavol Rusnak
5ede6864d5
tools: refactor index in keyctl 2018-01-29 09:10:19 +01:00
Pavol Rusnak
03943c960b
tools: small refactor in keyctl 2018-01-29 08:09:02 +01:00
Pavol Rusnak
11245a82ea
tools: fix bug in keyctl introduced by last commit 2018-01-28 18:24:56 +01:00
Pavol Rusnak
706ddda1a7
tools: update keyctl to work with already signed binaries 2018-01-28 17:47:16 +01:00
Pavol Rusnak
5e164ebaf1
tools: add getkey command to keyctl to retrieve the public key 2018-01-28 15:02:29 +01:00
Pavol Rusnak
7bbcd99d53
tools: add vtrust parsing to binctl 2018-01-28 11:24:50 +01:00
Pavol Rusnak
c0220192d4
tools: fix binctl script 2018-01-26 15:51:19 +01:00
Pavol Rusnak
a31c118d8e
protobuf: update build_protobuf and pb2py from python-trezor, regenerate messages 2018-01-12 13:11:22 +01:00
Pavol Rusnak
2317aaedb9
tools: update how vtrust is being passed to build_vendorheader 2018-01-10 20:47:07 +01:00
Pavol Rusnak
f0cd76de47
tools.codegen: remove unused import from gen_cert_bundle.py 2018-01-08 23:57:16 +01:00
Pavol Rusnak
30b0863725
tools.codegen: use certifi in gen_cert_bundle.py 2018-01-08 23:56:08 +01:00
Pavol Rusnak
f806488536
tools: fix computation of header fingerprint in binctl tool 2018-01-08 22:40:00 +01:00
Pavol Rusnak
6ac59f426f
tools.codegen: include commithash an repo url in gen_cert_bundle.py 2018-01-08 00:56:39 +01:00
Pavol Rusnak
10344dd864
tools.codegen: print nice stats at the end 2018-01-07 22:46:54 +01:00
Pavol Rusnak
dcb32d91f7
tools.codegen: rework gen_cert_bundle to use certs from Mozilla 2018-01-07 22:43:14 +01:00
Pavol Rusnak
8dd5edb4a1
tools: add codegen/gen_cert_bundle.py 2018-01-02 20:59:09 +01:00
Pavol Rusnak
4b54bfbbf2
modtrezorui: change loader size to 120x120 2017-12-16 23:44:30 +01:00
Pavol Rusnak
125ab8471c
trezorhal: store image fingerprint in the image_header structure 2017-12-15 19:22:59 +01:00
Pavol Rusnak
66eef86107
tools: more verbose gen_font script 2017-12-15 18:58:37 +01:00
Pavol Rusnak
965aa73b63
trezorhal: introduce fix_version in image header (version of last critical bugfix) 2017-12-14 21:29:13 +01:00
Pavol Rusnak
44196be481
binctl: show fingerprint for BinImage (hash of header - signature) 2017-12-14 14:19:02 +01:00
Tomas Susanka
aa29667059 common: coins updated 2017-11-23 16:30:11 +01:00
Pavol Rusnak
3636a5f1b1
bootloader/vendorheader: vtrust is bitmap not scalar 2017-11-06 16:31:09 +01:00
Pavol Rusnak
01356bad72
keyctl: show digest and path 2017-10-29 23:30:56 +01:00
Pavol Rusnak
89cc35b195
trezorhal: fix hash offset in check_image_contents 2017-10-26 18:53:20 +02:00
Pavol Rusnak
9e82a4d348
bootloader, firmware: introduce chunk hashes in the image header 2017-10-26 14:25:10 +02:00
Pavol Rusnak
3c974095aa
trezorhal: increase image header size from 512 to 1024 bytes 2017-10-26 02:11:40 +02:00
Pavol Rusnak
bdbbf0e5e8
tools: add firmware signature check (against its vendor header) 2017-10-26 00:09:17 +02:00
Pavol Rusnak
46fdb8bcb4
tools: use combine_sign to compute signatures, binctl just for adding to binary 2017-10-25 23:03:34 +02:00
Pavol Rusnak
57f2eee5bf
tools: split computation of signatures to keyctl, remove from binctl 2017-10-25 22:52:11 +02:00
Pavol Rusnak
34f363f903
tools: add optional output parameter to toi2png 2017-10-24 17:50:19 +02:00
Pavol Rusnak
7653eb699d
embed: use 4bpp fonts again 2017-10-11 23:05:08 +02:00
Pavol Rusnak
78f57d083c
add vendor trust to vendorheader 2017-10-05 17:31:39 +02:00
Pavol Rusnak
b962ace27d
build: add production keys 2017-10-04 15:55:59 +02:00
Pavol Rusnak
e6704a3f35
tools: add get_sign_keys 2017-10-04 14:27:13 +02:00
Pavol Rusnak
06a4bfbed8
tools: add trezor support to binctl signing 2017-10-04 09:59:04 +02:00
Pavol Rusnak
29c3afe6c4
tools: move ed25519raw, ed25519cosi to python-trezor 2017-10-04 00:39:43 +02:00
Pavol Rusnak
5884d1c03f
tools: update ed25519{cosi,raw}.py to work in both py2 and py3 2017-10-03 23:48:12 +02:00
Pavol Rusnak
2139e8b02d
fonts: use 2 BPP instead of 4 for fonts 2017-10-01 20:47:35 +02:00
Pavol Rusnak
da8cc37a54
tools: move code generating tools to tools/codegen 2017-10-01 19:52:43 +02:00
Pavol Rusnak
98bdd99b97
tools: simplify ed25519cosi 2017-10-01 19:42:29 +02:00
Pavol Rusnak
8ddcd74080
build: sign all stuff using ed25519 cosi (2 out of 3) 2017-10-01 17:56:19 +02:00
Pavol Rusnak
ca649eb8f0
tools: remove ed25519 dependency, prepare for ed25519cosi signing 2017-10-01 17:56:19 +02:00
Pavol Rusnak
4f11f46d07
tools: fix small issues with keytool 2017-09-30 10:36:37 +02:00
Pavol Rusnak
2bc37a10fe
use different set of keys for boardloader/bootloader/vendorheader 2017-09-29 17:31:59 +02:00
Pavol Rusnak
ef5f1326dc
build: use python3 everywhere 2017-09-25 16:18:31 +02:00
Pavol Rusnak
5b84db0f7f
tools: fix flake8 warnings 2017-09-05 23:16:01 +02:00
Pavol Rusnak
ed581a5b36
tools: fix whitespace in png2toi .py export 2017-09-04 23:18:43 +02:00
Pavol Rusnak
76658914fe
tools: png2toi - generate python output 2017-09-04 21:29:00 +02:00
Jan Pochyla
71ef4e4b3a tools/binctl: python2 compatibility 2017-08-07 11:59:45 +02:00
Pavol Rusnak
fe5b5c1940
tests: update to pytest, regenerate protobuf 2017-07-28 18:58:31 +02:00
Jan Pochyla
bab1303b1b tools/build_mocks: adapt to micropython -> embed rename 2017-07-28 16:36:14 +02:00
Pavol Rusnak
adafd9bc51
tools: fix png2toi c export 2017-06-21 18:18:59 +02:00
Jan Pochyla
181a2ad8c9 mocks: add typing module 2017-06-14 19:27:02 +02:00
Jan Pochyla
e29601e838 tools/build_mocks: support classes 2017-06-14 17:39:32 +02:00
Jan Pochyla
596a4227ad tools: autopep8 2017-06-14 12:22:41 +02:00
Pavol Rusnak
f93b8a08bc
res_collect: fix if resources.py does not exist 2017-06-13 20:15:47 +02:00
Pavol Rusnak
73b2ea6c85
travis: add make style (using flake8) 2017-06-13 19:35:34 +02:00
Pavol Rusnak
845a3a7e0d
tests: add partial pylint support 2017-06-07 19:06:26 +02:00
Jan Pochyla
63e6e85a7c res_collect: noop if no changes detected 2017-06-07 14:23:18 +02:00
Pavol Rusnak
cd7ee79c67
build: add combine and flash_combine make targets 2017-05-30 17:49:17 +02:00
Pavol Rusnak
e3b2001c89
rebuild coins 2017-05-12 22:55:47 +02:00
Pavol Rusnak
92b2deb932
coins: add cointype.segwit 2017-04-26 15:46:08 +02:00
Pavol Rusnak
07693277a4
apps.common: update coins.py + its generator to add new fields 2017-04-24 15:59:30 +02:00
Pavol Rusnak
0c060b6d4a
rename loader to bootloader 2017-04-10 19:24:21 +02:00
Pavol Rusnak
fd1718f8b6
mocks: update build script, refresh 2017-04-08 18:43:26 +02:00
Pavol Rusnak
62ad4d6a39
tools: pass sigmask and seckey as parameter to binctl 2017-04-08 18:24:46 +02:00
Pavol Rusnak
17ff61459d
tools: add pretty format to sigmask field 2017-04-06 19:02:09 +02:00
Pavol Rusnak
364bcedb04
tools: small formatting change to binctl 2017-04-06 16:58:16 +02:00
Pavol Rusnak
35e404bd38
tools: add fake signing to binctl, add make sign target 2017-04-05 19:33:50 +02:00
Pavol Rusnak
f92e8b6e4b
tools: add header to ed25519raw.py, fix whitespace in keytool 2017-04-02 23:04:08 +02:00
Jochen Hoenicke
99915f1a63 Added tool to test cooperative signing 2017-04-02 17:27:36 +02:00
Pavol Rusnak
87b7d0649b
boot: use cosi to compute aggregated key and use it 2017-04-02 02:55:51 +02:00
Pavol Rusnak
1eff07f84d
build: don't convert from png in build_vendorheader, remove vendorheader.bin from vcs 2017-04-01 23:16:25 +02:00
Pavol Rusnak
6187a8a0c1
build: refactor build_vendorheader 2017-04-01 18:28:10 +02:00
Jochen Hoenicke
e0fd890661 Implemented vendor header.
Header is generated with

    ./tools/build_vendorheader 'key1,key2,key3' 2 1.1 SatoshiLabs assets/satoshilabs.png micropython/firmware/vendorheader.bin

where

- keyN is a 64 character hex string encoding the public key
- 2 encodes 2/3 key scheme
- 1.1 is the version number (major, minor)
- SatoshiLabs is the vendor name
- satoshilabs.png is the vendor image

Updated the firmware compilation that it adds vendor header and updated loader
that it handles vendor header to be present.
2017-04-01 17:01:59 +02:00
Pavol Rusnak
435e96e1b3
build: refactor binctl and firmware/loader image stuff 2017-04-01 02:53:52 +02:00
Pavol Rusnak
b5ff140256
trezorhal: fix alignment in headers to 512 bytes 2017-03-31 23:54:59 +02:00
Pavol Rusnak
dd69929ce1
tools: rename firmwarectl to binctl, minor reformat 2017-03-30 22:58:00 +02:00
Pavol Rusnak
7da63a36e2
tools: don't convert sigidx back and forth in firmwarectl 2017-03-30 15:11:34 +02:00
Pavol Rusnak
e313234fe3
bootloader/loader: use blake2s instead of sha256 for digests 2017-03-23 15:54:34 +01:00
Pavol Rusnak
630ce53c73
tools: fix firmwarectl to reflect loader rename 2017-03-20 16:03:02 +01:00
Pavol Rusnak
f443407fae
modtrezorui: add extern to includes 2017-02-22 14:26:30 +01:00
Pavol Rusnak
89ec08eec0
bootloader: allow stage 1 to rewrite whole flash 2017-02-17 17:54:40 +01:00
Pavol Rusnak
d8efa32091
bootloader: more wip 2017-02-17 15:49:43 +01:00
Pavol Rusnak
302f0e614a
tools: implement VendorHeader and FirmwareImage classes in firmwarectl 2017-02-09 18:14:10 +01:00
Pavol Rusnak
7d4414000e
tools: join check_bootloader and check_firmware into firmwarectl tool 2017-02-09 16:26:15 +01:00
Pavol Rusnak
2d7c6b0c34
bootloader: cleanup, more documentation, added scripts for checking 2017-02-08 19:43:47 +01:00
slush0
d6ae782dfc pb2py moved to trezor-common 2016-12-04 19:24:48 +01:00
slush0
0ea856589f Added non-micropython compatibility.
Optional generation of wiretype index file.
2016-12-04 19:12:01 +01:00
Pavol Rusnak
373487af1f
tools: update coins-gen.py 2016-11-11 18:11:37 +01:00
Pavol Rusnak
105b9c8167
tools: simplify coins-gen.py 2016-11-09 14:52:43 +01:00
Pavol Rusnak
3015045df6
apps.common.coins: update to return CoinType, not dict (also modify generator) 2016-11-09 14:46:59 +01:00
Pavol Rusnak
c49c4ea29e
apps.common.coins: make coins definitions more readable + adapt generator 2016-11-06 15:50:39 +01:00
Jan Pochyla
783fddf749 messages: do not use const() 2016-11-02 01:03:16 +01:00
Jan Pochyla
20b612f8c1 pb2py: use new protobuf message format 2016-10-26 17:34:07 +02:00
Pavol Rusnak
6e658ff2f1
trezor.messages: regenerate classes 2016-10-24 15:45:05 +02:00
Pavol Rusnak
e62e8dbe6f
tools: move coins-gen tool to /tools 2016-10-20 17:07:56 +02:00
Pavol Rusnak
fffe930d8c
modtrezorui: rename fonts 2016-10-18 15:05:55 +02:00
Jan Pochyla
2d7d241a8d res_collect: fix for resources in subdirectories 2016-10-12 13:12:27 +02:00
Pavol Rusnak
f8bf6d8cff
tools: added toi2png tool 2016-10-10 13:38:33 +02:00
Pavol Rusnak
90836621f5
tools: skip hidden files in res_collect 2016-10-06 17:54:57 +02:00
chren
a47b6ee7bb design changes in bootloader mockups 2016-10-05 19:36:30 +02:00
chren
5cbb1ff892 minor design changes in ui-mockups of bootloader 2016-10-05 15:44:34 +02:00
Pavol Rusnak
a1b75b879d
remove the need for pb2 subdir for pb2py generator 2016-10-03 18:16:15 +02:00
Pavol Rusnak
031550a5ed
regenerate mocks 2016-10-03 15:48:09 +02:00
slush0
f5d2007297 Use const() for protobuf definitions 2016-10-03 15:41:15 +02:00
Pavol Rusnak
3fe688e9b4
add size reporting to res_collect tool 2016-10-03 11:56:24 +02:00
slush0
1d7d408bc8 Updating resources on build automatically 2016-09-29 13:35:39 +02:00
Jan Pochyla
f2b509b591 use micropython.const() in trezor.messages 2016-09-29 12:37:40 +02:00
Jan Pochyla
fb7b85e479 move protobuf to a single module 2016-09-28 23:17:11 +02:00
slush0
d87e4e683d
Changed placeholder for automatic generated mocks 2016-09-27 17:26:17 +02:00
slush0
44479b38d0
res_collect now works also on CPython<3.5 2016-09-27 17:26:16 +02:00
slush0
43dafb2efc
Fixes mock dir cleanup, add link to source file 2016-09-27 17:26:15 +02:00
slush0
72fa153ea2
Mock builder for C modules 2016-09-27 17:26:15 +02:00
Pavol Rusnak
ae65b8c17f
cleanup res_collect.py 2016-09-27 17:26:12 +02:00
Pavol Rusnak
d1ff96af04
cleanup makefile; make res_collect tool more verbose 2016-09-27 17:26:12 +02:00
Jan Pochyla
59c0de5312
build wire_type index in pb2py 2016-09-27 17:26:05 +02:00
Jan Pochyla
173c49bef8
add __repr__ to Message and MessageType 2016-09-27 17:25:55 +02:00
Pavol Rusnak
ea3bd0b6f8
rename resource collector script and move it to scripts 2016-09-27 17:25:46 +02:00
Jan Pochyla
362e835807
MessageType.type -> MessageType.wire_type 2016-09-27 17:24:21 +02:00
slush0
3f9020ccf4
"TYPE = %d" => "t.type = %d" 2016-09-27 17:24:15 +02:00
slush0
bc95e83aea
Generate message type constant into message modules 2016-09-27 17:24:10 +02:00
Pavol Rusnak
ee3614ae6a
cleanup pb2py, add debug to emu.sh 2016-09-27 17:23:23 +02:00
Pavol Rusnak
bc7cb88cdf
use little endian for toif, fix random 2016-09-27 17:23:22 +02:00
slush0
e6df94cbd5
pb2py generator, build_pb2.sh 2016-09-27 17:23:22 +02:00
Pavol Rusnak
6a3cf02396
add documentation about toif 2016-09-27 17:23:20 +02:00
Pavol Rusnak
b41c1c3e4d
add data size to toi format header 2016-09-27 17:23:18 +02:00
Pavol Rusnak
8b4280b296
remove trezor-crypto, use mbedtls, use lowercase for trezor modules 2016-09-27 17:22:52 +02:00
Pavol Rusnak
fef9a2266d
more font work 2016-09-27 17:21:01 +02:00
Pavol Rusnak
9558ac1830
introduce TOI grayscale 4-bit format 2016-09-27 17:20:38 +02:00
Pavol Rusnak
cf4078543b
allow more than 1 built-in font 2016-09-27 17:20:38 +02:00
Pavol Rusnak
711adbeea4
update ttf2c generator 2016-09-27 17:19:51 +02:00
Pavol Rusnak
8041bc7a8e
add ttf2c tool 2016-09-27 17:19:51 +02:00
Pavol Rusnak
ced1a8fdef
introduce toi format 2016-09-27 17:19:50 +02:00