1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-30 11:28:21 +00:00
Commit Graph

10057 Commits

Author SHA1 Message Date
JoeGruff
e3ea32a986 multi: Add decred staking.
Add two new input and four output script types.

Decred ticket purchases consist of a stake submission, op returns, and
change addresses. Although change addresses are allowed by consensus,
they are no longer used in practice and so have been given the
restrictions of a null pubkey and no value. Stake scripts are almost
identical to p2pkh or p2sh except for an extra opcode in front. Inputs
are currently only used in the form of one input three outputs with the
first output, or stake submission, paying to a public key hash, or with
two inputs and five outputs with the stake submission paying to a
multisig script hash. The op returns are directed to the user in the
case of one and the voting service provider and user in the case of two.

One of the sstx commitment for a ticket must pay back to the trezor
wallet. This is checked and an error is thrown if we don't find the
expected public key hash.

Because this adds the ability to create new types of outputs once the
ticket votes, two new input script types are also needed. A successful
vote will lead to a stake generation script that must be spent, and an
unsuccessful vote will lead to a revocation script that must be spent.
If we allowed stake change scripts to have a valid pubkey, that too
would require another op code, but we disallow those for output.
2021-03-17 12:16:08 +01:00
Pavol Rusnak
6c11bc60d7
common/defs/fido: add namecheap 2021-03-15 17:22:12 +01:00
Martin Milata
ee2ec85983 fix(core): fix title shown for multisig address 2021-03-11 14:21:03 +01:00
Pavol Rusnak
d211e3af07
fix(core): switch define to invert display colors into const volatile
using define causes compiler to over-optimize the code in display_init_seq
leading to larger differences in the resulting binaries when the flag changes

we want to keep the difference to minimum (1 byte) and using const volatile
instead of define achieves that
2021-03-11 12:29:00 +01:00
Pavol Rusnak
e7966cc804
refactor(core): rework color definitions in bootloader 2021-03-10 18:33:00 +01:00
Pavol Rusnak
3294a49cec
fix(core): don't assert reset flags to allow "reboot to bootloader" 2021-03-10 18:31:51 +01:00
Pavol Rusnak
1e2bb337a9
refactor(core): drop buttons argument for ui_screen_firmware_info 2021-03-10 17:42:52 +01:00
Pavol Rusnak
814db111b2
feat(core): add define to invert display colors on ST7789V 2021-03-10 16:06:18 +01:00
Andrew Kozlik
850aa56691 docs(core): Add references to SLIPs in the code. 2021-03-09 20:01:59 +01:00
Pavol Rusnak
5cff6ac964
doc(core): update comments around UDP emulator
drop unused define
2021-03-09 16:19:03 +01:00
Andrew Kozlik
a8c500bffd feat(core): Ensure that WebAuthn runs on port 21326 by default for both production and debug emulator. 2021-03-09 16:13:21 +01:00
Fabien
9ef26c347e Add support for Schnorr crypto (BCH variant)
Support Schnorr signature and verification defined in
https://github.com/bitcoincashorg/bitcoincash.org/blob/master/spec/2019-05-15-schnorr.md.

