From 13e79d0d2e2f0b5b2ed691cb030c35b865081bcb Mon Sep 17 00:00:00 2001 From: tychovrahe Date: Wed, 17 Apr 2024 12:59:36 +0200 Subject: [PATCH] chore(core): add T3B1 production keys [no changelog] --- core/embed/models/T3B1/model_T3B1.h | 12 +++++----- .../vendorheader/T3B1/vendor_prodtest.json | 22 ++++++++++++++++++ .../vendorheader/T3B1/vendor_prodtest.toif | Bin 0 -> 62 bytes .../vendorheader/T3B1/vendor_trezor.json | 22 ++++++++++++++++++ .../vendorheader/T3B1/vendor_trezor.toif | Bin 0 -> 81 bytes .../T3B1/vendor_trezor_btconly.json | 22 ++++++++++++++++++ .../T3B1/vendor_trezor_btconly.toif | Bin 0 -> 92 bytes .../vendorheader/T3B1/vendor_unsafe.json | 22 ++++++++++++++++++ .../vendorheader/T3B1/vendor_unsafe.toif | Bin 0 -> 62 bytes .../T3B1/vendorheader_prodtest_unsigned.bin | Bin 0 -> 512 bytes .../vendorheader_trezor_btconly_unsigned.bin | Bin 0 -> 512 bytes .../T3B1/vendorheader_trezor_unsigned.bin | Bin 0 -> 512 bytes .../T3B1/vendorheader_unsafe_signed_dev.bin | Bin 0 -> 512 bytes .../T3B1/vendorheader_unsafe_unsigned.bin | Bin 0 -> 512 bytes python/src/trezorlib/firmware/models.py | 14 +++++------ 15 files changed, 101 insertions(+), 13 deletions(-) create mode 100644 core/embed/vendorheader/T3B1/vendor_prodtest.json create mode 100644 core/embed/vendorheader/T3B1/vendor_prodtest.toif create mode 100644 core/embed/vendorheader/T3B1/vendor_trezor.json create mode 100644 core/embed/vendorheader/T3B1/vendor_trezor.toif create mode 100644 core/embed/vendorheader/T3B1/vendor_trezor_btconly.json create mode 100644 core/embed/vendorheader/T3B1/vendor_trezor_btconly.toif create mode 100644 core/embed/vendorheader/T3B1/vendor_unsafe.json create mode 100644 core/embed/vendorheader/T3B1/vendor_unsafe.toif create mode 100644 core/embed/vendorheader/T3B1/vendorheader_prodtest_unsigned.bin create mode 100644 core/embed/vendorheader/T3B1/vendorheader_trezor_btconly_unsigned.bin create mode 100644 core/embed/vendorheader/T3B1/vendorheader_trezor_unsigned.bin create mode 100644 core/embed/vendorheader/T3B1/vendorheader_unsafe_signed_dev.bin create mode 100644 core/embed/vendorheader/T3B1/vendorheader_unsafe_unsigned.bin diff --git a/core/embed/models/T3B1/model_T3B1.h b/core/embed/models/T3B1/model_T3B1.h index ee85901a5..6ccfd3101 100644 --- a/core/embed/models/T3B1/model_T3B1.h +++ b/core/embed/models/T3B1/model_T3B1.h @@ -10,14 +10,14 @@ #define MODEL_INTERNAL_NAME_QSTR MP_QSTR_T3B1 #define MODEL_BOARDLOADER_KEYS \ - (const uint8_t *)"\x76\xaf\x42\x6e\x61\x40\x6b\xad\x7c\x07\x7b\x40\x9c\x66\xfd\xe3\x9f\xb8\x17\x91\x93\x13\xae\x1e\x4c\x02\x53\x5c\x80\xbe\xed\x96", \ - (const uint8_t *)"\x61\x97\x51\xdc\x8d\x2d\x09\xd7\xe5\xdf\xb9\x9e\x41\xf6\x06\xde\xbd\xf4\x19\xf8\x5a\x81\x43\xe8\xe5\x39\x9e\xa6\x7a\x39\x88\xc7", \ - (const uint8_t *)"\xab\xf9\x4b\x66\x15\xa7\xdd\xe2\xa8\x71\xf7\xd6\x2c\x38\xef\xc7\xd9\xd8\xf6\x01\x0d\x88\x46\xbe\xe6\x36\xe4\xf3\xe6\x58\xa3\x8c", + (const uint8_t *)"\xbb\xc2\x1a\xdb\xc1\xb4\x4d\x6b\xfe\x10\xc5\x22\x3d\xe3\x3c\x28\x42\x9e\x52\x68\x07\x07\xd3\x24\x90\x07\xed\x42\xdc\xc5\xbe\x13", \ + (const uint8_t *)"\x22\xe4\x2a\x30\x1f\x3b\x6f\xf4\xf2\xe6\x92\x6b\xce\x43\x59\xe8\x3f\xc8\x3f\x0f\x4a\x84\xa7\x33\x89\x59\xc1\xfd\x0e\x29\xdc\x13", \ + (const uint8_t *)"\x7f\x47\x8f\x5f\xb7\x8d\x8c\x05\x4b\x72\x0d\x81\x04\xbf\x2f\x64\x87\xe4\x52\x40\x24\x58\x97\x9b\x55\x25\xc2\x90\xdc\x34\x4d\x32", #define MODEL_BOOTLOADER_KEYS \ - (const uint8_t *)"\x33\x8b\x94\x9b\x7e\x3b\x26\x47\x0d\x4f\xe3\x69\x6f\xd6\xff\xf2\x87\x57\x26\x5d\x14\xcc\xa4\x8e\xbf\x2d\xb9\x7b\x4f\x5b\xc0\x39", \ - (const uint8_t *)"\x28\x68\x20\x27\x73\x0b\x78\x32\x01\xb0\x5a\x8c\x9d\x11\x68\x54\x47\xc1\x72\x97\xdb\x71\xb8\xa6\x0d\xc6\x93\xa4\x46\x10\x75\x1d", \ - (const uint8_t *)"\x9f\xbf\x31\xb4\xe3\x51\xa4\xcc\x81\xc7\x59\x95\xb2\x25\x7f\x0a\x71\x69\x26\x8d\xa5\xa4\x4e\x94\xb6\xa5\x59\x0d\x43\x4e\x32\xda", + (const uint8_t *)"\x41\xd9\x88\x48\x01\x37\x7c\xff\x04\xb0\xb4\x59\xfc\x9b\x56\xaf\x1b\x51\xf4\x73\x43\xa3\xa6\xe4\xfd\xc1\xea\xca\xbc\xad\x77\x56", \ + (const uint8_t *)"\x23\xec\x4e\xc4\x67\x4d\x68\xac\x54\x31\xe8\xba\x84\xd7\xac\x24\xcb\x5a\x66\x70\x2e\xc5\x65\x01\x4d\x16\x4a\x72\x18\x2a\x66\xc7", \ + (const uint8_t *)"\x8a\x7d\xac\x53\xe1\xbe\x46\x60\x72\x31\x92\x0b\x0c\x71\x05\x6a\x27\xbe\x16\xb6\x7a\x2f\xc0\xd8\x64\x4d\x5f\x87\x08\xa2\x8d\xd1", #define IMAGE_CHUNK_SIZE (128 * 1024) #define IMAGE_HASH_SHA256 diff --git a/core/embed/vendorheader/T3B1/vendor_prodtest.json b/core/embed/vendorheader/T3B1/vendor_prodtest.json new file mode 100644 index 000000000..44d98cec9 --- /dev/null +++ b/core/embed/vendorheader/T3B1/vendor_prodtest.json @@ -0,0 +1,22 @@ +{ + "header_len": 512, + "text": "UNSAFE, FACTORY TEST ONLY", + "hw_model": "T3B1", + "expiry": 0, + "version": [0, 0], + "sig_m": 2, + "trust": { + "_reserved": 0, + "_dont_provide_secret": false, + "allow_run_with_secret": true, + "show_vendor_string": false, + "require_user_click": false, + "red_background": false, + "delay": 0 + }, + "pubkeys": [ + "cf9af91868919da222aaf423386446d5546e165fce0f005e806e3c1a0c2334ec", + "df28cea5a5c557ed56c073c8ddeece1f4c786498efdbb3432ccf93d0af837862", + "27b4374398d4854dc9ade7a500265e1e1d755dfe3b14d207fec76a2f0a0e0529" + ] +} diff --git a/core/embed/vendorheader/T3B1/vendor_prodtest.toif b/core/embed/vendorheader/T3B1/vendor_prodtest.toif new file mode 100644 index 0000000000000000000000000000000000000000..9d302f7335a9b3367ad9b58e2d209d5adfdb6db5 GIT binary patch literal 62 zcmV-E0KxxMPf14@02lx=0001EU_b*O__4A-@FO@#Y!Cy+L1F_b2tsAURG?wF9L!`G UfyHEGISli0x(BEGarzeq07;$|fdBvi literal 0 HcmV?d00001 diff --git a/core/embed/vendorheader/T3B1/vendor_trezor.json b/core/embed/vendorheader/T3B1/vendor_trezor.json new file mode 100644 index 000000000..4a64aa8e9 --- /dev/null +++ b/core/embed/vendorheader/T3B1/vendor_trezor.json @@ -0,0 +1,22 @@ +{ + "header_len": 512, + "text": "Trezor", + "hw_model": "T3B1", + "expiry": 0, + "version": [0, 0], + "sig_m": 2, + "trust": { + "_reserved": 0, + "_dont_provide_secret": false, + "allow_run_with_secret": true, + "show_vendor_string": false, + "require_user_click": false, + "red_background": false, + "delay": 0 + }, + "pubkeys": [ + "90edb45db65f26d793f8b8c6a505062286262d028d341f273272e5d2bcc71f18", + "e32f59de973a39cb2b5ce79a17cbc4107272d46c617848e3c7b19b5b731cc174", + "8a5d0b43591db2dbf3895ce19d30d7ec05333b0028737ab76cacb4b7ed0833fe" + ] +} diff --git a/core/embed/vendorheader/T3B1/vendor_trezor.toif b/core/embed/vendorheader/T3B1/vendor_trezor.toif new file mode 100644 index 0000000000000000000000000000000000000000..60006897dc50d6b48afabd2c29668605a78472f3 GIT binary patch literal 81 zcmV-X0IvU3Pf14@02ly80001EU=S1({QnWR1VTWGd9Rmf^d7mUIVc|LYyEEaWfcT`WYk3EsgzWEpmzd-|;McEkg;1vf|M5dWY^g%H=^5CwlfpGXFV5Pwg1 z2?hxUBcOAV6C9Z3e{9@j|3TTpBS(Pwm}3&NCWlk%;gAK1J7mtJNHiWzNwMVlT)2yU R`R~GC;%o>njI!{A005EsO|t+1 literal 0 HcmV?d00001 diff --git a/core/embed/vendorheader/T3B1/vendorheader_trezor_btconly_unsigned.bin b/core/embed/vendorheader/T3B1/vendorheader_trezor_btconly_unsigned.bin new file mode 100644 index 0000000000000000000000000000000000000000..3b342ed16b7b42563632a17d164c4a1913653380 GIT binary patch literal 512 zcmWFuiV9<3Vt@iB=KB93#!iMXJ_CcB%z3NBpLO2mw`#2W%Dv`NM!nOCi^tU8I{Dw; z@NEl&qv*QJe=hw>d~T5<>;AlstE<^u_R;%vv7g8N3qEEa&%JRX@axs2nBV3{*6)aW z*Ic@7eYD`y*$+j}FJt^Zb&|XWpKwS~YE^!bf>UNma(-r>Zhl@)Wr)A0y99#-Ljcej zy%QL@4j6DS|8$UaxgYK5!_TzeK3xBqrKA{1^z-~iG*LW Q867qjJ_sL-vhalf07GC=3IG5A literal 0 HcmV?d00001 diff --git a/core/embed/vendorheader/T3B1/vendorheader_unsafe_signed_dev.bin b/core/embed/vendorheader/T3B1/vendorheader_unsafe_signed_dev.bin new file mode 100644 index 0000000000000000000000000000000000000000..b66e48767a5931ed0cca03b870dc267c2a96c42c GIT binary patch literal 512 zcmWFuiV9<3Vt@iB=Dzz?S?$DoZkn} z?AdcK-)>jgl9zp-{~whMP%^*vUO3b**wM{ZN5REk!OuTLAvD-kF~r}~U4lV^!3gM# zHhKIWLjtjXb&dN^c3;trWJDH4rGQ&KE>J{Rs{U;exBmpB{3 z=_7%~Ec+*PXPxrxh6_ePQf=E3({E^Am~JK`bYgSnssF#$n9Ez?S?$DoZkn} z?AdcK-)>jgl9zp-{~whMP%^*vUO3b**wM{ZN5REk!OuTLAvD-kF~r}~U4lV^!3gM# zHhKIWLjtjXb&dN^c3;trWJDH4rGQ&KE>J{Rs{U;exBmpB{3 K>7y(nLI41xW>d2O literal 0 HcmV?d00001 diff --git a/python/src/trezorlib/firmware/models.py b/python/src/trezorlib/firmware/models.py index 26f1d1b0b..38c8d0c4c 100644 --- a/python/src/trezorlib/firmware/models.py +++ b/python/src/trezorlib/firmware/models.py @@ -248,22 +248,22 @@ T3T1 = ModelKeys( ) T3B1 = ModelKeys( - production=False, + production=True, boardloader_keys=[ bytes.fromhex(key) for key in ( - "db995fe25169d141cab9bbba92baa01f9f2e1ece7df4cb2ac05190f37fcc1f9d", - "2152f8d19b791d24453242e15f2eab6cb7cffa7b6a5ed30097960e069881db12", - "22fc297792f0b6ffc0bfcfdb7edb0c0aa14e025a365ec0e342e86e3829cb74b6", + "bbc21adbc1b44d6bfe10c5223de33c28429e52680707d3249007ed42dcc5be13", + "22e42a301f3b6ff4f2e6926bce4359e83fc83f0f4a84a7338959c1fd0e29dc13", + "7f478f5fb78d8c054b720d8104bf2f6487e452402458979b5525c290dc344d32", ) ], boardloader_sigs_needed=2, bootloader_keys=[ bytes.fromhex(key) for key in ( - "d759793bbc13a2819a827c76adb6fba8a49aee007f49f2d0992d99b825ad2c48", - "6355691c178a8ff91007a7478afb955ef7352c63e7b25703984cf78b26e21a56", - "ee93a4f66f8d16b819bb9beb9ffccdfcdc1412e87fee6a324c2a99a1e0e67148", + "41d9884801377cff04b0b459fc9b56af1b51f47343a3a6e4fdc1eacabcad7756", + "23ec4ec4674d68ac5431e8ba84d7ac24cb5a66702ec565014d164a72182a66c7", + "8a7dac53e1be46607231920b0c71056a27be16b67a2fc0d8644d5f8708a28dd1", ) ], bootloader_sigs_needed=2,