1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-24 23:38:09 +00:00
Commit Graph

510 Commits

Author SHA1 Message Date
matejcik
7aed8d535d feat(all): re-enable Firo (fixes #1767) 2021-08-23 11:43:57 +02:00
gabrielkerekes
7c3b5c86a5 fix(cardano): forbid mixing paths from multiple accounts in a single transaction 2021-08-20 11:50:13 +02:00
gabrielkerekes
500d29f43b chore(cardano): format test fixture files 2021-08-20 11:50:13 +02:00
gabrielkerekes
28f0f60295 feat(cardano): update tests for streamed tx signing 2021-08-20 11:50:13 +02:00
gabrielkerekes
d2a5be4e38 feat(cardano): prepare protobuf messages for streamed tx signing 2021-08-20 11:50:13 +02:00
matejcik
abc347d4ca chore(common): remove Lisk 2021-08-19 10:25:41 +02:00
matejcik
a1c37cac59 git subrepo push common
subrepo:
  subdir:   "common"
  merged:   "8335ee632"
upstream:
  origin:   "git+ssh://git@github.com/trezor/trezor-common"
  branch:   "master"
  commit:   "8335ee632"
git-subrepo:
  version:  "0.4.1"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "a04d8c2"
2021-08-10 11:48:58 +02:00
Frederik Bolding
38fa9197ca feat(core,python): support for Ethereum EIP1559 transactions
Initial EIP1559 implementation

Fix a few small issues

Progress on Python lib implementation and firmware

Fix RLP length

Start fixing tests

Fix legacy transactions

Simplify API and logic

Add EIP1559 tests

Fix access list formatting

Fix UI visiblity issue

Fix commented out code

fix: correct linting issues

Fix access_list protobuf formatting

Remove unneeded code

Remove dead code

Check tx_type bounds for EIP 2718

Reduce code duplication

Prefer eip2718_type over re-using tx_type

Add more tests

Simplify format_access_list

Simplify sign_tx slightly

Change Access List format and add logic to encode it

Fix a bunch of small PR comments

Fix a linting issue

Move tests out of class and regenerate

Remove copy-pasted comments

Add access list to CLI

Simplify _parse_access_list_item

Fix small mistakes following rebase

Fix linting

Refactor to use a separate message for EIP 1559 tx

Simplify changed legacy code

Fix a few small PR comments

Fix linting

fix(legacy): recognize SignTxEIP1559 on legacy build

Fix PR comments
2021-08-10 11:00:29 +02:00
gabrielkerekes
4f7c6b3586 feat(common): change all protobuf message type hints to strings
In order to support recursive protobuf messages, which will be needed by Cardano's native scripts.
[no changelog]
2021-08-05 12:10:30 +02:00
matejcik
9ab1891b22 feat(common): more required fields in messages-management
[no changelog]
2021-08-04 15:03:11 +02:00
Andrew Kozlik
7277a49047 fix(common): Add new rpId to Binance's FIDO definition. 2021-07-21 13:19:16 +02:00
Martin Milata
0d251fc01a Merge branch 'release/21.07' 2021-07-16 14:34:20 +02:00
matejcik
8e6a647e89 fix(core): do not send ButtonRequest on every paging event
partial revert of 54db2291f2 from #1671

(cherry picked from commit 1e1963f1ee)
2021-07-12 00:39:54 +02:00
matejcik
1e1963f1ee fix(core): do not send ButtonRequest on every paging event
partial revert of 54db2291f2 from #1671
2021-07-09 15:00:29 +02:00
Szymon Lesisz
66bf309fbf fix(common): fix Ropsten key in blockchain_link
additionally updated support in suite (trop, xrp, txrp)
2021-07-07 14:46:53 +02:00
Andrew Kozlik
3f647f1b7b chore(common): Ensure that testnet coins use slip44 coin type 1. 2021-06-30 18:25:58 +02:00
Andrew Kozlik
c067618828 fix(common): Fix incorrect SLIP-44 coin type for Bgold and SmartCash Testnets. 2021-06-30 18:25:58 +02:00
gabrielkerekes
db657615f4 fix(cardano): use OrderedMap for output tokens and withdrawals 2021-06-24 08:24:47 +02:00
gabrielkerekes
4e5772662c fix(cardano): don't allow duplicate withdrawals 2021-06-24 08:24:42 +02:00
matejcik
74bd26b160 chore(tests): remove remaining input_flow instructions from jsons 2021-06-23 11:51:18 +02:00
matejcik
7cdde940af chore(tests): adapt device tests to paging information ButtonRequests 2021-06-22 11:25:12 +02:00
matejcik
1012ee8497 feat(core): send ButtonRequests for paging events 2021-06-22 11:25:12 +02:00
Vladimir Volek
6fef12128b feat: cardano blockchain link definitions 2021-06-18 13:44:08 +02:00
matejcik
74cf309a93 git subrepo push common
subrepo:
  subdir:   "common"
  merged:   "a62380e21"
upstream:
  origin:   "git+ssh://git@github.com/trezor/trezor-common"
  branch:   "master"
  commit:   "a62380e21"
git-subrepo:
  version:  "0.4.1"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "a04d8c2"
2021-06-09 13:17:21 +02:00
matejcik
e4bb3b2f6c chore(common): enable Syscoin support for Connect 2021-06-09 13:16:45 +02:00
matejcik
f48e2ea89f git subrepo push common
subrepo:
  subdir:   "common"
  merged:   "813156c62"
upstream:
  origin:   "git+ssh://git@github.com/trezor/trezor-common"
  branch:   "master"
  commit:   "813156c62"
git-subrepo:
  version:  "0.4.1"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "a04d8c2"
2021-06-09 13:13:32 +02:00
gabrielkerekes
b2de8909d1 fix(core/cardano): reintroduce max tx output size
Output size is currently limited to 4000 bytes at protocol level. Given the maximum transaction size Trezor can handle (~9kB), we also want to enforce this size limit here so that when the limit is raised at protocol level again, Trezor would still not be able to produce larger outputs than it could reliably spend. Once Cardano-transaction signing is refactored to be completely streamed and maximum supported transaction size is thus raised, this limit can be lifted.
2021-06-08 15:02:24 +02:00
gabrielkerekes
a92b5fc333 fix(core/cardano): forbid tx outputs with both address and address parameters 2021-06-08 15:02:24 +02:00
gabrielkerekes
597402eab8 refactor(core/cardano): decouple address parameters validation 2021-06-08 15:02:24 +02:00
matejcik
845a66a7de chore(common/tools): drop outdated and unused CoinDef generator 2021-06-08 09:55:19 +02:00
matejcik
9790a338f8 feat(common/protob): mark values as bitcoin_only in protobuf definitions 2021-06-08 09:55:19 +02:00
matejcik
215d35d870 fix(common/protob): use proper field type for backup type on debuglink 2021-06-08 09:55:19 +02:00
matejcik
266955ba65 refactor: rework pb2py generator
This also includes the capability to build Rust protobuf blobs.
2021-06-08 09:55:19 +02:00
matejcik
00d4b0a4a9 fix(common/tools): typo in support.py output 2021-06-04 11:38:18 +02:00
matejcik
2fac964a29 chore(common): disable Firo support 2021-06-04 11:38:18 +02:00
Pavol Rusnak
fce3640848 fix(common): remove dead coin Hatch 2021-06-04 10:10:26 +02:00
Szymon Lesisz
4e005de02f common: update DOGE min_fee and dust_limit
DOGE fee policies have been changed to:
1 DOGE base fee
+ 1 DOGE per 1000 bytes
+ 1 DOGE for every output below 1 DOGE

sources:
https://github.com/dogecoin/dogecoin/issues/1650#issuecomment-722229742
https://github.com/trezor/trezor-suite/issues/2973#issuecomment-730607729
2021-05-26 16:00:29 +02:00
matejcik
1595354e37 git subrepo push common
subrepo:
  subdir:   "common"
  merged:   "6c3c284e2"
upstream:
  origin:   "git+ssh://git@github.com/trezor/trezor-common"
  branch:   "master"
  commit:   "6c3c284e2"
git-subrepo:
  version:  "0.4.1"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "a04d8c2"
2021-05-26 14:18:31 +02:00
matejcik
aaa3ce6117 fix(core/bitcoin): fix CoinJoin authorization with new cache 2021-05-06 13:14:21 +02:00
Martin Milata
49965aae7e fix(common): bitcoin:XRC wallet link 2021-05-04 14:28:09 +02:00
gabrielkerekes
bf3e64ff20 fix(common): add isort:skip_file to files generated by pb2py 2021-04-23 11:09:29 +02:00
gabrielkerekes
2313293477 feat(core/cardano): add support for catalyst voting registration 2021-04-23 11:09:29 +02:00
gabrielkerekes
2c503b16f5 fix(common): fix one value enums in pb2py 2021-04-23 11:09:29 +02:00
Pavol Rusnak
6b371749bc
fix(common): fix errors in coin definitions 2021-04-07 16:37:56 +02:00
HyperPeek
13fbb25f0b
feat(common): add tRVN (#1561) 2021-04-07 16:26:52 +02:00
Martin Milata
0278998f72 style(common): mypy: disable implicit Optional for function arguments 2021-04-01 11:12:30 +02:00
Rafael Korbas
a9b8b0e119 feat(core/cardano): chunked serialization of signed transaction 2021-03-26 11:15:19 +01:00
gabrielkerekes
3cb686d452 fix(core/cardano): make witnesses order deterministic 2021-03-26 11:15:19 +01:00
Pavol Rusnak
1cc719bf49
fix(common): don't use grayscale png for coin icons 2021-03-25 13:49:53 +01:00
Pavol Rusnak
da7214d82f
fix(common): update support.json to include Firo 2021-03-25 13:39:59 +01:00
a-bezrukov
a305c774df
fix(common): Zcoin rebrand to Firo (#1544) 2021-03-25 13:35:10 +01:00
Andrew Kozlik
b0ed553847 style(core): Fix black formatting. 2021-03-23 11:02:04 +01:00
Pavol Rusnak
048205b864
fix(common): magnum wallet is dead
https://twitter.com/Magnum_Wallet/status/1333472916588081154
2021-03-20 11:21:09 +01:00
matejcik
cb7152542d feat: drop DebugLinkShowText functionality 2021-03-18 10:59:51 +01:00
Rafael Korbas
74ed5b7018 feat(core/cardano): Implement bech32 asset ids based on CIP-0014 2021-03-18 09:53:33 +01:00
Rafael Korbas
bd4512b53a fix(core/cardano): Allow stake pool registrations with zero margin 2021-03-18 09:35:08 +01:00
Pavol Rusnak
cc9dd66729
feat(common): let's work with Trezor Suite instead of the web wallet 2021-03-17 16:47:57 +01:00
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
Roman Zeyde
b2877afa7f feat(common): add public_key to ECDHSessionKey 2021-03-08 15:59:00 +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
d0b630abfc
chore(legacy): return code for reboot call 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
matejcik
35505e9a17 chore(common): regenerate coins_details 2021-03-01 12:05:54 +01:00
matejcik
c101754842 fix(common/tools): cast a wider net when looking for CMC match 2021-03-01 12:05:54 +01:00
matejcik
ed0ac98970 fix(common/tools): strip "mainnet" from Ethereum network names 2021-03-01 12:05:54 +01:00
matejcik
090d103382 fix(common/tools): cleaner handling of duplicity overrides 2021-03-01 12:05:54 +01:00
Pavol Rusnak
17fa6ab4ec chore(common): update chains+tokens 2021-03-01 12:05:54 +01:00
Rafael Korbas
cf871ee754 fix(core/Cardano): do not show change output in byron-shelley transfers 2021-02-25 16:41:12 +01:00
Martin Milata
db2db8e6f3 feat(common): add hold_ms to DebugLinkDecision 2021-02-24 00:10:10 +01:00
Pavol Rusnak
a5778d1209
chore(common): regenerate coins_details.json
[skip_ci]
2021-02-11 17:28:45 +01:00
gabrielkerekes
d4dcd7bff9 fix(core/cardano): allow staking accounts beyond 100' 2021-02-11 09:55:23 +01:00
matejcik
576d431058 feat(common): set more fields as required (#1406) 2021-02-10 10:56:52 +01:00
matejcik
bf562cfd4b feat(core/misc): enable typing for misc app 2021-02-10 10:56:52 +01:00
matejcik
ccd241fe55 feat(core/cardano): enable typing for Cardano app 2021-02-10 10:56:52 +01:00
Pavol Rusnak
18b51b856b
common/fido: update icons for github, mojeid and slushpool (#1456) 2021-02-08 16:51:49 +01:00
Pavol Rusnak
1d4cff97ec
git subrepo push common
subrepo:
  subdir:   "common"
  merged:   "944742aa7"
upstream:
  origin:   "git+ssh://git@github.com/trezor/trezor-common"
  branch:   "master"
  commit:   "944742aa7"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2021-02-02 14:50:35 +01:00
Rafael Korbas
e4c406822c Add multiasset sending and min validity to Cardano transactions 2021-01-27 18:26:40 +01:00
Pavol Rusnak
345ef52949 feat(proto): add amount_unit to AuthorizeCoinJoin and SignTx 2021-01-22 14:07:36 +01:00
Pavol Rusnak
4ed714ba47 common/defs: add xpub_magic_multisig_segwit_{native,p2sh} fields to coins 2021-01-21 23:46:29 +01:00
Pavol Rusnak
6689b9c22f common/protob: add GetAddress.ignore_xpub_magic field 2021-01-21 23:46:29 +01:00
Rafael Korbas
3a7a8e4d77 Disable "at least one output" restriction for Cardano, warn instead 2021-01-20 16:00:30 +01:00
mcudev
b8ffcadf94
common/defs/fido: add gemini webauthn (#1416) 2021-01-19 14:15:19 +01:00
Pavol Rusnak
a7e7f6fc5f
common/defs: fix typo in cointool; remove icons of already deleted coins
[skip_ci]
2021-01-13 19:52:59 +01:00
Pavol Rusnak
a205a86505
docs: fix typo
[skip_ci]
2021-01-13 11:06:36 +01:00
Pavol Rusnak
edb1243f64 feat(proto): add descriptors related fields to GetPublicKey/PublicKey 2021-01-08 14:17:09 +01:00
matejcik
9a9f23c54e chore(common): regenerate coins_details 2021-01-04 12:17:55 +01:00
matejcik
8cae43f874 fix(common): drop non-functional wallet links (fixes #1400) 2021-01-04 12:17:40 +01:00
Pavol Rusnak
d657cdaeef
fix(common): update protob combine script to reflect new changes 2020-12-10 16:53:00 +01:00
Pavol Rusnak
1187e4ddaf style(common): use new syntax for typing in autogenerated protobuf enums 2020-12-01 15:52:29 +01:00
matejcik
58387a5f04 fix(common): drop Zilliqa token (fixes #1318) 2020-11-20 18:55:35 +01:00
matejcik
f0ede24bd7 chore(common): refresh coins details 2020-11-20 18:55:35 +01:00
matejcik
dc7f49aeea chore(common): update tokens and support data 2020-11-20 18:55:35 +01:00
matejcik
1bade86792 feat(common): load Ethereum networks from upstream 2020-11-20 18:55:35 +01:00
matejcik
e72b6abf47 feat(common/tools): use pathlib in cointool 2020-11-20 18:55:35 +01:00
matejcik
ac65867771 feat(common): move out blockbook urls to a separate file 2020-11-20 18:55:35 +01:00
matejcik
f709df02d6 feat(common/tools): allow overriding non-token network duplicity info 2020-11-20 18:55:35 +01:00
matejcik
e8fcdbb426 feat(common): add upstream Ethereum chains repository 2020-11-20 18:55:35 +01:00
Rafael Korbas
b311bd4d4a Add displaying of TTL to cardano transaction, align url validation with Ledger 2020-11-20 15:58:50 +01:00
Rafael Korbas
b261f789f3 Add support for stakepool registration to Cardano 2020-11-20 15:58:50 +01:00