The implementation is based on https://github.com/Bitcoin-ABC/secp256k1
as well as the test vectors.
2021-03-09 14:22:56 +01:00
Pavol Rusnak
d6d1cd7b4c style(crypto): cleanup unused functions 2021-03-09 13:21:34 +01:00
mcudev
b50f1e0b89 openocd: separate stlink configs deprecated - now combined 2021-03-09 11:41:55 +01:00
Pavol Rusnak
a36d0c0fbe
docs(changelog): add public key to ECDHSessionKey 2021-03-08 16:52:44 +01:00
Roman Zeyde
78ab0a6a2d feat(legacy): add public_key to ECDHSessionKey 2021-03-08 15:59:00 +01:00
Roman Zeyde
7ce4e13bcf feat(core): add public_key to ECDHSessionKey 2021-03-08 15:59:00 +01:00
Roman Zeyde
b2877afa7f feat(common): add public_key to ECDHSessionKey 2021-03-08 15:59:00 +01:00
Pavol Rusnak
ebfd51d818
fix(core): stay_in_bootloader should default to false, not true 2021-03-06 20:09:56 +01:00
Pavol Rusnak
efac5d56f5
fix(core): change touch i2c clock speed to 200 kHz
fixes #1519
2021-03-06 20:02:11 +01:00
Pavol Rusnak
97b43499e5
fix(legacy): remove executable bit from legacy/firmware/bootloader.dat 2021-03-05 18:33:59 +01:00
Pavol Rusnak
60a6b8211e
docs(changelog): next bootloader/firmware version will be 1.10.0 2021-03-05 18:32:23 +01:00
Pavol Rusnak
cc42af28fd
docs(changelog): next FW version will be 2.4.0 2021-03-05 18:32:05 +01:00
Martin Milata
7c1d72c254 style(core): fix bootloader formatting 2021-03-04 19:21:56 +01:00
Pavol Rusnak
29a3e91f09 feat(core): refactor display_init_seq from display_init 2021-03-04 17:04:35 +01:00
Pavol Rusnak
5dd3d73d00
fix(core): remove unused stuff from bootloader_ci
plus minor ui function renames
2021-03-04 17:01:01 +01:00
Ondrej Mikle
a4ba24645b
feat(core): remove connect to host dialog in the bootloader 2021-03-04 16:34:30 +01:00
Pavol Rusnak
f3ae3615c7
fix(core): unify bootloader_ci with bootloader 2021-03-04 15:59:25 +01:00
Pavol Rusnak
b074404dcf
fix(core): small secbool refactor for bootloader_ci 2021-03-04 12:14:26 +01:00
Pavol Rusnak
2dc094bd3e
fix(core): small secbool refactors 2021-03-04 11:59:38 +01:00
Pavol Rusnak
4a82d6c9d5 fix(legacy): recompile bundled bootloader 2021-03-03 16:36:18 +01:00
Pavol Rusnak
cd62a79ec2
docs(legacy): fix bootloader changelog 2021-03-03 16:27:42 +01:00
Pavol Rusnak
4d2237b32b fix(legacy): refactor oledDrawBitmap and oledDrawBitmapFlip
into a single function
2021-03-03 16:23:53 +01:00
Pavol Rusnak
72691a93d5 fix(legacy): cleanup bitmaps, use 1-bit PNG, update generate script 2021-03-03 16:23:53 +01:00
Pavol Rusnak
3b80e9f228 fix(legacy): store only half of the logo64, use flip to render both parts 2021-03-03 16:23:53 +01:00
Pavol Rusnak
10cb634a45
fix(legacy): change STAY_IN_BOOTLOADER_FLAG to 0x0FC35A96
to have hamming distance greater than 2 from zero
2021-03-03 16:18:31 +01:00
Pavol Rusnak
4b0f41d41e
fix(common): change msg_id of RebootToBootloader from 804 to 87 2021-03-03 12:07:00 +01:00
Ondrej Mikle
77e99078c3
chore(trezorlib): add generated message files 2021-03-03 12:07:00 +01:00
Ondrej Mikle
1579c62332
chore(legacy): reboot to bootloader protobuf generated messages 2021-03-03 12:06:59 +01:00
Ondrej Mikle
d0b630abfc
chore(legacy): return code for reboot call 2021-03-03 12:06:59 +01:00
Ondrej Mikle
18a05d467e
chore(legacy): fake handling emulator reset to bootloader 2021-03-03 12:06:59 +01:00
Ondrej Mikle
2dccbf99d4
chore(legacy): add reset to bootloader protobuf message 2021-03-03 12:06:59 +01:00
Ondrej Mikle
b625b74bc7
chore(legacy): fix version in bootloader readme 2021-03-03 12:06:59 +01:00
Ondrej Mikle
9787ebfd21
chore(legacy): update Changelogs 2021-03-03 12:06:58 +01:00
Ondrej Mikle
de09d27c44
chore(legacy): bump version of intermediate_fw to match bootloader 2021-03-03 12:06:58 +01:00
Ondrej Mikle
f9917e8d47
feat(legacy): add 'stay in bootloader' bootloader to firmware' 2021-03-03 12:06:58 +01:00
Ondrej Mikle
10be0230a5
chore(legacy): bump bootloader version 2021-03-03 12:06:58 +01:00
Pavol Rusnak
1a71dcd0c5
chore(legacy): unify {go,return}_to_bootloader => stay_in_bootloader 2021-03-03 12:06:57 +01:00
Ondrej Mikle
040d09397c
feat(legacy): grab 'go to bootloader flag' as soon as possible 2021-03-03 12:06:57 +01:00
Ondrej Mikle
1c38819bf9
chore(legacy): fix demo build 2021-03-03 12:06:57 +01:00