1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-22 23:48:12 +00:00

add validity timestamp

This commit is contained in:
Pavol Rusnak 2016-05-09 13:14:55 +02:00
parent 871ea5cc70
commit f24dd6b42f
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D

View File

@ -16,10 +16,11 @@ TREZOR OS firmware file consists of 3 parts:
|-------:|-------:|------|-------------| |-------:|-------:|------|-------------|
| 0x0000 | 4 | magic | firmware magic `TRZV` | | 0x0000 | 4 | magic | firmware magic `TRZV` |
| 0x0004 | 4 | hlen | length of the vendor header | | 0x0004 | 4 | hlen | length of the vendor header |
| 0x0008 | 1 | vsig_m | number of signatures needed to run the firmware from this vendor | | 0x0008 | 4 | expiry | valid until timestamp |
| 0x0009 | 1 | vsig_n | number of pubkeys vendor wants to use for signing | | 0x000C | 1 | vsig_m | number of signatures needed to run the firmware from this vendor |
| 0x000A | 1 | vstr_len | vendor string length | | 0x000D | 1 | vsig_n | number of pubkeys vendor wants to use for signing |
| 0x000B | ? | vstr | vendor string | | 0x000E | 1 | vstr_len | vendor string length |
| 0x000F | ? | vstr | vendor string |
| ? | ? | vimg | vendor image (in [TOIf format](toif.md)) | | ? | ? | vimg | vendor image (in [TOIf format](toif.md)) |
| ? | 32 | vpub1 | vendor pubkey 1 | | ? | 32 | vpub1 | vendor pubkey 1 |
| ... | ... | ... | ... | | ... | ... | ... | ... |
@ -34,15 +35,16 @@ TREZOR OS firmware file consists of 3 parts:
|-------:|-------:|------|-------------| |-------:|-------:|------|-------------|
| 0x0000 | 4 | magic | firmware magic `TRZF` | | 0x0000 | 4 | magic | firmware magic `TRZF` |
| 0x0004 | 4 | hlen | length of the firmware header | | 0x0004 | 4 | hlen | length of the firmware header |
| 0x0008 | 4 | codelen | length of the firmware code | | 0x0008 | 4 | expiry | valid until timestamp |
| 0x000C | 1 | vmajor | version (major) | | 0x000C | 4 | codelen | length of the firmware code |
| 0x000D | 1 | vminor | version (minor) | | 0x0010 | 1 | vmajor | version (major) |
| 0x000E | 1 | vpatch | version (patch) | | 0x0011 | 1 | vminor | version (minor) |
| 0x000F | 1 | vbuild | version (build) | | 0x0012 | 1 | vpatch | version (patch) |
| 0x0010 | 1 | vidx1 | vendor signature index 1 | | 0x0013 | 1 | vbuild | version (build) |
| 0x0011 | 32 | vsig1 | vendor signature 1 | | 0x0014 | 1 | vidx1 | vendor signature index 1 |
| 0x0043 | 1 | vidx2 | vendor signature index 2 | | 0x0015 | 32 | vsig1 | vendor signature 1 |
| 0x0044 | 32 | vsig2 | vendor signature 2 | | 0x0047 | 1 | vidx2 | vendor signature index 2 |
| 0x0048 | 32 | vsig2 | vendor signature 2 |
| ... | ... | ... | ... | | ... | ... | ... | ... |
| ? | 1 | vidxn | vendor signature index n | | ? | 1 | vidxn | vendor signature index n |
| ? | 32 | vsign | vendor signature n | | ? | 32 | vsign | vendor signature n |