matejcik
665abe1e02
fix(core/bitcoin): validate path before asking to sign message (which could otherwise fail)
2020-11-05 14:30:11 +01:00
matejcik
f10084117b
feat(core/bitcoin): do not show path warning when GetAddress is called silently ( fixes #1206 )
2020-11-05 14:30:11 +01:00
matejcik
eadf8ab25f
chore(core/tests): update unit tests for new APIs, drop unnecessary ones
2020-11-05 14:30:11 +01:00
matejcik
5a97a5111b
feat(core/ethereum): add SEP5 path schema as well as the compat schema
2020-11-05 14:30:11 +01:00
matejcik
a367426480
feat(core/bitcoin): use path schemas
2020-11-05 14:30:11 +01:00
matejcik
c0879f8625
feat(core/cardano): use path schemas
2020-11-05 14:30:11 +01:00
matejcik
f5c8138df6
feat(core): update most apps to use path schemas
2020-11-05 14:30:11 +01:00
matejcik
4ca8f7b0d6
style(core): use relative imports everywhere
...
except Monero, which has a rather complex structure and I don't want to
search&replace mess with it in case some of the things break memory
layout
2020-11-05 14:30:11 +01:00
matejcik
7fe5c804ff
feat(core): implement BIP-32 path schemas
2020-11-05 14:30:11 +01:00
Tomas Susanka
e611a4a110
chore: bump changelog
2020-11-02 20:08:28 +01:00
Martin Milata
62a80e1332
feat(core): tools/alloc.py: generate html
2020-11-02 14:14:00 +01:00
Martin Milata
c89a8b7bd5
ci(core): add memory profiler job
2020-11-02 14:14:00 +01:00
matejcik
93efe3ab63
feat(core): add alloc data analysis tool
...
Modified by mmilata, was:
add alloc data from test suite run, and an analysis tool
2020-11-02 14:14:00 +01:00
matejcik
af4463412f
feat(core): count allocations per line
2020-11-02 14:14:00 +01:00
Andrew Kozlik
70975008cd
chore (core): In apps.bitcoin skip confirmation of fee in PayJoin if the user is not increasing their contribution.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
9e5d5bd5f9
feat: Add support for experimental field flag in protobuf.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
b213a55428
chore(core): In apps.bitcoin move h_inputs back to bitcoin class.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
4a0c5c371a
feat(core): In apps.bitcoin implement replacement transaction flow.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
bd3fe1d789
chore(core): In apps.bitcoin create a separate class for transaction information.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
469c131678
chore(core): In apps.bitcoin add confirm_replacement and confirm_modify_fee layouts.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
7c2d690e45
chore(core): In apps.bitcoin allow get_tx_digest() to be used for original transactions.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
ad6a0bc2a2
chore(common): Add new request types TXORIGINPUT and TXORIGOUTPUT.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
5fc491c597
chore(core): In apps.bitcoin move BIP143 hashing back to a separate class.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
443e0c101e
chore(common): Add orig_hash and orig_index fields to TxInput and TxOutput.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
9a594f4784
fix(core): Fix CoinJoin anonymity gain check in bitcoin approver.
2020-10-16 19:16:37 +02:00
Pavol Rusnak
ded61a4ccf
chore(vendor): update micropython to v1.13
2020-10-16 14:19:35 +02:00
Martin Milata
830592f2d9
feat(core): add experimental_features setting
...
The setting is off by default. When it is enabled protobuf messages
marked UNSTABLE are rejected after decoding.
2020-10-16 13:53:31 +02:00
Martin Milata
0376670404
feat(common): expose 'unstable' option in generated code
2020-10-16 13:53:31 +02:00
Martin Milata
314cd260eb
feat(common): add experimental_features setting
2020-10-16 13:53:31 +02:00
Pavol Rusnak
bf6e9b4cad
fix(core): always recalculate header hashes
2020-10-15 16:28:12 +02:00
Martin Milata
9ed25a718a
ci: handle full dependencies in shell.nix
...
Handling of full dependencies (multiple python versions, Monero tests)
was moved from Dockerfile to shell.nix.
The Python packages are installed from the pinned nixpkgs revision and
do not depend on channel state at the time of docker build anymore.
The Monero test binary is now downloaded using fetchurl which fails the
build if checksum doesn't match.
2020-10-15 15:59:20 +02:00
Andrew Kozlik
c67ecb984b
chore(crypto): Move XPUB_MAXLEN and ADDRESS_MAXLEN from modtrezorcrypto to bip32.h.
2020-10-13 13:13:49 +02:00
Andrew Kozlik
c21ca81a1e
fix(core): Prevent sensitive data from being left on the call stack in modtrezorcrypto.
2020-10-13 13:13:49 +02:00
Pavol Rusnak
d8534b5ee6
perf(core/extmod): replace HMAC Python implementation with C
...
We keep Python implementation of HMAC for Monero in
core/src/apps/monero/xmr/crypto/__init__.py
2020-10-12 16:33:13 +02:00
Andrew Kozlik
d90c3af6ea
docs(core): Fix typos in slip39.py.
2020-10-11 00:31:24 +02:00
Tomas Susanka
b9dc44a849
docs(core): note 2.3.4 as released in Changelog
2020-10-08 09:02:52 +02:00
Martin Milata
542f32d3b1
feat(core): add auto_lock_delay and display_rotation to Features
2020-10-02 11:06:16 +02:00
Martin Milata
b2c4bbdaa2
feat(common): add auto_lock_delay and display_rotation to Features
2020-10-02 11:06:16 +02:00
matejcik
e4785d47e0
style: apply black 20.8b1
2020-09-29 11:30:40 +02:00
Rafael Korbas
2173ad97bc
Refactor t<page number> to page<page_number> in cardano get_address call
2020-09-29 08:55:28 +02:00
Rafael Korbas
66dbdc2462
Enforce network id/protocol magic consistency for cardano show address
2020-09-29 08:55:28 +02:00
Juraj Muravsky
638977db7d
Swap path with address type on screen in cardano get address
2020-09-29 08:55:28 +02:00
Pavol Rusnak
649e31cef0
chore(core/bootloader): regenerate messages with nanopb 0.4.3
2020-09-24 10:52:31 +02:00
Pavol Rusnak
71058eedd5
chore(vendor/nanopb): update nanopb from 0.4.1 to 0.4.3
2020-09-24 10:52:31 +02:00
Tomas Susanka
0317877297
chore(core): bump version to 2.3.5
2020-09-24 10:17:32 +02:00
matejcik
0eed360037
chore: make tx type names shorter
...
as suggested by @andrewkozlik:
TxAckInputType -> TxInput
TxAckOutputType -> TxOutput
TxAckPrevTxType -> PrevTx
TxAckPrevInputType -> PrevInput
TxAckPrevOutputType -> PrevOutput
2020-09-23 16:00:10 +02:00
matejcik
b6b65bffff
docs(core): update changelog
2020-09-23 16:00:10 +02:00
matejcik
35035dabcb
ci: omit generated protobuf classes from coverage report
2020-09-23 16:00:10 +02:00
matejcik
8b2e46eb2d
chore(core): update unit tests to kwargs usage and new TxAck subtypes
2020-09-23 16:00:10 +02:00
matejcik
d89c42e139
feat(core): add more mypy targets
2020-09-23 16:00:10 +02:00
matejcik
244b264b47
chore(core): fix typing and kwargs usage
2020-09-23 16:00:10 +02:00
matejcik
ef4022fbf5
auto: regenerate protobuf classes
2020-09-23 16:00:10 +02:00
matejcik
37025e2a84
feat(core): use specialized protobufs in apps.bitcoin, enable typing
2020-09-23 16:00:10 +02:00
matejcik
b0a2297b14
feat(core): convert protobuf decoding errors to DataErrors
2020-09-23 16:00:10 +02:00
matejcik
6ba08526e1
fix(core): fix type annotations on CoinInfo
2020-09-23 16:00:10 +02:00
matejcik
7e5d9e295b
fix(core): help mypy understand micropython's module management
2020-09-23 16:00:10 +02:00
matejcik
90ee5f3d38
feat!: implement protobuf required fields and default values
...
BREAKING CHANGE: this makes arguments to protobuf constructors
keyword-only, and arguments corresponding to required fields are now
mandatory
2020-09-23 16:00:10 +02:00
Pavol Rusnak
f8489f16e4
fix(common/defs): remove FSN, ICX which migrated to mainnet
2020-09-23 11:31:09 +02:00
Martin Milata
cff4955f93
core: implement SafetyChecks.PromptTemporarily
...
Also reword safety checks confirmation dialogs.
2020-09-18 09:02:40 +02:00
Martin Milata
7d37b2c90f
common: add PromptTemporarily to SafetyChecks enum
2020-09-18 09:02:40 +02:00
Martin Milata
9d2ad96ad4
core: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Martin Milata
9f066e877d
common: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Martin Milata
163ccedb39
core: allow const() values to have Literal type
2020-09-18 09:02:40 +02:00
Tomas Susanka
cd1d5195fd
docs(core): add changelog for Oct release
2020-09-16 15:24:15 +02:00
Pavol Rusnak
65e20119ea
docs(changelog): fix typo
2020-09-15 14:25:02 +02:00
Andrew Kozlik
295710c37d
core/bitcoin: Check ownership proofs using the provided commitment data.
2020-09-08 19:36:10 +02:00
Andrew Kozlik
5d745d5d04
common/protob: Add commitment_data to TxInputType.
2020-09-08 19:36:10 +02:00
Dusan Klinec
9d7b0bf50c
xmr: fix new transaction type for CLSAG, HF=13
2020-09-07 17:50:38 +02:00
Andrew Kozlik
9774c99e90
core/tests: Fix unit tests for streamimg prev_tx after confirmation.
2020-09-04 14:36:39 +02:00
Andrew Kozlik
dad2852db9
core/bitcoin: Stream prev_tx after confirmation.
2020-09-04 14:36:39 +02:00
Tomas Susanka
ebc99435ab
Revert "core: remove ownership messages from the public api for now"
...
This reverts commit 0d5f00668f
.
2020-09-03 14:56:27 +02:00
Tomas Susanka
b99b8b3df3
Merge remote-tracking branch 'origin/release/2020-09'
2020-09-03 13:17:23 +02:00
Pavol Rusnak
c1dd07a2e4
core+legacy: update dates in changelogs
2020-09-02 15:36:36 +02:00
Martin Milata
f3fd98a7ba
core: remove 1px of space on the left of each glyph
...
For PixelOperator (T1) fonts only.
2020-09-01 19:57:46 +02:00
Martin Milata
b8bb63fbef
core: drop unused FONT_SIZE constant
2020-09-01 19:57:46 +02:00
Tomas Susanka
19461398d7
core/cardano: reuse derived Shamir seed ( fixes #1007 )
2020-09-01 16:14:41 +02:00
Tomas Susanka
0d5f00668f
core: remove ownership messages from the public api for now
2020-09-01 15:56:57 +02:00
Ondřej Vejpustek
09667a676e
core/tools: update hid-bridge readme
2020-09-01 14:18:57 +02:00
matejcik
e0583dd5cb
all: use a specific error code for "invalid session"
2020-08-28 15:37:06 +02:00
matejcik
4909821f35
core: implement EndSession
2020-08-28 15:37:06 +02:00
Martin Milata
c7934116ec
core: introduce TREZOR_MODEL flag ( #1233 )
2020-08-28 14:50:38 +02:00
Martin Milata
df5421e7d6
common/defs: update maxfee_kb to 10USD/tx
...
Except bitcoin.
(cherry picked from commit f51fac3410
)
2020-08-25 18:06:54 +02:00
Martin Milata
f51fac3410
common/defs: update maxfee_kb to 10USD/tx
...
Except bitcoin.
2020-08-25 18:05:29 +02:00
matejcik
032a65e1cf
python: export toif as public module
2020-08-25 11:30:33 +02:00
Pavol Rusnak
41f5237967
common/defs: enable extra_data for FLO
...
(cherry picked from commit 534695313c
)
2020-08-24 11:08:02 +02:00
Pavol Rusnak
534695313c
common/defs: enable extra_data for FLO
2020-08-24 11:06:12 +02:00
Tomas Susanka
d080464cc5
core, legacy: bump versions (also in changelogs)
2020-08-24 09:31:49 +02:00
Tomas Susanka
e137f196f8
core/changelog: update
2020-08-21 21:30:15 +02:00
Andrew Kozlik
f2d669ecdc
core/bitcoin: Use dynamic dispatch for confirmation dialogs in sign_tx.
2020-08-21 21:30:15 +02:00
Andrew Kozlik
02da5b7593
core/bitcoin: Show warning if nLockTime is set but ineffective due to all nSequence values being 0xffffffff.
2020-08-21 21:30:15 +02:00
Pavol Rusnak
146ee7af89
update changelogs
2020-08-21 21:30:15 +02:00
Pavol Rusnak
cdf0f68bb0
core: show passphrase on device
2020-08-21 21:30:15 +02:00
Pavol Rusnak
21b4c5b60e
core/bootloader_ci: fix typos in the previous commit
2020-08-21 14:47:35 +02:00
Ondrej Mikle
8d3d3be09c
core/bootloader_ic: introduce CI bootloader for TT device tests ( #1182 )
2020-08-21 14:39:56 +02:00
Martin Milata
1b982659c4
core: fix boot loop after uploading invalid homescreen ( #1205 )
2020-08-21 12:00:42 +02:00
Pavol Rusnak
0620911e46
core: allow spending coins from Bitcoin paths if the coin ...
...
has implemented strong replay protection via SIGHASH_FORKID
2020-08-21 11:49:03 +02:00
Alexis Hernandez
96c38315df
common/defs: enable extra_data for XSN ( #1208 )
2020-08-20 20:40:30 +02:00
Andrew Kozlik
dd540a2ccd
core/ui: Initialize Qr class properly.
2020-08-20 18:13:09 +02:00
gabrielkerekes
431a25b119
Add Cardano README.md
2020-08-20 16:02:10 +02:00
Pavol Rusnak
c3ce9de3ea
core: regenerate coins+tokens
2020-08-19 19:29:18 +02:00
Pavol Rusnak
fd87c62b68
common/defs: remove coins with no Trezor-compatible wallets
2020-08-19 19:29:18 +02:00
Martin Milata
71c5bc4e3b
ci: fail if coverage falls under threshold
2020-08-18 21:08:46 +02:00
Martin Milata
3f21e8f400
core: display coin name when signing message
...
Also when verifying message.
2020-08-18 13:45:49 +02:00
Martin Milata
927ee0812b
core: add hard limit for transaction fees
...
The hard limit is set to 10*fee_warning_threshold. The limit is not
enforced when `safety_checks` is set to "Prompt".
2020-08-17 16:12:33 +02:00
Tomas Susanka
c9dc38c9f3
core: allow 49/x not 49/x' for Casa
2020-08-17 08:54:08 +02:00
Pavol Rusnak
5536fbb98a
python: use stdlib blake2s on python 3.6+
...
commit 6d407c84d7
did not replace everything
2020-08-10 23:35:38 +02:00
Pavol Rusnak
d1973b7486
pipenv: update Pipfile
2020-08-08 18:03:32 +02:00
Pavol Rusnak
02b6656471
core: update changelog
2020-08-07 15:09:48 +02:00
Pavol Rusnak
4e11735d22
core/modtrezorui: remove prefill from text functions
...
use display.bar where needed to prefill the areas
2020-08-07 15:08:14 +02:00
matejcik
2e5771db79
core: add changelog entry
2020-08-07 13:54:32 +02:00
matejcik
5385617eda
core: increase address length limit to accomodate CRW ( fixes #1139 )
2020-08-07 12:45:43 +02:00
matejcik
51ea8ccecd
common: update token support
2020-08-07 11:49:26 +02:00
Pavol Rusnak
fd2ddbfb03
core+legacy: expand month names in changelogs
2020-08-05 23:07:11 +02:00
Pavol Rusnak
65805c9145
core: fix non-determinism in resources.py.mako
2020-08-05 17:10:22 +02:00
matejcik
cea634158a
core: make sure Homescreen is properly initialized ( fixes #1095 )
2020-08-05 14:22:06 +02:00
Tomas Susanka
16827c3135
core: make templates
2020-08-05 13:55:36 +02:00
Pavol Rusnak
3fffa9ae68
common/defs: enable XVG
2020-08-05 12:10:52 +02:00
gabrielkerekes
afa26e7560
Use correct paths for Cardano Byron witnesses
2020-08-04 20:35:13 +02:00
Andrew Kozlik
292d909235
core/base: Implement CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
8bcb3d8fb6
core/storage: Add delete() method to storage.cache.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
5c1f197602
common/protob: Add CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
a6c06b5c5f
core: Update changelog with CoinJoin flow.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
791a74aeb2
core/tests: Add unit tests for CoinJoinApprover and CoinJoinAuthorization.
2020-08-04 17:32:44 +02:00
matejcik
cd86f9f477
core/bitcoin: make change check more robust against short paths
2020-08-04 17:32:44 +02:00
Andrew Kozlik
07d9b780a6
core/bitcoin: Change CoinJoin round ID length to 32 bytes and remove rate limiting.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
377bff68f4
core/bitcoin: Implement DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
2c30dd62fc
common: Add DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
b9cfecb8b8
core/bitcoin: Support preauthorization in SignTx message for CoinJoin.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
97fc9b74ab
core/bitcoin: Implement CoinJoinApprover.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
472e853f0a
core/tests: Fix unit tests to work with BasicApprover in sign_tx.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
d6ee542deb
core/bitcoin: Move transaction confirmation logic from Bitcoin to BasicApprover class.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
00258f2d4d
core/bitcoin: Support preauthorization in GetOwnershipProof message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
c772de9d3c
core/bitcoin: Support preauthorization in @with_keychain decorator.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
208283e13e
core/bitcoin: Implement AuthorizeCoinJoin message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
48a331aa1d
core/bitcoin: Add CoinJoinAuthorization class.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
dc32a17335
core/bitcoin: Move BIP32_WALLET_DEPTH to common.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
bbab13f6e7
common/protob: Add AuthorizeCoinJoin message.
2020-08-04 17:32:44 +02:00
Ondřej Vejpustek
59002118c0
core/extmod: explicitly initialize automatic variables
2020-08-04 14:50:07 +02:00
gabrielkerekes
683d7420ff
Fix Cardano Shelley public key validation
...
In Shelley Cardano started using the purpose 1852'. Unfortunately,
we completely missed that the public key path validation fuction checks
for purpose 44' explicitly, which means that the user is shown a warning
when deriving public key with the purpose 1852'. Which is always when
"logging in" to a wallet. This commit should fix that.
I've also updated type hinting in get_public_key.
2020-08-04 13:03:57 +02:00
matejcik
c3afb93837
core/tests: improve test harness ( fixes #1157 )
2020-08-04 10:27:44 +02:00
Pavol Rusnak
efc5ccdaf0
core: remove src1
2020-08-03 15:59:57 +02:00
Tomas Susanka
16a5858544
core: add Casa/Greenaddress paths exceptions to Changelog
2020-08-03 15:51:35 +02:00
Martin Milata
e5bdca655a
core: don't scale emulator background image
...
Makes the emulator look nicer in tiling window managers.
2020-07-31 12:27:43 +02:00
Gabriel Kerekeš
c0eba979c6
Fix bare 'except' style error - catch Exception instead
...
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
2020-07-30 17:17:03 +02:00
gabrielkerekes
7a1e773b49
Validate transaction metadata
2020-07-30 17:17:03 +02:00
gabrielkerekes
f2ee450410
Include metadata in transaction signing
2020-07-30 17:17:03 +02:00
gabrielkerekes
0438f318b4
Bring back cbor.Raw - to be used for metadata
2020-07-30 17:17:03 +02:00
gabrielkerekes
1ed8b56b7c
Include Byron witness once for each input path
2020-07-30 17:17:03 +02:00
gabrielkerekes
7bf5cab840
Update sign_tx
...
Add certificates, withdrawals and metadata hash
2020-07-30 17:17:03 +02:00
gabrielkerekes
a25444efd1
Move to_account_path() to utils
2020-07-30 17:17:03 +02:00
gabrielkerekes
e92baf5b02
Update protobuf
2020-07-30 17:17:03 +02:00
Andrew Kozlik
7d07161efe
common/fido: Unify application labeling between U2F and FIDO2.
2020-07-30 15:29:54 +02:00
Pavol Rusnak
063aba910d
core: rename emulator to trezor-emu-core
2020-07-30 15:27:34 +02:00
matejcik
8502412dbc
core/emulator: assume -m main
when no arguments are provided
...
fixes #1115
2020-07-30 15:27:34 +02:00
Martin Milata
d955e3f1e5
core: rename class Overwintered to Zcashlike
2020-07-30 15:14:18 +02:00
Martin Milata
10387e1869
core: drop zcash v3 tx signing support
2020-07-30 15:14:18 +02:00
gabrielkerekes
6d02aa23d9
Raise wire.DataError when deriving invalid address type
2020-07-30 14:43:32 +02:00
gabrielkerekes
b5f3511c1c
Add support for script addresses in tx outputs
2020-07-30 14:43:32 +02:00
gabrielkerekes
f1b6056edb
Fix staking key hash message
...
When deriving an address with a foreign staking key Trezor would crash
due to forgotten `decode()` on hexlified staking key hash which was to
be displayed.
This wasn't discovered while testing because it weirdly would pass with
a `aaff00` string, but not with longer ones.
2020-07-30 14:43:32 +02:00
matejcik
c008600d08
core/debug: fail if wait_layout is sent without watch_layout
2020-07-29 11:50:47 +02:00
Pavol Rusnak
9a673db647
core: fix build on T1
...
file src/apps/base.py was added unconditionally breaking the T1 build
2020-07-28 12:12:53 +02:00
Pavol Rusnak
a6451dad46
core/fonts: update headers
2020-07-28 10:56:41 +02:00
Martin Milata
3021233eaf
core: remove unimports from bitcoin sign_tx layouts
2020-07-28 10:51:28 +02:00
Pavol Rusnak
47e7550423
core/extmod: add font_pixeloperator{,mono}, use this font for T1
2020-07-28 09:40:30 +02:00
Pavol Rusnak
cec87bba50
core: remove mono bold font variant (not used anywhere)
2020-07-27 23:22:34 +02:00
Pavol Rusnak
e6baaa7ed9
core/src1: use display.text instead of display.print
2020-07-27 17:40:34 +02:00
Pavol Rusnak
de43dde1e9
core: make emu.sh respect TREZOR_MODEL env variable
2020-07-27 17:38:55 +02:00
Pavol Rusnak
8bc32d035b
core/extmod: enable display_text* methods for other models than T
2020-07-27 17:24:13 +02:00
Pavol Rusnak
df03534955
core: print inverted question mark for nonprintable characters
2020-07-27 16:29:11 +02:00
Pavol Rusnak
89d701ed08
core+legacy: bump versions (also in changelogs)
2020-07-27 13:59:49 +02:00
matejcik
4eb5b927c0
core/cardano: simplify keychain implementation
2020-07-27 13:24:51 +02:00
Gabriel Kerekeš
d2c1624602
Cardano shelley update 2/3 ( #1112 )
2020-07-27 13:11:23 +02:00
gabrielkerekes
e1615e60ec
Update Cardano to support Shelley era 1/3
...
Update protobuf
- Previous transactions don't need to be sent anymore, because fee is
included in the transaction now. Thus transactions_count can be
removed from CardanoSignTx message and the CardanoTxAck and
CardanoTxRequest messages can be removed altogether.
- CardanoTxInputType.type is unused so remove it
Add NULL (None type) serialisation to CBOR
- Transaction metada must either have a valid structure or CBOR NULL
must be used (if metadata is empty) - it can't be simply left out.
Add protocol_magics file
- Just to have a nicer way of representing protocol magics
Update transaction signing
- Previous transactions no longer need to be requested
- Output building is simplified, since fee doesn't need to be calculated
- Remove transaction class since it is no longer needed (only functions
remained)
- Reorder functions so it reads top to bottom
Add protocol magic to byron address on testnet
- This has always been a part of the spec, but it hasn't been
implemented before, because it wasn't really needed.
Update trezorlib
Update tests
- Transaction messages are no longer required
- Expected values are different since tx format changed
- Common values in test cases have been extracted
Remove unused file
- Progress was used when receiving previous transactions
Add CRC check to output address validation
2020-07-27 13:04:49 +02:00
Pavol Rusnak
88aa3cf168
core: convert old changelogs to new format
2020-07-27 12:14:00 +02:00
Pavol Rusnak
8dacad0782
core/bootloader: update protobuf definitions
2020-07-26 00:00:37 +02:00
matejcik
fdcb64ac24
all: rename protobuf unsafe_prompts
to safety_checks
2020-07-24 16:37:58 +02:00
matejcik
19ad1dae8b
core/bitcoin: allow compatibility namespaces for Casa/Greenaddress
2020-07-24 16:37:58 +02:00
matejcik
b741560997
core/bitcoin: drop unused validate_path_for_bitcoin_public_key
2020-07-24 16:37:58 +02:00
matejcik
407375b0c4
core/bitcoin: move BITCOIN_NAMES to common
2020-07-24 16:37:58 +02:00
matejcik
8f8e793155
core, python: add changelogs
2020-07-24 16:37:58 +02:00
matejcik
fd8cb0e061
core/keychain: differentiate error message for ed25519 derivation
2020-07-24 16:37:58 +02:00
matejcik
0438f83a94
core: use public
as named argument instead of comment
2020-07-24 16:37:58 +02:00
matejcik
57b08c98ed
core: raise error on setting passphrase-on-device without passphrase
2020-07-24 16:37:58 +02:00
matejcik
58f460627f
core/tests: add unit tests for new functionality
2020-07-24 16:37:58 +02:00
matejcik
a461853cf6
core/tests: fix bitcoin unit tests
2020-07-24 16:37:58 +02:00
matejcik
c85d768b81
core: update references to keychain everywhere
2020-07-24 16:37:58 +02:00
matejcik
ff4ec2185e
core: refactor keychain to only support one curve at a time
...
also make a cleaner distinction between keychain, seed, path
This enables using `unsafe_prompts`, because with the original code, if
there was no namespace match, we wouldn't know which curve to use.
For ease of implementation, we use a LRU cache for derived keys,
instead of the original design "one cache entry per namespace".
SLIP21 is now treated completely separately, via `slip21_namespaces` and
`derive_slip21` method.
If more slip21-like things come in the future, we can instead hang them
on the keychain: put a per-curve Keychain object accessible by
`keychain[curve_name].derive()`, and the majority usecase will just pass
around `keychain[curve_name]` instead of having to specify the curve in
every `derive()` call.
Or alternately we'll just specify the curve in every `derive()` call,
whichever seems more appropriate.
2020-07-24 16:37:58 +02:00
matejcik
fa757f4b7f
core: improve type annotation for bip32.derive_path
2020-07-24 16:37:58 +02:00
matejcik
8e44132d3c
core: replace load_settings with individual setters
2020-07-24 16:37:58 +02:00
matejcik
1109250dcf
core: add option to allow unsafe prompts
2020-07-24 16:37:58 +02:00
Martin Milata
03f2dab6bc
core: reduce gc.collect calls during bitcon sign_tx
2020-07-24 15:35:09 +02:00
matejcik
c3a61998cb
core: generate resdata by Mako, use if/elif trick to save RAM
2020-07-24 14:09:31 +02:00
matejcik
125079a8a4
core: add changelog entry for synchronous protobuf
2020-07-24 14:09:31 +02:00
matejcik
7befdd07e4
core/tests: update unit tests
2020-07-24 14:09:31 +02:00
matejcik
5e7fd3aea6
core: use utils.BufferReader instead of apps.common.BytearrayReader
2020-07-24 14:09:31 +02:00
matejcik
1ff4a0d239
core: separate BufferIO into Reader (read-only) and Writer
...
also integrates BytearrayReader API into BufferReader
2020-07-24 14:09:31 +02:00
matejcik
3514a31bc9
core: make USB codec resilient to OOM conditions
2020-07-24 14:09:31 +02:00
matejcik
0a758b8181
core/tests: add synchronous protobuf tests
2020-07-24 14:09:31 +02:00
matejcik
31e2170766
core: make protobuf buffer smaller, dynamically allocate bigger if necessary
2020-07-24 14:09:31 +02:00
matejcik
a000ea5ec8
core/monero: update Monero app to use synchronous protobuf
2020-07-24 14:09:31 +02:00
matejcik
01d695283f
core: make protobuf buffer bigger
2020-07-24 14:09:31 +02:00
matejcik
0c3bc53aee
core: clean up types for field caching, fix count_message
2020-07-24 14:09:31 +02:00
matejcik
f723dca7b1
core: enable PYSTACK
2020-07-24 14:09:31 +02:00
matejcik
d568afa80d
core: improve protobuf field caching
2020-07-24 14:09:31 +02:00
matejcik
85d74ece76
core: implement synchronous v1 codec
2020-07-24 14:09:31 +02:00
Tomas Susanka
34bd57006f
core, legacy: set version of the upcoming release in Changelog
2020-07-24 12:33:46 +02:00
Martin Milata
fd117a0c9f
core: raise error on auto-lock value out of range
2020-07-22 21:38:42 +02:00
Andrew Kozlik
4005f4832f
core/embed: Set VCP write timeout to 0.
2020-07-16 09:34:58 +02:00
Ondrej Mikle
33d2bf417b
core: replace bootloader only in production. Fix device for T1 core port JLink upload
2020-07-13 10:45:32 +02:00
matejcik
051763575d
core: touch idle timer in keyboards ( fixes #1099 )
2020-07-10 14:05:52 +02:00
matejcik
2c4ecff0a4
core: fix synthetic events breaking io.poll delay calculation
2020-07-10 14:05:52 +02:00
Andrew Kozlik
eb28998f98
core/bitcoin: Support multiple change-outputs.
2020-07-09 15:51:23 +02:00
matejcik
2c8e5f527b
all: rename changelogs to .md for highlighting
2020-07-08 10:43:40 +02:00
matejcik
a19a9a318a
all: improve changelog formatting
2020-07-08 10:43:40 +02:00
matejcik
476cf2ee8f
core, legacy: more changelog entries
2020-07-08 10:43:40 +02:00
Pavol Rusnak
57ae902aed
core/monero: don't download test binary even if hash is different
2020-07-03 15:18:38 +02:00
Pavol Rusnak
5d666376f0
core/monero: update tests binary
2020-07-03 15:18:38 +02:00
Andrew Kozlik
37f4dcc7e5
core/bitcoin: Rename witness_p2wsh() to witness_multisig().
2020-07-03 11:17:19 +02:00
Andrew Kozlik
91b615c217
core: Update changelog.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
9cd600f79e
core/bitcoin: Add special confirmation screen for transactions with external inputs.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
64d9350de2
core/bitcoin: Implement GetOwnershipId message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
533de50588
common/protob: Add GetOwnershipId message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
712ec68c1b
core/bitcoin: Add support for external inputs with proof of non-ownership.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
956ea9a94f
common: Add ownership_proof field to TxInputType.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
791ff3fe06
core/tests: Add unit tests for SLIP-0019 proofs of ownership.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
d4317d1536
core/bitcoin: Implement generation and verification of SLIP-0019 proofs of ownership.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
d52de28704
core/bitcoin: Implement BIP-322 SignatureProof container.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
c723c78529
common/protob: Add GetOwnershipProof message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
d48a372ca7
core/sign_tx: Implement support for signed external inputs.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
78f14d286e
core/sign_tx: Factor out get_legacy_tx_digest() from sign_nonsegwit_input().
2020-07-03 11:17:19 +02:00
Andrew Kozlik
61e2d4d5e5
core/bitcoin: Implement signature verifier.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
5378e12ba2
core/bitcoin: Clarify hash_type vs. sighash_type terminology.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
d1e043f417
core/bitcoin: Implement parsing of scripts and witnesses for signature verification.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
173bb7ed13
core/bitcoin: Replace TxInputType parameter in input_derive_script.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
a901573ea2
core/bitcoin: Move script types from helpers to common.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
3b6c1e5e6b
core/crypto: Add functions for verifying DER encoded signatures.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
9459c5a5c2
core/common: Add BytearrayReader and basic reader functions.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
99f01cd316
core/sign_tx: Check script_pubkeys of inputs.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
cc655575c8
common: Add witness field to TxInputType.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
872768928b
core/crypto: Fix endianity in DER length encoding.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
e7f230d66e
core/sign_tx: Use varint length encoding for witness stack items.
2020-07-03 11:17:19 +02:00
Tomas Susanka
3a3e5739b0
core, legacy: update changelogs
2020-07-02 09:09:34 +00:00
Tomas Susanka
fc9eb63114
core: add previous commit to changelog
2020-07-01 17:37:47 +00:00
Tomas Susanka
0f9a2459d3
core: make QR code smaller for Monero
2020-07-01 17:20:04 +00:00
Tomas Susanka
ca3dd2bfb9
common: skip deprecated fields during generation; deprecate overwintered field in Zcash
2020-06-30 16:02:21 +02:00
matejcik
e6e3043096
all: implement support for pre-overwinter prevtx ( fixes #1030 )
2020-06-30 15:19:31 +02:00
Andrew Kozlik
f382f77c89
core/ui: Fix repaint bug in QR code rendering #1067 .
2020-06-25 12:25:41 +02:00
Tomas Susanka
e534ae3ad7
legacy, core: rename Features.pin_cached to unlocked and unify
2020-06-19 21:26:36 +02:00
Tomas Susanka
b6c8cbc24c
core: add 'initialized' to changelog
2020-06-16 11:31:29 +02:00
Tomas Susanka
a6acefbdf5
core: wipe before reset and recovery; introduce 'intialized' field
2020-06-16 11:31:29 +02:00
Andrey
1eeaa1e5cf
Enable extra_data for Zcoin. Changed coininfo.py
2020-06-15 09:53:00 +02:00
Tomas Susanka
b67be7dd9e
core: forbid all settings if not initialized
2020-06-11 18:47:01 +02:00
Tomas Susanka
f8b2f0bb7b
changelogs: change also bootloader changelogs to the new format
2020-06-11 15:48:38 +00:00
Tomas Susanka
9979af3cd2
changelogs: start using more detailed changelog
2020-06-11 17:43:40 +02:00
Tomas Susanka
981d079d7f
core/signverify: add failsafe for an empty message header
2020-06-11 09:08:50 +02:00
Tomas Susanka
56fe5adcfc
Merge branch 'release/2020-06'
2020-06-10 06:51:18 +00:00
Andrew Kozlik
d1690f4317
core/tools: fix pixel-perfect mode for centered text in dialog-designer
2020-06-09 13:31:42 +02:00
Pavol Rusnak
179645e3ad
core: unify usage of TREZOR_MODEL
2020-06-06 21:06:15 +02:00
Ondrej Mikle
c877dc8dd6
core: port storage to T1
2020-06-06 21:06:15 +02:00
Pavol Rusnak
2815b62838
core/tools: implement "pixel-perfect" mode for dialog-designer tool
2020-06-05 14:11:59 +00:00
Pavol Rusnak
5262ef84cf
common/defs/fido: add aws and tutanota
2020-06-05 14:53:13 +02:00
Andrew Kozlik
9c61257e8e
core: Use the Lock icon in the PIN entry dialog only when the device is actually locked.
2020-06-05 11:52:56 +02:00
Pavol Rusnak
5ed64a0736
core/tools: refactor dialog-designer tool
2020-06-04 21:39:47 +02:00
Pavol Rusnak
d9d5511858
core/tools: add quick'n'dirty dialog-designer tool
2020-06-04 19:56:42 +02:00
matejcik
7579ac5274
core: fix rendering issues in homescreens
2020-06-04 16:18:46 +02:00
matejcik
9df7c84c56
core/ui: lower lockscreen brightness
2020-06-04 16:18:46 +02:00
matejcik
8fa7684a9c
core: set a scheduler-safe maximum for autolock
2020-06-04 16:18:46 +02:00
matejcik
872e0fb0e0
core: lower scheduler resolution to milliseconds
...
This avoids problems with large timeouts causing the scheduler queue to
think the time counter has overflown, and ordering the autolock task before
immediate tasks.
The maximum reasonable time difference is 0x20000000, which in
microseconds is ~8 minutes, but in milliseconds a more reasonable ~6
days.
2020-06-04 16:18:46 +02:00
matejcik
847691798b
core: simplify homescreen and lockscreen implementations
2020-06-04 16:18:46 +02:00
matejcik
4bc865794f
core: only unlock storage if it is locked (solves determinism issue in tests)
2020-06-04 16:18:46 +02:00
matejcik
ffa7790ed5
core: start USB after booting apps
...
This prevents a race condition where sometimes an Initialize message
could arrive before the homescreen was fully booted -- and Recovery
homescreen would cancel it as part of its bootup sequence.
2020-06-04 16:18:46 +02:00
matejcik
70f67883c5
core: fix artifacts in click-based UI tests
2020-06-04 16:18:46 +02:00
matejcik
a9d8fd3992
core: debuglink interface avoids workflow management
...
This will have unintended consequences if you call a wirelink function
on the debulink interface. TT allows this ... and will behave badly.
2020-06-04 16:18:46 +02:00
matejcik
bc9247e18d
core: add Cancel to a list of allowed messages while locked
2020-06-04 16:18:46 +02:00
matejcik
f32c2f9e23
core: replace workflow.kill_default with workflow.close_others
2020-06-04 16:18:46 +02:00
matejcik
01832d5ae9
core: call close_others() in place of ButtonRequest
...
this makes sense, really: close_others() requests UI exclusivity, and
that is something that generally happens at the same places we emit a
ButtonRequest
2020-06-04 16:18:46 +02:00
matejcik
6f53ca0ac6
core: rework wait_layout()
...
The original wait_layout was unreliable, because there are no guarantees
re order of arrival of the respective events. Still, TT's event handling
is basically deterministic, so as long as the host sent its messages
close enough to each other, the order worked out.
This is no longer the case with the introduction of loop.spawn: TT's
behavior is still deterministic, but now ButtonAck is processed *before*
the corresponding wait_layout, so the waiting side waits forever.
In the new process, the host must first register to receive layout
events, and then receives all of them (so the number of calls to
wait_layout must match the number of layout changes).
DebugLinkWatchLayout message must be version-gated, because of an
unfortunate collection of bugs in previous versions wrt unknown message
handling; and this interests us because upgrade-tests are using
wait_layout feature.
2020-06-04 16:18:46 +02:00
matejcik
5d823ff5ea
core: use ButtonRequestType.PinEntry for PIN entry
2020-06-04 16:18:46 +02:00
matejcik
bbfce4e303
common: introduce ButtonRequestType.PinEntry
2020-06-04 16:18:46 +02:00
matejcik
3dbd9c9eca
core/loop: prevent finalizers from doing things when task is closed externally
2020-06-04 16:18:46 +02:00
matejcik
42e7c43c7c
core: make sure that auto-lock shuts down running workflows
2020-06-04 16:18:46 +02:00
matejcik
2d0206c043
core: replace workflow.on_start/on_close with workflow.spawn
2020-06-04 16:18:46 +02:00
matejcik
02565f3bfb
core/loop: introduce spawn syscall
2020-06-04 16:18:46 +02:00
matejcik
a4f47ddd21
core/lockscreen: ignore exception when user taps "unlock" and then cancels
2020-06-04 16:18:46 +02:00
matejcik
7ff1251ee1
core: dim lockscreen ( fixes #974 )
2020-06-04 16:18:46 +02:00
matejcik
4035aad51b
core: implement auto-lock after a configurable timeout ( fixes #75 )
2020-06-04 16:18:46 +02:00
matejcik
67b723e4ca
core: add a global idle timer
2020-06-04 16:18:46 +02:00
Andrew Kozlik
5469acfabf
core/webauthn: Cache user verification for 3 minutes.
2020-06-04 16:18:46 +02:00
Andrew Kozlik
b867ac1d01
core/webauthn: Implement FIDO2 unlocking from softlock.
2020-06-04 16:18:46 +02:00
Andrew Kozlik
0f81886c9f
core/webauthn: Allow confirm_dialog() to return a new state as an alternative to the user response.
2020-06-04 16:18:46 +02:00
Andrew Kozlik
c8ae5c157e
core/webauthn: Implement U2F unlocking from softlock.
2020-06-04 16:18:46 +02:00
matejcik
06aed7135a
core: do not prompt for PIN just to lock the device again
2020-06-04 16:18:46 +02:00
matejcik
2cedc687e6
core: disable trezor-crypto BIP32 cache
2020-06-04 16:18:46 +02:00
matejcik
246998910a
core: refactor usage of input_signals
...
this prevents a certain class of UI test failure. It also localizes the
use of debuglink signals into the layout classes instead of call sites,
which is a design we were already using for confirm_signals
2020-06-04 16:18:46 +02:00
matejcik
afeeafd5cd
core: hide some fields when softlocked
2020-06-04 16:18:46 +02:00
matejcik
b9bd9ea3d0
core: only softlock when PIN is set
2020-06-04 16:18:46 +02:00
matejcik
a9ddc2a8e2
core/boot: modify initial lockscreen label
2020-06-04 16:18:46 +02:00
matejcik
09af8aed4e
core: consider lockscreen to be a separate homescreen
...
this involves some changes to the workflow defaults:
* workflow.start_default() takes no arguments
* workflow.set_default() (originally replace_default) configures the
default that will be started by next call to start_default().
The intended usecase is to set_default() first and then start it
separately.
* apps.base.set_homescreen() factors out the logic originally in
main.py, that decides which homescreen should be launched. This uses
set_default() call. start_default() is then used explicitly in main.py
2020-06-04 16:18:46 +02:00
matejcik
d73480bc9d
core: introduce PIN soft-locking
2020-06-04 16:18:46 +02:00
matejcik
04c8b2803d
core: refactor homescreen app, include lockscreen in it
2020-06-04 16:18:46 +02:00
matejcik
9197623d83
core: factor out the decision whether to lock the device
2020-06-04 16:18:46 +02:00
matejcik
0600d87c8c
common: rename ClearSession to LockDevice, introduce EndSession
2020-06-04 16:18:46 +02:00
matejcik
32fcc4ad9c
core: make verify_user_pin accept a Context argument
2020-06-04 16:18:46 +02:00
matejcik
8ca7ffc3b8
core: use wire.PinCancelled/PinInvalid instead of custom versions
...
also refactor show_pin_invalid and its usages so that it raises directly
note that we are now using PinCancelled instead of ActionCancelled where
appropriate
2020-06-04 16:18:46 +02:00
matejcik
eabfcab9b9
core: add default messages to some error codes
2020-06-04 16:18:46 +02:00
matejcik
341c5b7d10
core/wire: make handler lookup pluggable
2020-06-04 16:18:46 +02:00
matejcik
837c4df61f
core: expose storage_is_unlocked() as config.is_unlocked()
2020-06-04 16:18:46 +02:00
matejcik
87433995b0
core: add BITCOIN_ONLY to mock file
2020-06-04 16:18:46 +02:00
matejcik
d5e45c02bb
core: move base functions from "homescreen" app to "base"
2020-06-04 16:18:46 +02:00
Tomas Susanka
8859d103f4
core, legacy: bump versions
2020-06-03 15:39:25 +00:00
Tomas Susanka
e2629eb921
core, legacy: update Changelogs to reflect the release
2020-06-03 15:35:30 +00:00
matejcik
bd5b3a3f21
common: drop Theta and VeChain ERC tokens, refresh market caps
...
fixes #1022
fixes #1023
2020-05-29 12:12:30 +02:00
matejcik
5209804fc3
core: relax path checks on GetPublicKey
...
(cherry picked from commit 554d8949f5
)
2020-05-27 06:58:30 +00:00
matejcik
554d8949f5
core: relax path checks on GetPublicKey
2020-05-27 08:56:50 +02:00
matejcik
d59ffe553f
make gen
2020-05-25 16:14:05 +02:00
Ondřej Vejpustek
24ceb0ab6b
crypto/bignum: change limb size to 29, add tests
2020-05-24 14:36:38 +00:00
Andrew Kozlik
cb32ae2e4b
core/tests: add request_meta queries to unit tests (needed for transaction streaming)
2020-05-24 14:36:38 +00:00
Andrew Kozlik
42eddf8e04
core/sign_tx: validate prevout amount in all cases
2020-05-24 14:36:38 +00:00
Andrew Kozlik
7db3e930d4
core/sign_tx: Add further message sanitization checks.
2020-05-24 14:36:37 +00:00
matejcik
72ef86d79a
all: enable extra_data for komodo
2020-05-24 14:36:37 +00:00
matejcik
7a3637d5b0
core/sign_tx: add checks for version_group_id and branch_id fields
2020-05-24 14:36:37 +00:00
Ondrej Mikle
b01b24f090
core: change startup firmware file from .s to .S which enables preprocessing and fixes TT boot
2020-05-24 12:28:38 +02:00
Tomas Susanka
675ff459db
core, legacy: update changelogs
2020-05-22 11:55:55 +00:00
Tomas Susanka
9dfc08ca61
core/bitcoin: drop decred_script_version
2020-05-21 19:14:39 +02:00
matejcik
eeb46eabca
common: refresh token list
2020-05-21 13:29:13 +02:00
matejcik
2f665c8f84
core: add exception to GetPublicKey for PSBT master fingerprint ( fixes #999 )
2020-05-21 13:26:53 +02:00
Ondrej Mikle
10f0f107e0
core: Adds T1 core port FW flashing options for for openocd and jlink
2020-05-21 10:05:12 +02:00
Ondrej Mikle
0d65d684f0
core: T1 port can run on T1 bootloader with MEMORY_PROTECT=0
2020-05-21 08:49:59 +02:00
Tomas Susanka
a2f790167d
core/bitcoin: fix step 1 and 2 comments in signing
2020-05-19 12:58:45 +00:00
Tomas Susanka
1ac0f60550
core: update isort config to place relative imports last
2020-05-18 14:31:51 +02:00
Tomas Susanka
aa115b6320
core: move decred writers to decred.py
2020-05-18 14:31:51 +02:00
Tomas Susanka
3084ee1eed
core/bitcoin: move write_bitcoin_varint to common writers
2020-05-18 14:31:51 +02:00
Tomas Susanka
445f56d387
core/bitcoin: finalize bitcoin refactor
...
- core/bitcoin: move common files to the app's root
- core/bitcoin: use require_confirm instead of confirm
- core: move bitcoin unrelated functions from 'bitcoin' to a new 'misc' app
- core/bitcoin: use relative imports inside the app
- core: rename wallet app to bitcoin
- core/wallet: replace SigningErrors and the other exception classes with wire.Errors
2020-05-18 14:31:51 +02:00
matejcik
aa52fc3903
core/extmod: drop unused rfc6979 module
2020-05-18 14:31:00 +02:00
matejcik
050936d0d7
core: enable finalizers on extmod classes
2020-05-18 14:31:00 +02:00
matejcik
123b07e3ad
core: drop support for pre-registering keychain namespaces
2020-05-15 16:30:41 +02:00
matejcik
3e06f4779a
core/tests: add new keychain tests
2020-05-15 14:08:29 +02:00
matejcik
de9e73dcbc
core/tests: update unit tests for new keychain API
2020-05-15 14:08:29 +02:00
matejcik
f3f6e2101a
core/cardano: explanation about seed derivation
2020-05-15 14:08:29 +02:00
matejcik
a31b2cd1bc
core/wallet: implement keychain for apps.wallet
2020-05-15 14:08:29 +02:00
matejcik
0dff3853a7
core/ethereum: introduce custom keychain decorators
2020-05-15 14:08:29 +02:00
matejcik
b594248ac2
core: use new keychain decorators where appropriate
2020-05-15 14:08:29 +02:00
matejcik
fd9e945308
core/cardano: use caching decorators and new Keychain API for Cardano as well
2020-05-15 14:08:29 +02:00
matejcik
7541d529a3
core: refactor keychain API, introduce SLIP44 decorator
2020-05-15 14:08:29 +02:00
matejcik
8c4cb58098
core: introduce caching decorators
2020-05-15 14:08:29 +02:00
matejcik
63dfcb17a7
core: make mypy happy about importing fatfs
2020-05-15 14:08:29 +02:00
matejcik
7f2e7b0003
core: add Ethereum constants to mocks
2020-05-15 14:08:29 +02:00
Pavol Rusnak
6704ed86a1
Merge pull request #995 from trezor/omikle/t1-core-port
...
core port to Trezor One
2020-05-14 16:48:18 +02:00
Ondrej Mikle
7eddafe487
core: better formatting for common parts of T1 and TT header
2020-05-14 16:10:42 +02:00
Ondrej Mikle
c4c341b3f9
core: setup stack when running core on T1
2020-05-14 12:46:25 +02:00
Dusan Klinec
6b8fc9c894
xmr: major protocol upgrade, CLSAG support added
...
- CLSAG signature scheme added
- type hints added
xmr: optimize protocol, send only required data
- real_out_additional_tx_keys contains only one element as nothing more is needed during signature
- only src_entr.outputs[index] is HMACed and always present. Other outputs are present only if needed which reduces comm and CPU overhead.
- getting rid of subaddresses dictionary (memory requirements), now subaddr indices are present per source entry so keys are computed when needed
xmr: prepare for permutation sending removal, specify index
- specify source entry ordering index prior sorting by key images as original HMAC keys are generated based on these.
- permutation checked just by valid HMACs, size of the set, key image sort order
- sending permutation is now deprecated, will be removed in the following protocol versions
- more strict state transition checks, guard strict check with respect to steps ordering
2020-05-13 11:13:19 +02:00
Tomas Susanka
25d2d130a0
tests: use maxfail
option for fido2 tests
2020-05-12 09:48:23 +00:00
Ondrej Mikle
fb5a220b46
core: use legacy sign script for T1 core port binary to be flashable
2020-05-11 18:05:46 +02:00
Ondrej Mikle
e429085e96
core: copy firmware header for T1 port into final binary
2020-05-11 17:33:47 +02:00
Ondrej Mikle
d8115a7992
core: firmware header for T1 port
2020-05-11 15:43:43 +02:00
Tomas Susanka
53c43ac305
core/tests: initialize emu with slip14 before running fido2 test suite
2020-05-06 14:36:04 +00:00
Andrew Kozlik
3de565c33c
core/sign_tx: In write_tx_header() rename has_segwit parameter to witness_marker and clarify usage.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
846116a666
core/sign_tx: Improve comments.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
7370077d0c
core/sign_tx: Get rid of internal TxOutputBinType messages.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
9f9618944a
core/sign_tx: Explicitly pass script to write_tx_input() instead of setting it in txi.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
04bdf1dc6c
core/sign_tx: Remove unused index parameters.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
c9814e50ba
core/sign_tx: Set decred_script_version to 0 by default for decred coins.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
dccf415e0b
core/sign_tx: Add write_tx_output() to signer class and override it in Decred.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
bdd1d25979
core/sign_tx: Require change-outputs to be for a non-zero amount.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
d5faeb3f51
core/sign_tx: Clarify sign_nonsegwit_input().
2020-05-06 13:18:32 +02:00
matejcik
9005093435
core/sign_tx: improve documentation on MatchCheckers
2020-05-06 13:18:32 +02:00
matejcik
0209768ff2
core/sign_tx: improve type hints
2020-05-06 13:18:32 +02:00
matejcik
ff41e5c304
core/sign_tx: improve signer selection readability
2020-05-06 13:18:32 +02:00
Andrew Kozlik
8b89a30955
core/sign_tx: Remove get_prevouts_hash(), get_sequence_hash(), get_outputs_hash() methods from signer classes, because they are only used internally.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
22933587be
core/sign_tx: Merge bip143 classes into signer classes.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
6ad3baeab2
core/sign_tx: Refactor BIP-143 signing.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
d58cd3987b
core/sign_tx: Minor updates based on code review.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
be39f271b0
core/sign_tx: Rework transaction footer writing.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
b60f267da9
core/sign_tx: Rework transaction header writing.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
c1effcc374
core/sign_tx: Updates based on code review.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
c2a0f83558
core/sign_tx: Move script derivation to scripts module.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
d0b80bddc8
core/tests: Fix unit tests after sign_tx refactor.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
be7e98aa47
core/sign_tx: Move Bitcoin class to bitcoin.py.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
a07e125793
core/sign_tx: Consolidate wallet path and multisig fingerprint checking.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
27e6720f3d
core/sign_tx: cleanup
2020-05-06 13:18:32 +02:00
Andrew Kozlik
987b70f1f5
core/sign_tx: Move header prepending up by one level.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
2ceb091d68
core/sign_tx: Use a preallocated buffer for transaction serialization.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
555259d6a9
core/sign_tx: Remove last_output_bytes in Decred, which is no longer needed.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
f1801764a1
core/sign_tx: Fix segwit/non-segwit input interleaving bug.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
514f2ac649
core/sign_tx: Refactor to use template method.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
95fad83024
core/sign_tx: Derive Zip143 and DecredPrefixHasher from Bip143.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
e9900df18d
core/sign_tx: Move Overwintered class to zcash.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
60dbec95ac
core/sign_tx: Reuse get_prevtx_output_value() in Decred.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
2b74513e49
core: Fix mypy.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
50c08274b9
core/sign_tx: Move overwintered functionality to separate class.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
c190eed7fc
core/sign_tx: Move non-Bitcoin functionality to Bitcoinlike class.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
613c81ea66
core/sign_tx: Refactor wallet_path functions and input_check_multisig_fingerprint.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
0d9984671e
core/sign_tx: Fix typing.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
79c60615de
core: Fix typing.
2020-05-06 13:18:32 +02:00
Andrew Kozlik
ba8b34b2d7
core: Refactor signing.
2020-05-06 13:18:32 +02:00
Pavol Rusnak
066866488b
core: add temporary "src1" folder
2020-05-04 16:00:29 +00:00
matejcik
a623799a11
core: remove f-strings from headertool (python 3.5 compatibility)
2020-05-04 11:29:03 +02:00
Pavol Rusnak
25cc836660
core/extmod: fix build of modtrezorui when TREZOR_MODEL is set to '1'
2020-04-30 15:07:26 +00:00
Tomas Susanka
20d66adddd
core: disable passphrase_always_on_device when turning off passphrase
2020-04-28 14:54:18 +02:00
Tomas Susanka
47f104bceb
core, legacy: bump versions
2020-04-24 17:12:20 +00:00
Pavol Rusnak
4b5a84eab7
core+legacy: update changelogs
2020-04-16 14:20:18 +02:00
Ondřej Vejpustek
c461692f3a
core: implement random delay interrupts
2020-04-16 11:51:28 +02:00
Ondřej Vejpustek
d5bfe6b32f
crypto: add chacha_drbg
2020-04-16 11:51:28 +02:00
matejcik
72cde5a57d
core: disallow parsing options after command ( fixes #951 )
2020-04-16 11:24:15 +02:00
matejcik
5885978c83
Merge branch 'release/2020-04'
2020-04-15 15:00:23 +02:00
Andrew Kozlik
9e4a8ca785
core/webauthn: Improve error codes for uninitialized device. Return ERR_OPERATION_DENIED only upon user decline or timeout, otherwise it cancels the operation on all connected authenticators.
2020-04-14 12:24:17 +02:00
matejcik
2ccebd3175
core: raise SystemExit when exitting emulator (now that sys.exit is removed)
2020-04-14 10:17:37 +02:00
matejcik
4bddeefea0
core: unify mpconfigports for emulator and board
...
Changes in firmware/mpconfigport.h are minimal:
* $VFS_FAT is dropped because it is irrelevant without $VFS
* $REVERSE_SPECIAL_METHODS is added, to push down on code size
* $THREAD is disabled unconditionally
unix/mpconfigport.h is reordered and modified to match
firmware/mpconfigport.h as much as possible, while selectively enabling
some needed features.
Notably, $USE_READLINE is enabled unconditionally
2020-04-14 10:17:37 +02:00
matejcik
d0f709b8cc
core: fix and use MAKEMODULEDEFS instead of explicit registration
2020-04-14 10:17:37 +02:00
matejcik
a6976355c3
core: remove readline from built firmware
2020-04-14 10:17:37 +02:00
Dusan Klinec
25b6e9058f
xmr: proto - add fields for protocol optimization
2020-04-13 22:19:56 +02:00
Andrew Kozlik
bc4e8eaa16
core/webauth: Update readme with Ed25519 algorithm and certificates.
2020-04-09 21:05:28 +02:00
Pavol Rusnak
197218338a
Merge pull request #936 from trezor/rework-serialize-deserialize
...
crypto: rework serialize/deserialize API
2020-04-09 09:53:23 +02:00
matejcik
eec0615444
core: drop sys.pyi from mocks ( fixes #934 )
...
A change introduced in mypy 0.770 disallows overriding some system
modules, including `sys`.
We only need the override for `sys.print_exception`, and the simplest
solution is to make mypy ignore that particular call.
2020-04-08 11:19:26 +02:00
Andrew Kozlik
c57bc62a05
core/tools: Add attestation certificate generator for FIDO2.
2020-04-06 18:29:05 +02:00
Andrew Kozlik
fca92d7344
core/webauthn: Update attestation certificate to comply with WebAuthn requirements.
2020-04-06 18:29:05 +02:00
Pavol Rusnak
a7806d08d7
core/crypto: remove unused bip32.deserialize function
2020-04-06 18:04:24 +02:00
Pavol Rusnak
1695228d80
core/crypto: remove unused serialize_private function
2020-04-06 15:49:36 +00:00
Pavol Rusnak
f07ff17fad
core/crypto: add missing field to Blake2b constructor
2020-04-06 12:28:36 +00:00
Andrew Kozlik
25a39ea729
core/webauthn: Fix handling of interleaving frames to comply with the U2F HID specification.
2020-04-06 09:53:42 +02:00
jagdeep sidhu
e58c5f63d5
common/defs: update SYS ( #928 )
2020-04-02 00:22:47 +02:00
Tomas Susanka
0b7a8449f8
core: style
2020-03-30 16:04:05 +00:00
Tomas Susanka
bf20537f41
core: add option to omit cancel button in HoldToConfirm; add it to reset
2020-03-30 16:00:12 +00:00
Pavol Rusnak
336a417233
core/bootloader: distinguish between a vendor change and downgrade with wipe
2020-03-25 15:15:12 +01:00
Andrew Kozlik
8ae0535e69
core/webauthn: Fix attestation statement format to use a list in the x5c field.
2020-03-24 16:18:37 +01:00
Tomas Susanka
aa71c20f2c
core: require hold to confirm
2020-03-24 09:20:10 +00:00
Ondrej Mikle
634ed5aabc
core: commands for flashing via JLink ( #911 )
2020-03-23 10:40:06 +01:00
Tomas Susanka
025436db47
core/changelog: add FIDO2's Ed25519
2020-03-23 08:00:31 +00:00
Tomas Susanka
f786d75a6f
core: drop obsolete check for ANYONECANSPEND segwit outputs
2020-03-20 14:19:31 +00:00
Tomas Susanka
d0d41c884e
legacy: move script type checks to separate functions and unify with core
2020-03-20 14:19:31 +00:00
matejcik
bd9e15bb8c
core/tests: add unit tests for prevhash writers
2020-03-20 14:19:31 +00:00
matejcik
a9faa4d4ab
core/tests: fix inline variant of assertRaises
...
otherwise code like the following would fail:
>>> self.assertRaises(AssertionError, ensure, False)
because the AssertionError raised internally by `ensure` would be
conflated with the AssertionError raised by the tested function
2020-03-20 14:19:31 +00:00
matejcik
da89a17ce5
all: add checks for prev_hash size
2020-03-20 14:19:31 +00:00
matejcik
c15519f707
core/sign_tx: modify get_tx_header to avoid writing unchecked bytes
2020-03-20 14:19:31 +00:00
matejcik
9cab61fbd3
core/sign_tx: remove write_bytes_unchecked where appropriate
2020-03-20 14:19:31 +00:00
matejcik
27f6306e1d
core: introduce safer write_bytes functions
2020-03-20 14:19:30 +00:00
matejcik
9a5f6b025a
core/tezos: factor out writing Michelson instructions
2020-03-20 14:19:30 +00:00
matejcik
694f714719
core/ripple: rename write_bytes to avoid name collision
2020-03-20 14:19:30 +00:00
Tomas Susanka
64584e271c
legacy, core: add and unify validation checks
2020-03-20 14:19:30 +00:00
matejcik
ffdb299c61
all: drop Capricoin support [NO BACKPORT]
2020-03-20 14:19:30 +00:00
matejcik
adea7d6b35
all: make timestamp mandatory on timestamp-enabled coins
2020-03-20 14:19:07 +00:00
matejcik
e2035b4972
all: drop Horizen and BIP-115 support [NO BACKPORT]
2020-03-20 14:19:07 +00:00
matejcik
6f9c6361ea
core: remove negative_fee and cashaddr_prefix from bitcoin-only fw
2020-03-20 14:18:27 +00:00
matejcik
7d5771911c
core: flip condition for force_bip143
...
this should be equivalent because Bitcoin does not have force_bip143 set
2020-03-20 14:18:27 +00:00
matejcik
ed464f3d47
all: ensure expiry, timestamp and extra_data are blocked as appropriate
2020-03-20 14:18:27 +00:00
matejcik
27803ee8c1
all: drop overwintered field from transaction
2020-03-20 14:18:27 +00:00
matejcik
c9fd3f77a5
all: add overwintered field to coin specification
2020-03-20 14:18:27 +00:00
Pavol Rusnak
817b922850
all: add extra_data and timestamp fields to coin specification
2020-03-20 14:18:27 +00:00
matejcik
136307bcae
core: propagate coin info to all sanitize functions
2020-03-20 14:17:44 +00:00
matejcik
303c05aba7
core/sign_tx: check if prev_tx has enough outputs to match prev_index
2020-03-20 14:17:44 +00:00
Andrew Kozlik
a34637c0f2
core/sign_tx: Check multisig fingerprint before signing inputs.
2020-03-20 14:17:44 +00:00
Tomas Susanka
163220e4b7
core/wallet: properly check decred input
2020-03-20 14:17:44 +00:00
Ondřej Vejpustek
6274cfdf8b
core: remove unreachable zcash code
2020-03-20 14:17:44 +00:00
Ondřej Vejpustek
d61181d7e8
core: fix transaction header for mixed segwit inputs
2020-03-20 14:17:44 +00:00
Tomas Susanka
f0a39df75d
core/wallet: check inputs and outputs right after receiving them
2020-03-20 14:17:44 +00:00
Tomas Susanka
0903159d9b
core, legacy: make sure OPRETURN ouput is not marked as change
2020-03-20 14:17:44 +00:00
Tomas Susanka
4af9aa547e
core: forbid unnecessary fields in OPRETURN output
2020-03-20 14:17:44 +00:00
Andrew Kozlik
d800fcbf9f
core/sign_tx: If there is a non-multisig input, then change output cannot be multisig.
...
(cherry picked from commit 8eb6ce0899
)
2020-03-20 14:17:44 +00:00
Andrew Kozlik
b3cd760df0
core/webauthn: Disable CTAPHID_WINK function.
2020-03-20 15:07:06 +01:00
Andrew Kozlik
e5008eb332
core/webauthn: Remove indistinguishable credentials from the allow list.
2020-03-20 15:07:06 +01:00
Andrew Kozlik
cda9de8dd1
core/webauthn: Add maxCredentialCountInList and maxCredentialIdLength to authenticatorGetInfo response.
2020-03-20 15:07:06 +01:00
Andrew Kozlik
0af0e06d5b
core/webauthn: Truncate names in credential data to at most 100 bytes.
2020-03-20 15:07:06 +01:00
matejcik
ccffefd667
core/boot: do not catch OSError in boot wait
2020-03-20 14:03:28 +01:00
matejcik
f6f041e269
core/sdcard: also catch OSError in the formatting phase
2020-03-20 14:03:28 +01:00
matejcik
3a71a5a05c
core/sdcard: show "Wrong SD card" when unlocking SD protect with unformatted card
2020-03-20 14:03:28 +01:00
matejcik
3789a3372b
core/sdcard: modify exception handling in fatfs
...
expose ff.c constants, raise them as arguments to FatFSError
introduce NotMounted and NoFilesystem as subclasses of FatFSError with
the appropriate error code set
2020-03-20 14:03:28 +01:00
Andrew Kozlik
8ee0026637
core: Allow PIN entry even when SD protect is enabled and the card is not present.
2020-03-19 15:04:33 +01:00
Andrew Kozlik
bfd834d1de
storage: Add storage_ensure_not_wipe_code().
2020-03-19 15:04:33 +01:00
Konnor Klashinsky
70a1f957ed
Fix BackupDevice layout on 18-word seed wallets
2020-03-13 13:41:04 +13:00
Andrew Kozlik
2f905a1157
core/webauthn: Add algorithm and curve to WebAuthnListResidentCredentials response.
2020-03-12 15:45:26 +01:00
Andrew Kozlik
f610787f8d
core/webauthn: Clean up bytes/bytearray typing around uctypes.
2020-03-12 15:45:26 +01:00
Andrew Kozlik
e378820f7f
core/webauthn: Implement support for Ed25519 signatures in FIDO2.
2020-03-12 15:45:26 +01:00
Pavol Rusnak
624b639ba8
Merge pull request #886 from trezor/onvej-sl/monero-optimizations-squashed
...
xmr/bp: memory optimizations and improvements, fixed style
2020-03-02 17:54:30 +01:00
Tomas Susanka
f8de140271
core: add cancel to hold to confirm dialogs
2020-03-02 13:58:41 +00:00
Dusan Klinec
2658e253fa
xmr/bp: memory optimizations and improvements
...
- different approach to vector manipulation - more on the fly operations. Prepared for fully offloaded operations, BP on Trezor with constant memory.
- memory requirements reduced from (4MN + const) to (2MN + const)
- more raw methods to avoid unnecessary encoding/decoding
- chunking improved, chunk size set as a constant, changed from 64 to 32, missing pieces implemented to cover also BP 16
- proof_v8 support discontinued, old hardfork, not needed anymore
- get_exponent register clash fixed (for large vectors)
- reduced heap fragmentation by removing some temporary allocations
- hashing with len and offset to reduce heap fragmentation by creating a sliced arrays
- use to() wherever possible to avoid allocations and return of mutable private object
- global functions start with _ prefix, reduce import footprint
- use __slots__ in classes to minimize footprint
2020-03-02 12:17:03 +01:00
Tomas Susanka
21676a0662
ore/tezos: better wording in delegation cancel
2020-03-02 08:49:34 +00:00
matejcik
7f91bc571c
core: ensure default task restarts after a passphrase workflow ( fixes #883 )
2020-02-28 15:55:40 +01:00
Tomas Susanka
5ee6e56f56
Merge pull request #880 from trezor/tsusanka/sign-verify-ui
...
Unify sign/verify message dialogs and fix text overflow
2020-02-28 15:47:48 +01:00
matejcik
bd9663af79
common/defs: update token reference, add new tokens to 2.3.0/1.9.0, regenerate coins_details
2020-02-27 19:13:17 +01:00
Tomas Susanka
86b010a18b
Merge pull request #878 from trezor/matejcik/fatfs-corruption
...
FatFS API rework
2020-02-27 15:58:38 +01:00
Tomas Susanka
c8b7d3fb56
core/changelog: SD card protection is part of 2.3.0
2020-02-27 13:57:48 +00:00
Tomas Susanka
a63e6fc4ef
core+legacy: update changelogs
2020-02-27 13:21:17 +00:00
Tomas Susanka
a8af9feebe
core: fix text overflow in some dialogs
2020-02-27 12:43:33 +00:00
Tomas Susanka
744c32991f
core: unify sign/verify functions
...
The UI records are modified because of two changes:
- Added a coin name to the Sign/Verify screen (ETH/Lisk).
- Unified to use mono.
2020-02-27 12:43:33 +00:00
Tomas Susanka
b317613d63
Merge pull request #874 from trezor/tsusanka/test
...
Use wire errors where applicable
2020-02-27 13:38:30 +01:00
Tomas Susanka
495a59c282
core: use wire errors instead of ValueErrors where applicable
2020-02-27 10:46:01 +00:00
matejcik
18ac4fc9ca
core: update Python facing APIs
2020-02-27 10:56:23 +01:00
matejcik
9ab84d2455
core/tests: thoroughly test modified APIs
2020-02-27 10:56:23 +01:00
matejcik
b24411b900
core/sdcard: unmount instance when powering off sdcard
2020-02-27 10:56:23 +01:00
matejcik
c81be584fb
core/fatfs: ensure functions can only be called on a mounted filesystem
...
ff.c has a lazy-mounting feature, where any filesystem call will mount
the volume if it can. This messes with predictability of the mounted
state, so all (except mount/unmount/mkfs) Python functions will first
check if the fs is mounted.
2020-02-27 10:56:23 +01:00
matejcik
fa746e2990
core/fatfs: rework low-level FatFS API
...
Instead of having possibly multiple FatFS objects, each with its own
`fs` struct, there is one global static fs_instance. This is to match
the mode of operation of ff.c, which assumes a global list of mounts,
and all functions operate on the global based on path.
Methods of FatFS were converted to functions on the fatfs module.
fatfs.unmount() does not call ff.c's unmount, but simply invalidates
fs_instance. This is basically what ff.c would do, except without
messing with ff.c's global list of mounts.
2020-02-26 14:18:41 +01:00
Pavol Rusnak
c896f02eb3
core/boardloader: use SRAM as SD card read buffer
...
because DMA can't access the CCMRAM
2020-02-25 17:59:16 +01:00
Andrew Kozlik
2133f7cf29
core: Prevent data loss when writing to USB VCP.
2020-02-25 12:08:07 +01:00
matejcik
b916072389
common: restore PassphraseAck.state
2020-02-24 15:15:09 +01:00
matejcik
d7b9582386
core/sdcard: add ensure_filesystem option ( fixes #868 )
...
It is possible to call `ensure_sdcard` in a way that requires only SD
card be inserted, but not necessarily formatted.
This is useful for SD-protect and possibly other use-cases where the SD
card is read-only, and "not formatted" is identical to "not containing
the right files".
2020-02-24 13:28:44 +01:00
matejcik
e9c275c24f
core/sdcard: fix invalid state when filesystem mounting fails
2020-02-24 13:28:44 +01:00
Pavol Rusnak
39ce100608
Merge pull request #864 from trezor/prusnak/bootloader-text-break
...
core/bootloader: split long vendor string
2020-02-21 18:39:20 +01:00
Tomas Susanka
6c47bf8230
core: store multiple sessions/caches at the same time
2020-02-21 14:40:42 +01:00
Pavol Rusnak
562671401e
Merge pull request #860 from trezor/prusnak/multisig-show-yours-others
...
core: show yours/others in get_address for multisig
2020-02-20 13:49:13 +01:00
matejcik
918603ad5c
core: add unit test for sdcard wrapper
2020-02-20 12:51:48 +01:00
matejcik
7983fd34d6
core: fix unit tests
2020-02-20 12:51:48 +01:00
matejcik
4ed6487a19
core/sdcard: add out-of-bounds checks to emulator
2020-02-20 12:51:48 +01:00
matejcik
ddee77ecb6
core: add SD clearing via debuglink
2020-02-20 12:51:48 +01:00
matejcik
d0b1b171f1
core/sdcard: ensure emulator initializes the SD card when first needed
2020-02-20 12:51:48 +01:00
matejcik
5bd8d9b5bb
core/sdcard: make allocating new SD card for emulator fast
2020-02-20 12:51:48 +01:00
matejcik
1e9352b9e0
core: add SD format dialog, generalize sdcard usage
2020-02-20 12:51:48 +01:00
matejcik
5bac85f260
core: use filesystem wrapper instead of the ensure_filesystem decorator
2020-02-20 12:51:48 +01:00
matejcik
d08942be4a
core: introduce filesystem wrapper
2020-02-20 12:51:48 +01:00
matejcik
b2084a19be
core/trezorio: move sdcard functions to a submodule
2020-02-20 12:51:48 +01:00
matejcik
30529d218d
core/sdcard: change SDCard methods to plain functions
2020-02-20 12:51:48 +01:00
matejcik
06b89c57c5
core/sdcard: return proper disk status flags to fatfs
2020-02-20 12:51:48 +01:00
Tomas Susanka
ff1bb67abc
common: return the PasshraseType button request
2020-02-20 08:04:35 +00:00
Pavol Rusnak
dc66bbe3d5
core/bootloader: split long vendor string
2020-02-19 21:40:28 +00:00
Pavol Rusnak
74802a107e
core/modtrezorui: add display_text_split
2020-02-19 21:40:28 +00:00
Pavol Rusnak
c4babd3c0b
Merge pull request #846 from trezor/bootloader-read-retry
...
core/bootloader: make read more benevolent and read error more helpful
2020-02-19 19:45:34 +01:00
Pavol Rusnak
581e46ff87
Merge pull request #845 from trezor/prusnak/webusb-popup
...
Don't show WebUSB popup in firmware, in bootloader only if no firmware present
2020-02-19 18:18:01 +01:00
Pavol Rusnak
7944c1a837
core/monero: add confirmation dialog for unlock_time
2020-02-19 14:31:45 +00:00
Pavol Rusnak
a808cc9190
core/apps: await require_confirm should be called without return
2020-02-19 14:31:45 +00:00
Pavol Rusnak
b9486c0b33
core: show yours/others in get_address for multisig
2020-02-18 22:39:55 +00:00
Tomas Susanka
577daf09fe
tests: introduce --ui-check-missing to test/remove missing tests
2020-02-18 09:33:21 +01:00
matejcik
1d41141a1f
core/emulator: properly ignore inotify problems ( fixes #854 )
2020-02-17 12:33:38 +01:00
Pavol Rusnak
2958a97c87
Merge pull request #830 from trezor/tsusanka/fw-upgrade
...
FW Update: Request a small chunk first to make the UI smoother
2020-02-15 13:08:33 +01:00
matejcik
e61b7d28e9
all: do not send state in PassphraseAck (not needed for compatibility)
2020-02-13 15:44:50 +01:00
Pavol Rusnak
63dfd6c6ab
core/bootloader: make read more benevolent and read error more helpful
2020-02-12 22:05:29 +01:00
Pavol Rusnak
07cd73ce57
core: show webusb popup only in bootloader and only if firmware is not installed
2020-02-12 20:47:05 +00:00
matejcik
4c8c96272c
emu: fix flag options with defaults
...
Click REALLY INSISTS you provide on/off switches for your options.
You can use is_flag, but then the presence of the option changes based
on the default value.
Which makes sense, really:
@option("-f", "foobar", is_flag=True, default=False)
you would expect `./cli -f` to have `foobar is True`
whereas with
@option("-f", "foobar", is_flag=True, default=True)
you would expect `./cli -f` to have `foobar is False`, otherwise it's a
no-op
this becomes fun with `default=os.environ.get("SOMETHING")`, because
then the effect of the option CHANGES with a value of environment
variable!
there's two ways around this:
a) don't use defaults, update the flag explicitly, like:
foobar = foobar or os.environ.get("FOOBAR") == "1"
b) forget about is_flag and specify an on/off switch, where the default
value works as intended
since the latter is also technically speaking more correct, i'm doing it
2020-02-12 13:32:05 +01:00
matejcik
271da3fa39
python: add detailed logging to emulator runner
2020-02-12 13:31:58 +01:00
matejcik
c14429c445
all: shut down emulator on error_shutdown
2020-02-12 13:31:31 +01:00
matejcik
d3b88a37be
core: do not catch SystemExit in handle_session ( #826 )
2020-02-12 10:36:42 +01:00
Tomas Susanka
f947fe97cc
core: fix style
2020-02-11 16:41:43 +01:00
Tomas Susanka
0a13f7a441
core: properly limit passphrase to 50 bytes
2020-02-11 15:39:08 +00:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
...
Passphrase Redesign
2020-02-11 16:01:59 +01:00
matejcik
05a1d6f771
core/debug: add "show arbitrary screen" capability, for easier prototyping
2020-02-11 11:53:34 +01:00
matejcik
c01d04f26e
common/protob: drop a default field declaration
...
which triggers nanopb bug https://github.com/nanopb/nanopb/issues/487
2020-02-11 11:53:34 +01:00
matejcik
741c0c8888
core: improve stability of Monero test runner
2020-02-11 11:16:28 +01:00
matejcik
4c9689d7a7
common: return deprecated fields to protobuf, to allow cross-version compatible code
2020-02-10 12:35:28 +01:00
Pavol Rusnak
e58225fe02
core/boot: don't call mkfs in emulator
2020-02-07 15:30:21 +00:00
Pavol Rusnak
fdfa64ac2a
core/ui: fix HoldToConfirm redraw
2020-02-07 15:21:16 +00:00
Pavol Rusnak
32f8f1cb61
core/embed: update fatfs to 0.14; use upstream version
2020-02-07 15:21:16 +00:00
Tomas Susanka
56dc952495
common: fix PassphraseAck.on_device id
2020-02-07 14:19:01 +00:00
Pavol Rusnak
73ed2f3450
legacy: small nitpicks related to the new passphrase handling
2020-02-07 11:41:03 +00:00
Tomas Susanka
15ed5cd19e
core: do not clear cache on ClearSession
2020-02-07 11:41:03 +00:00
Tomas Susanka
fd0dc8ed66
core/passphrase: merge 'get from user' functions
2020-02-07 11:41:03 +00:00
Tomas Susanka
7d7ffe3b67
cardano: derive the root and then cache
2020-02-07 11:41:02 +00:00
matejcik
3fa99c0c6a
core/tests: add storage.cache tests
2020-02-07 11:41:02 +00:00
matejcik
938f347514
core: use DUMMY_CONTEXT constant instead of own instance
2020-02-07 11:41:02 +00:00
matejcik
d4171aaedc
core/tests: extract common await_result() method
2020-02-07 11:41:02 +00:00
matejcik
1f50a13edf
core: use cache for Monero live refresh confirmation
2020-02-07 11:41:02 +00:00
Tomas Susanka
b96d7cafbb
core: rework cache and fix cardano caching
2020-02-07 11:41:01 +00:00
Tomas Susanka
aa6988a556
core/ui: introduce draw_simple
2020-02-07 11:41:01 +00:00
Tomas Susanka
d5763d9cab
all: implement code review comments
2020-02-07 11:41:01 +00:00
Tomas Susanka
f3553f63f1
common: remove PassphraseRequest.on_device completely
2020-02-07 11:41:00 +00:00
Tomas Susanka
c65b57affb
core, legacy: remove passphrase_cached
2020-02-07 11:41:00 +00:00
Tomas Susanka
1343583d21
core: bump version to 2.3.0
2020-02-07 11:41:00 +00:00
Tomas Susanka
8fa0d8f098
core/passphrase: show dialog to enter the passphrase on host
2020-02-07 11:41:00 +00:00
Tomas Susanka
a3f3d4fcdb
remove ping.passphrase/pin
2020-02-07 11:41:00 +00:00
Tomas Susanka
b5d6aaf77c
tests: test PassphraseAck options
2020-02-07 11:41:00 +00:00
Tomas Susanka
ece351c5e5
core: do not prompt for passphrase if 'always' setting is enabled
2020-02-07 11:40:59 +00:00
Tomas Susanka
466dc4732d
core/passphrase: add button requests
2020-02-07 11:40:59 +00:00
Tomas Susanka
4a0f727f13
core: fix monero
2020-02-07 11:40:59 +00:00
Tomas Susanka
cd09f9ce94
all: modify passphrase source to always on device
2020-02-07 11:40:59 +00:00
Tomas Susanka
eafd57c301
common, core: add passphrase entry capability
2020-02-07 11:40:58 +00:00
Tomas Susanka
90d5cdfd5b
all: rework passphrase
...
The `on_device` field is being moved to PassphraseAck, State messages
are removed. Features newly contain `session_id`.
2020-02-07 11:40:58 +00:00
Tomas Susanka
a02d7e3daf
core/bootloader: request vendor header first
2020-02-06 12:22:32 +00:00
matejcik
d28e33ef02
core/headertool: support generating vendor headers with explicit size
2020-02-05 12:23:34 +01:00
Pavol Rusnak
6dbed1424f
core+legacy: update nanopb api to version 0.4
2020-02-04 17:18:27 +00:00
Pavol Rusnak
3eb7775659
core/bootloader: regenerate protobuf messages
2020-02-04 17:18:17 +00:00
Pavol Rusnak
4647e7d686
core+legacy: use nanopb generator from pipenv
2020-02-04 17:15:25 +00:00
Pavol Rusnak
5bf8eca350
legacy+core: accept only valid UTF-8 strings via nanopb
2020-02-04 17:15:25 +00:00
Tomas Susanka
277e494ffa
core/recovery: end dry run before showing success
...
updates #815
2020-02-03 12:12:49 +00:00
Tomas Susanka
4850eaf534
emu.py: remove frozen variable
2020-01-30 14:47:11 +00:00
EtherCore Contributor
c03caaf76a
common/defs: switch ERE logo ( #808 )
2020-01-29 10:49:21 +01:00
matejcik
5d052678a6
build: make sure resources are built for 'make mypy'
2020-01-28 16:42:24 +01:00
matejcik
0df3c64855
core: fix unexpected messages in debug mode ( fixes #809 )
2020-01-27 19:41:41 +01:00
Tomas Susanka
bf1514d1ac
core/test/strings: add test for words ending with 'hsxz'
2020-01-27 09:11:11 +00:00
matejcik
4e82e69070
core: add missing type annotation
2020-01-24 16:55:24 +01:00
Tomas Susanka
0053511c66
utils: introduce format_plural and move format functions to strings.py
2020-01-24 16:25:14 +01:00
matejcik
75264a07a8
Emulator launcher scripts ( #796 )
...
Emulator launcher scripts
2020-01-24 16:18:18 +01:00
Pavol Rusnak
4868afcf51
core: add upy 1.12 to changelog
2020-01-24 14:34:06 +01:00
Pavol Rusnak
3de1b3aa54
core/embed: switch to unprivileged in main.c
2020-01-24 12:29:46 +00:00
Pavol Rusnak
7a2e0c3412
core/embed: don't call functions via supervisor if in privileged mode
2020-01-23 18:18:59 +00:00
matejcik
0496e49507
core/tests: fix monero runner script
2020-01-23 18:43:20 +01:00
matejcik
a3d309eca2
core/prof: make sure coverage data is generated with absolute paths
2020-01-23 18:43:20 +01:00
matejcik
e2fd2c35ff
core: modify profiling wrapper to work with frozen builds
2020-01-23 18:43:20 +01:00
matejcik
6cf48bf485
ci: use explicit trezor.log location
2020-01-23 18:43:20 +01:00
matejcik
85f2e18828
core: convert emu.sh to a simple dependency-less compat wrapper
2020-01-23 18:43:20 +01:00
matejcik
22c8b2569b
core: simplify monero test use of emulator
2020-01-23 18:43:20 +01:00
matejcik
ec192e9406
core: use better emulator test wrappers ( fixes #468 )
2020-01-23 18:43:20 +01:00
matejcik
2294fb0453
core: drop unused env variables (TREZOR_TEST, TREZOR_SAVE_SCREEN)
2020-01-23 18:43:20 +01:00
matejcik
8dce2cf98c
core: introduce emulator runner ( fixes #466 )
2020-01-23 18:43:20 +01:00
matejcik
27c4c2dd50
core: do not let frozen emulator import live files
2020-01-23 15:50:28 +01:00
matejcik
29e883ab59
core/monero: fix usage of ctx.wait in pagination
2020-01-23 15:46:09 +01:00
matejcik
a79279115e
core: move confirm_signal evaluation into concrete Layout implementations
...
Apart from making the code more correct for its users in
apps.common.confirm and elsewhere, this fixes a problem where the
confirm_signal would be scheduled before the dialog is rendered.
By making sure that handle_rendering is scheduled (i.e., listed in
create_tasks) before confirm_signal, we can be sure to render at least
once and thus appear in the UI test results.
2020-01-23 15:45:10 +01:00
Pavol Rusnak
4b1159b94d
tools/keyctl-proxy: blue is not readable on my display :)
2020-01-22 16:06:38 +00:00
matejcik
8a5242ed0f
core/tools: make keyctl remote signing more resilient
2020-01-20 17:33:50 +01:00
matejcik
611b734d21
add Pyro4 to pipenv, and make headertool work without it
2020-01-20 17:33:50 +01:00
matejcik
3f85db1b62
core/tools: retain client handle, only ask for passphrase once
2020-01-20 17:33:00 +01:00
matejcik
ccacada37c
core/tools: cleanly shut down keyctl-proxy after signing
2020-01-20 17:32:59 +01:00
matejcik
e9c68d7397
core/tools: pass fw instance properly in keyctl-proxy
2020-01-20 17:32:59 +01:00
matejcik
388843f772
core/tools: make keyctl-proxy output nicer
2020-01-20 17:32:59 +01:00
matejcik
7c56a1296f
core/tools: add help texts to headertool
2020-01-20 17:32:59 +01:00
matejcik
1b04d1caa7
core/tools: drop tools obsoleted by headertool
2020-01-20 17:32:59 +01:00
matejcik
9341f0d584
core: improve building of vendor headers
2020-01-20 17:32:59 +01:00
matejcik
c03ac3f8dd
core/tools: update keyctl-proxy to work with headertool
2020-01-20 17:32:59 +01:00
matejcik
5b48505b88
core/tools: fold keyctl-coordinator into headertool
2020-01-20 17:32:59 +01:00
matejcik
cc29b22f91
core/tools: introduce headertool
2020-01-20 17:32:58 +01:00
matejcik
fe4ef336aa
core/keyctl: get rid of serpent conversions
2020-01-20 17:32:58 +01:00
matejcik
15bd35824b
python/cosi: improve API
...
cosi.verify was renamed to verify_combined, because it is pretty much
ed25519.verify, and the new name implies what it does in terms of the
CoSi scheme: verify a signature with already-combined public keys.
cosi.verify_m_of_n signature was simplified by not requiring the `n`
parameter, which is not important for verification. The updated function
was renamed to cosi.verify, because this is the standard CoSi
verification operation: given signature, digest, required number of
signatures, sigmask, and a list of public keys, verify that enough
signatures are indicated and that they sign the digest.
2020-01-20 17:32:58 +01:00
Pavol Rusnak
500156b9ba
core/embed: don't use local copy of inflate
2020-01-18 17:09:52 +01:00
Pavol Rusnak
8a36ead915
common/defs: add Faceboook to recognized apps
2020-01-16 15:35:45 +00:00
Dušan Klinec
af6a607b39
common/xmr: message changes optimizing runtime and memory ( #786 )
2020-01-12 22:24:18 +01:00
Andrew Kozlik
289d8276eb
core/fido2: check for HID timeout in send_cmd() ( #791 )
2020-01-11 14:33:24 +01:00
Tomas Susanka
7c41b40dff
tests: introduce UI tests for core with diffs ( #784 )
...
tests: introduce UI tests for core with diffs
2020-01-10 20:39:31 +01:00
Tomas Susanka
30858c4969
tests/ui: omit the red square from screenshots
...
except the first one on homescreen because it gets rendered only once
2020-01-10 08:25:12 +00:00
matejcik
d4eed4b8ff
core/tests: update tests for modified slip39 API
2020-01-09 16:00:33 +01:00
matejcik
f90ba10af3
core: modify function signatures to match python-shamir-mnemonic
2020-01-09 16:00:33 +01:00
Milan Rossa
33b7e378c2
core/ci: add coverage target, introduce posttest stage
2020-01-09 15:26:40 +01:00
Milan Rossa
62e9ff0ad2
core: introduce coverage wrapper
2020-01-09 15:26:40 +01:00
Milan Rossa
8b31c6fcf4
core: increase stack size for unix port
2020-01-09 15:26:40 +01:00
Pavol Rusnak
9bc3af08b2
core: update mpconfigport.h from upstream (for both stm32 and unix)
2020-01-09 15:20:22 +01:00
Milan Rossa
42f1af3aa4
core: add build target for debug unix build
2020-01-09 13:44:46 +01:00
Jan Pochyla
655ec0a70c
core/unix: update main.c from upy 1.12
2020-01-07 20:52:43 +01:00
Jan Pochyla
87e7d43068
core/firmware: gchelper.s moved to different directory
2020-01-07 20:52:43 +01:00
Jan Pochyla
7deade5a10
core/firmware: PendSV_Handler is defined in pendsv.c
2020-01-07 20:52:43 +01:00
Jan Pochyla
ecc4313a34
core/usb: avoid naks in hid/webusb rx interfaces
2020-01-07 20:52:43 +01:00
Jan Pochyla
6afff3cc0e
core/loop: remove unused code
2020-01-07 20:52:43 +01:00
Jan Pochyla
f526818603
core: remove qstr blacklist
...
As its no longer needed. Mirrors micropython change a09fd0475.
2020-01-07 20:52:43 +01:00
Jan Pochyla
5aca68e50c
core: generate moduledefs.h for micropython
2020-01-07 20:52:42 +01:00
Tomas Susanka
8796ca96b9
tests/ui: rename test-screen to ui
2020-01-07 09:13:08 +00:00
Tomas Susanka
47419c7768
core/ui: simplify swipe if animation is disabled
2020-01-06 14:57:01 +00:00
Tomas Susanka
56257eb6a5
tests/ui: code review fixes
2020-01-06 14:44:30 +00:00
Tomas Susanka
3a035a0ef8
tests: save screens directly to ui_tests; introduce recorded/actual dir
2020-01-03 14:28:27 +00:00
Tomas Susanka
eabd0da196
core/make; legacy: style
2020-01-03 14:28:27 +00:00
Tomas Susanka
51ef963738
tests: introduce UI tests for core
2020-01-03 14:28:27 +00:00
Tomas Susanka
a28f29708f
ci: add junit for a nice tests overview
2020-01-03 12:44:12 +00:00
Tomas Susanka
ffea791658
Merge pull request #774 from trezor/tsusanka/shamir-word-checks
...
Recovery: refactor word checks and add a test
2019-12-30 13:26:07 +01:00
Tomas Susanka
d8e956fc6d
core/recovery: change exceptions types; modifications in tests
2019-12-30 11:35:56 +00:00
Tomas Susanka
7f730cb6f9
core/recovery: refactor to exceptions
2019-12-27 19:02:30 +00:00
Tomas Susanka
f4e11a9176
core/recovery: rework arguments
2019-12-27 18:46:22 +00:00
Tomas Susanka
20bcc68926
core/tests: remove utest.py
2019-12-27 13:28:15 +01:00
Tomas Susanka
faa9078c2b
core/recovery: refactor word checks and add a test
2019-12-23 13:40:45 +01:00
Tomas Susanka
a316347bf1
core/tests: test debug is on
2019-12-23 12:01:00 +00:00
Tomas Susanka
5677c254b1
core/tests: remove PYOPT settings
2019-12-23 11:51:29 +00:00
Tomas Susanka
6594ee9368
core/recovery: correctly inform about share already entered inside first group
2019-12-19 17:07:44 +00:00
Pavol Rusnak
8572a5a942
core: fix interrupt usage in usbd_conf
2019-12-18 16:30:57 +00:00
Ondrej Mikle
0064fda203
core: check whether USB structures are correct to avoid faults in shutdown
2019-12-18 17:16:36 +01:00
Pavol Rusnak
6198509948
core: bump version to 2.2.1; update changelog
2019-12-16 19:06:33 +01:00
Pavol Rusnak
d6a3725955
common: remove coins with no trezor compatible wallets
2019-12-15 18:19:36 +00:00
Milan Rossa
6d932a8a1d
core/embed/unix/flash: Don't reopen flash emulation file.
2019-12-15 10:21:29 +01:00
Pavol Rusnak
a9454b216d
core: move delay.c from trezorhal to firmware, fix prodtest build
2019-12-15 08:59:47 +00:00
Pavol Rusnak
a9e5149b95
core: reorganize source code to allow boardloader build
...
(after DMA changes)
2019-12-15 08:43:00 +00:00
Tomas Susanka
e75e77a5b2
core/changelog: add info about broken fw upgrades on 2.1.3
2019-12-13 14:36:15 +00:00
Pavol Rusnak
e5bdf0d51b
Merge pull request #742 from trezor/language
...
common: change language field to IETF BCP 47 language tag
2019-12-12 18:07:54 +01:00
Pavol Rusnak
046ff607d3
Merge branch 'sdcard-dma'
2019-12-12 18:00:01 +01:00
Milan Rossa
91007bafe9
core/unix/main: Print memory info (peak memory) when TREZOR_LOG_MEMORY env var is set. Part of #194
2019-12-12 17:58:35 +01:00
Pavol Rusnak
43da0d754a
core/embed: decrease SD card operations timeout to 5s
2019-12-11 17:24:28 +00:00
Pavol Rusnak
b34675401c
core/embed: add explicit fault handlers
2019-12-11 16:40:58 +00:00
Pavol Rusnak
c8c27dcd2f
core/embed: enable/disable SDIO/DMA interrupts via supervisor calls
2019-12-11 15:28:49 +00:00
Pavol Rusnak
990a91cd13
core/embed: enable DMA for SDIO operations
2019-12-11 15:28:49 +00:00
Andrew Kozlik
0432f5e801
webauthn: Add use_self_attestation flag to FIDO apps.
2019-12-11 15:29:52 +01:00
Andrew Kozlik
2e9db44434
core/webauthn: Add AAGUID to README.md.
2019-12-10 15:56:41 +01:00
Pavol Rusnak
7646b97dca
common: divisibility -> decimals
2019-12-09 17:43:47 +01:00
matejcik
8cced84bc4
core: fix build-icons
2019-12-09 16:31:46 +01:00
matejcik
3a132e594e
core/stellar: make sure function that awaits is async
2019-12-09 16:31:46 +01:00
matejcik
ac6e23fb87
mako: improve local variable name
2019-12-09 16:31:46 +01:00
matejcik
558020be01
common: drop lastpass from FIDO apps
...
as it doesn't actually support FIDO/U2F
2019-12-09 16:31:46 +01:00
matejcik
61e4f79c90
core: use common implementation for toif_convert
2019-12-09 16:31:46 +01:00
matejcik
67b2ba558b
core: auto-generate list of FIDO known apps
...
and improve code for loading icons
2019-12-09 16:31:46 +01:00
matejcik
a46fd6f508
core: auto-generate FIDO icons
2019-12-09 16:31:46 +01:00
Pavol Rusnak
bb8d809a6d
common: change language field to IETF BCP 47 language tag
2019-12-08 11:27:10 +01:00
Tomas Susanka
0f3466bf01
core, legacy: update changelog
2019-12-06 12:53:25 +00:00
Tomas Susanka
1b88840f53
docs: move docs to root
2019-12-06 12:24:20 +00:00
Tomas Susanka
61430d800e
core/stellar: add screen for timebounds
2019-12-05 14:31:28 +00:00
Pavol Rusnak
3d50bb5ed8
common: add Peercoin, regenerate coins
2019-12-05 09:43:32 +00:00
Pavol Rusnak
5301c03607
common: add coin.divisibility attribute
...
legacy: remove has_address_type/has_address_type_p2sh
2019-12-05 04:30:51 +01:00
Andrew Kozlik
6ca0288092
Merge pull request #720 from trezor/andrewkozlik/wipe-code
...
Implement wipe code feature.
2019-12-04 15:24:49 +01:00
Andrew Kozlik
420a4b8ba7
core/webauthn: Close U2F confirmation screen if browser stops polling for more than 3 seconds.
2019-12-03 14:48:59 +01:00
Andrew Kozlik
0b851d6959
core/webauthn: Reply with ERR_CHANNEL_BUSY once a U2F request has been declined to stop Chrome from polling.
2019-12-03 14:48:59 +01:00
Andrew Kozlik
4d3c634732
core/webauthn: Use different return code when user verification is requested but PIN is not set to get better browser behavior. Related to cf6949332f
.
2019-12-03 14:48:59 +01:00
Andrew Kozlik
a63ff8f9b4
core/webauthn: Add bogus app ID used by Firefox to indicate error in U2F. Figure out which error to display based on past U2F_AUTHENTICATE check-only requests on the same channel.
2019-12-03 14:48:59 +01:00
Andrew Kozlik
a704bfe184
core/webauthn: Allow only one CTAPHID_WINK command at a time on any given channel ID to fix continuous display blinking with Android.
2019-12-03 14:18:43 +01:00
Andrew Kozlik
3a4e9bd25c
core/ui: Ignore any new alert requests if an alert is already in progress in order to avoid multiple alerts overlapping.
2019-12-03 14:18:43 +01:00
Andrew Kozlik
7c39e2f142
core/webauthn: Specify the exception raised by res.load().
2019-11-26 15:44:05 +01:00
Andrew Kozlik
790178a442
fixup! core/webauthn: Allow new workflow to be set after a command response is sent, so that in device tests the next test doesn't fail with ERR_CHANNEL_BUSY while the previous workflow is closing.
2019-11-26 15:18:14 +01:00
Andrew Kozlik
c463069895
core/webauthn: Don't log an exception when a relying party is not listed in knownapps.
2019-11-26 15:18:14 +01:00
Andrew Kozlik
5bdd523b91
vendor: Update fido2-tests submodule to fix issues with random ordering.
2019-11-26 15:18:14 +01:00
Andrew Kozlik
203853faed
core/webauthn: Allow new workflow to be set after a command response is sent, so that in device tests the next test doesn't fail with ERR_CHANNEL_BUSY while the previous workflow is closing.
2019-11-26 15:18:14 +01:00
Andrew Kozlik
1bc8226a50
common, core: Add wipe_code_protection to the Features message.
2019-11-25 12:32:20 +01:00
Andrew Kozlik
a3b608d8dd
storage, core: Reveal the wipe code status after the device is unlocked.
2019-11-25 12:32:20 +01:00
Andrew Kozlik
a168d661cf
core: Add support for ChangeWipeCode message.
2019-11-25 12:32:20 +01:00
Andrew Kozlik
4381511930
common: Add ChangeWipeCode message.
2019-11-25 12:32:20 +01:00
Tomas Susanka
11f8da2f2d
core: remove .sconsign.dblite on make clean
2019-11-21 14:01:15 +00:00
Andrew Kozlik
2ae1d9a935
webauthn: Disable signature counter in FIDO2 for dropbox.com, gandi.net, secure.login.gov.
2019-11-21 13:59:45 +01:00
matejcik
1f6cc77dec
upgrade black to 19.10b0
2019-11-20 16:02:47 +01:00
matejcik
e25a7ebb7f
core: add changelog for RecoveryDevice fix
2019-11-20 12:27:57 +01:00
matejcik
34913a328a
all: disallow most RecoveryDevice fields in dry-run ( fixes #666 )
2019-11-20 12:27:57 +01:00
Pavol Rusnak
d029920540
core/webauthn: update metadata
2019-11-16 10:53:10 +00:00
Pavol Rusnak
33ecdeb193
core+legacy: remove confusing changelog entries
2019-11-13 19:47:35 +01:00
Pavol Rusnak
e1e081fb7a
core/webauthn: fix metadata
2019-11-13 17:16:23 +01:00
matejcik
09962708d3
core: move load_device to the debug app
2019-11-13 16:48:35 +01:00
matejcik
fd8aed6105
all: drop XPRV feature of LoadDevice
2019-11-13 16:48:35 +01:00
Pavol Rusnak
16af7f1353
common: add {needs,no}_backup flags to LoadDevice, make it debug only
2019-11-13 16:48:35 +01:00
Pavol Rusnak
0a0cd797e3
ci/tests: use new Monero tests binary
2019-11-13 16:29:06 +01:00
Pavol Rusnak
cde944b565
Merge branch 'reorder-usb'
2019-11-13 16:23:07 +01:00
Pavol Rusnak
908c0fb8c0
core/docs: add info about enabling VCP for non-Bitcoin-only FW
2019-11-13 16:22:42 +01:00
Tomas Susanka
20a30ae521
tests/monero: print hash of the monero binary
2019-11-13 14:44:40 +00:00
Tomas Susanka
85d7215bf3
Merge pull request #700 from trezor/tsusanka/upgrade-u2f-check
...
Get next u2f counter and add tests for it
2019-11-13 15:19:22 +01:00
Pavol Rusnak
2652936c16
core/tests: adapt device_emu_fido2/u2f to reordered usb endpoints
2019-11-13 13:21:39 +01:00
Pavol Rusnak
df273bf836
core/usb: reorder endpoints
2019-11-13 13:21:39 +01:00
Pavol Rusnak
3b5a113304
core/usb: small reformat
2019-11-13 11:33:58 +00:00
Tomas Susanka
a8b82975a1
core/management: get next u2f counter
2019-11-13 10:55:52 +00:00
Tomas Susanka
2a20287882
common/protobuf: add message for retrieving an increased u2f counter
2019-11-13 10:55:52 +00:00
Dusan Klinec
d81f43f7a4
tests: use new monero testing binary v0.15.0.0
2019-11-12 22:53:47 +01:00
Pavol Rusnak
d761a57689
storage: introduce FLAGS_APPID
2019-11-11 19:47:48 +01:00
Pavol Rusnak
1caae698ca
storage: make FLAG_PUBLIC and FLAGS_WRITE part of public API
2019-11-11 19:47:48 +01:00
matejcik
c96d5ab1bc
core/sd_salt: check if sd_salt is enabled before asking for SD card
2019-11-11 16:16:42 +01:00
matejcik
0c4fa03575
core/sd_salt: properly await ensure_sd_card
2019-11-11 16:14:43 +01:00
matejcik
c9fca25531
core: add storage module to frozen build
2019-11-11 15:52:46 +01:00
matejcik
75622d92d2
Merge branch 'master' into matejcik/storage-relocation
2019-11-11 14:39:00 +01:00
matejcik
dee47a06f2
core/sd_salt: ensure ProcessErrors are propagated properly
2019-11-11 14:37:20 +01:00
Tomas Susanka
597277725e
core/recovery: end progress before showing success
...
This fixes #695 . This was the default behaviour but we have changed it
because of Wallet, which was doing the polling. Since Wallet can now
send RecoveryDevice again and acquire Context this is no more needed.
2019-11-11 10:39:07 +00:00
Tomas Susanka
f4385ede2a
core/changelog: add note on Recovery rework
2019-11-10 13:07:23 +01:00
Pavol Rusnak
4462fb522c
core/nem: don't use mp_obj_new_str_of_type
2019-11-09 12:06:12 +00:00
matejcik
8225e5d8b2
core/sd_salt: remove forgotten fs.mount
2019-11-08 14:23:58 +01:00
matejcik
18ab677124
core/webauthn: rename storage.webauthn to storage.resident_credentials
2019-11-08 12:47:54 +01:00
matejcik
f03562cca0
core/sd_salt: decorate sd_salt functions to ensure proper finalization and power-off
2019-11-08 12:42:30 +01:00
matejcik
33bd4d3ba9
Merge branch 'master' into matejcik/storage-relocation
2019-11-07 12:51:02 +01:00
matejcik
51a5d8e30a
core/boot: do not pass useless argument to request_sd_salt
2019-11-07 11:31:29 +01:00
matejcik
7de5cec4b0
core: halt if the script ever runs out of the loop in main.py
2019-11-07 11:27:45 +01:00
matejcik
5ffa395dec
core: catch more exceptions for the purpose of halting
2019-11-07 11:27:45 +01:00
matejcik
7cb125d1cb
core/recovery: properly replace homescreens
2019-11-07 11:27:45 +01:00
matejcik
1c59ba9423
core/workflow: improve comments and logic
2019-11-07 11:27:45 +01:00
matejcik
a3930d4bdb
core: rename close_default to a more appropriate kill_default
2019-11-07 11:27:45 +01:00
Tomas Susanka
ca484b2c06
core: remove persistence boot and set recovery as a default workflow
2019-11-07 11:27:45 +01:00
matejcik
e9fe6c2943
core/boot: remove leftover print
2019-11-06 13:57:00 +01:00
matejcik
28d30ffd2f
core/webauthn: unify signatures of Credential.from_bytes and friends
2019-11-06 13:56:52 +01:00
Tomas Susanka
7dba12cb6d
core/log: print received message's name
2019-11-06 11:20:46 +01:00
Pavol Rusnak
8928e891c6
core/Changelog: add entry
2019-11-05 15:57:43 +01:00
Pavol Rusnak
0040b916d2
common/defs: remove inactive coins
2019-11-03 10:44:22 +00:00
Pavol Rusnak
2d8f70d49a
common/defs: add mojeid.cz definition to webauthn
2019-11-01 12:54:28 +00:00
Tomas Susanka
c261427d73
Merge pull request #667 from malinah/malinah/confirmbtn
...
core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection.
2019-11-01 11:39:31 +01:00
apollo
18c926a34b
common/defs: fix zcore signing ( #669 )
2019-11-01 00:18:03 +01:00
Milan Rossa
2143978b12
core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection.
2019-10-31 23:04:46 +01:00
matejcik
1397bbfeb5
core/tests: fix test suite after storage move
2019-10-31 16:34:16 +01:00
matejcik
5c93ecd53a
core: create top-level storage module
...
This is to avoid including app-specific functionality in storage and
avoid circular imports. The following policy is now in effect: modules
from `storage` namespace must not import from `apps` namespace.
In most files, the change only involves changing import paths.
A minor refactor was needed in case of webauthn: basic get/set/delete
functionality was left in storage.webauthn, and more advanced logic on
top of it was moved to apps.webauthn.resident_credentials.
A significant refactor was needed for sd_salt, where application (and
UI) logic was tightly coupled with the IO code. This is now separated,
and storage.sd_salt deals exclusively with the IO side, while the app/UI
logic is implemented on top of it in apps.common.sd_salt and
apps.management.sd_protect.
2019-10-31 16:21:56 +01:00
Pavol Rusnak
39a532c8b1
core/webauthn: increase limit for resident credentials to 100
2019-10-31 14:27:46 +00:00
Pavol Rusnak
4979e17e86
core/webauthn: improve metadata
2019-10-30 17:53:09 +01:00
Tomas Susanka
1d1e9da1d3
Merge pull request #661 from trezor/tsusanka/webauthn-move-iface
...
core/webauthn: set webauthn interface in its app not in main.py
2019-10-30 15:37:33 +01:00
Tomas Susanka
26e2960532
core/webauthn: move boot to regular firmware block
2019-10-30 15:20:21 +01:00
Pavol Rusnak
58a865dd05
core/embed/unix: fix sdcard_init behaviour
2019-10-30 14:43:10 +01:00
Tomas Susanka
809b30ddcf
core/webauthn: set webauthn interface in its app not in main.py
...
This way the other messages (WebAuthnListResidentCredentials etc.) get
registered in device debug build and can be tested.
Updates #591
2019-10-30 14:38:04 +01:00
Pavol Rusnak
727b7f8cd3
core/webauthn: add u2f/ctap2 metadata
2019-10-28 21:33:15 +01:00
Tomas Susanka
64a218eea0
bitcoin: simplify if expression
2019-10-28 15:35:58 +00:00
Tomas Susanka
c1f7239c2d
ci: add click and persistence tests
2019-10-25 12:04:14 +00:00
matejcik
93062c4cc2
docs: improve docs, add random.md
2019-10-24 13:36:54 +02:00
Pavol Rusnak
0f1e30b235
core: fix typo in get_address
2019-10-24 11:42:40 +02:00
Pavol Rusnak
c617035a3e
core: bump version to 2.1.9
2019-10-24 09:16:24 +00:00
Pavol Rusnak
e67a359279
core: update changelog
2019-10-24 09:15:17 +00:00
Pavol Rusnak
5fe2f7e59c
common/protob: remove ButtonRequest.data field
2019-10-24 11:11:43 +02:00
Pavol Rusnak
9a3d8ef2c4
core: show xpubs in GetAddress for multisig
...
also fix not showing MultisigRedeemScriptType.nodes correctly
2019-10-24 09:11:01 +00:00
Pavol Rusnak
322417d9ed
core/tezos: refactor bytes constants
2019-10-23 16:29:21 +00:00
Adrian Nagy
384275ac73
core/tezos: support the new protocol update (005-BABYLON)
2019-10-23 17:53:10 +02:00
matejcik
a5ccf95260
core: fix mypy problems
2019-10-22 17:06:49 +02:00
matejcik
8d2ae142f3
core/debug: at start, wait for first layout to show up
2019-10-22 17:06:49 +02:00
matejcik
a8fc569016
debug: add support for general layout waiting
2019-10-22 17:06:49 +02:00
matejcik
97525654bb
core/debug: avoid running a handler when waiting for layout change
...
otherwise a running handler would prevent the default task from
starting, which would deadlock a test waiting for the default task
2019-10-22 17:06:49 +02:00
matejcik
3664a5f06f
core/debug: reading layouts, inserting synthetic events
2019-10-22 17:06:49 +02:00
matejcik
8c3d93619e
core: allow inserting synthetic touch events into event loop
2019-10-22 16:55:30 +02:00
matejcik
a1a543f781
core: boot debuglink in recovery homescreen
2019-10-22 16:55:30 +02:00
matejcik
06e10f948d
protobuf: send x/y coordinates, allow waiting for layout change
2019-10-22 16:55:30 +02:00
matejcik
b25537f6b0
core: nicer output for cancellations
2019-10-22 16:54:49 +02:00
matejcik
d17f879d97
mypy: use GenericContext protocol to work-around DummyContext
2019-10-22 14:36:25 +00:00
matejcik
ed190c772c
core: avoid circular import in sd_salt
2019-10-22 14:36:25 +00:00
Tomas Susanka
0511cc8b8c
core: add final mypy fixes!
2019-10-22 14:36:25 +00:00
Tomas Susanka
8f34b4c5de
Merge pull request #628 from trezor/tsusanka/sdprotect-fix
...
Skip sd protect test on device
2019-10-22 15:40:03 +02:00
Pavol Rusnak
ddd9bee059
common/defs: regenerate coins
2019-10-22 09:03:32 +00:00
Pavol Rusnak
c2aa8a04c0
common/defs: update tokens
2019-10-22 10:59:52 +02:00
Pavol Rusnak
178d58c763
common/defs: remove BTDX as it has no Trezor compatible wallet
2019-10-21 09:48:19 +00:00
Pavol Rusnak
4e5b60ec2b
common/defs: remove BITC per maintainer request
2019-10-20 17:11:43 +00:00
Pavol Rusnak
3ebc79f9b2
common/defs: remove MEC per maintainer request
2019-10-19 17:14:32 +00:00
Pavol Rusnak
b79102008d
core: fix new Python SyntaxWarning (new in 3.8)
2019-10-18 17:59:37 +00:00
Tomas Susanka
b530e7c105
ci: add fido2 tests to ci
2019-10-18 16:54:00 +02:00
Andrew Kozlik
60f6ab9087
core: Fix mypy warnings.
2019-10-18 14:36:40 +02:00
Andrew Kozlik
39b4376b65
core/sd-protect: If writing to the SD card fails in request_sd_salt(), inform the user and allow them to retry or abort.
2019-10-18 14:34:43 +02:00
Pavol Rusnak
7644cb4c79
core: rework exception handling in boot.py
2019-10-18 10:20:11 +00:00
Pavol Rusnak
9b7a2095b3
common/defs: update coins info
2019-10-18 10:14:33 +00:00
Tomas Susanka
0f34b50c05
core/features: add sd card and protection
2019-10-17 16:04:11 +02:00
Tomas Susanka
f0cd99c545
common/protob: add sd card/protection to Features
2019-10-17 15:58:12 +02:00
Pavol Rusnak
d17ced9305
common/defs: remove ZCL as per maintainer request
2019-10-16 20:50:45 +00:00
Pavol Rusnak
d28bc3c3a6
common/defs: remove BSD - website does not exist, maintainer not reachable
2019-10-16 10:18:33 +00:00
Pavol Rusnak
3e20c51dbf
common/defs: remove MTNS - maintainer not reachable
...
website does not exist, backends don't work
2019-10-16 10:15:19 +00:00
Tomas Susanka
899a03dd1d
docs/build: update debug build on device
2019-10-15 11:26:39 +02:00
Pavol Rusnak
e16c27a401
core: update changelog
2019-10-14 11:33:18 +02:00
Pavol Rusnak
ab62715606
core: bump version to 2.1.8
2019-10-12 19:13:44 +02:00
apollo
74bcc05e2e
common/defs: add ZCR ( #611 )
2019-10-11 21:01:11 +02:00
Pavol Rusnak
76eefd026f
all: let's use -Wno-missing-braces because clang does not respect
...
initialization of structs with = {0};
2019-10-11 09:59:32 +02:00
Pavol Rusnak
1bdc83838b
legacy+core: properly handle non-printable ascii characters
...
(convert them to '_')
2019-10-10 15:58:26 +00:00
Pavol Rusnak
ab534c18d3
Merge pull request #612 from trezor/andrewkozlik/sd-protect-ui
...
SD-protect error handling
2019-10-10 15:48:27 +02:00
Andrew Kozlik
564b24191e
debug: Add left and right swipe direction to DebugLinkDecision message and unify terminology around swipe direction.
2019-10-10 14:56:49 +02:00
Andrew Kozlik
9a641b6b01
core/sd-protect: Allow user to retry if write fails.
2019-10-10 12:17:36 +02:00
Andrew Kozlik
795fa07822
core/sd-protect: Add SD_CARD_HOT_SWAPPABLE option and improve error handling.
2019-10-10 12:17:36 +02:00
Andrew Kozlik
710866074b
core/webauthn: Fix mypy warnings.
2019-10-09 18:13:48 +02:00
Andrew Kozlik
c25a41aa57
core: Fix mypy warnings in FatFS and SD salt code.
2019-10-09 17:07:25 +02:00
Andrew Kozlik
5401f88d52
core/webauthn: Fix user input timeout bug.
2019-10-09 15:18:25 +02:00
Tomas Susanka
a2fed79f7e
Merge pull request #603 from trezor/tsusanka/groups-info
...
Small refactor in Info dialog
2019-10-09 10:15:34 +02:00
Andrew Kozlik
e385eae433
core/webauthn: Use popups for webauthn error messages instead of confirmation dialogs to simplify device testing.
2019-10-08 13:29:15 +02:00
Andrew Kozlik
8ce8916beb
core/webauthn: Remove AUTOCONFIRM option.
2019-10-08 13:29:04 +02:00
Sirak Ghazaryan
8317774e06
common/defs: enable CRW ( #600 )
2019-10-07 14:39:37 +02:00
Tomas Susanka
29bb2dcb95
Add unit test for process_slip39 function ( #601 )
...
Add unit test for process_slip39 function
2019-10-04 21:57:37 +02:00
Tomas Susanka
1068acae40
core/tests: assert secret in process_slip39 test
2019-10-04 13:47:52 +00:00
Tomas Susanka
74a283c271
core/recovery: small refactor in Info dialog
2019-10-04 15:21:39 +02:00
Andrew Kozlik
ba9eee3b8f
core, legacy: Don't allow change_pin if device is not initialized.
2019-10-04 13:54:43 +02:00
Tomas Susanka
75dfcacc21
core/tests: add unit test for process_slip39 function
...
updates #542
2019-10-03 16:54:35 +02:00
matejcik
861e999425
core: draft unit test for process_slip39
2019-10-03 16:01:01 +02:00
Tomas Susanka
07b4f6e399
core/recovery: remove unused get/set_slip39_threshold
2019-10-03 09:57:35 +00:00
Pavol Rusnak
adbec13779
core/sd_salt: fix bug introduced in ede1a0bae3
2019-10-02 16:46:42 +00:00
Pavol Rusnak
04466402ce
core/monero: use const where possible
2019-10-02 15:45:36 +00:00
Pavol Rusnak
ed0336c0a9
core/monero: add gc.collect before large allocations in bulletproof code
2019-10-02 15:45:33 +00:00
Pavol Rusnak
5f980b50a0
core/monero: refactor bulletproof look-up-tables
2019-10-02 15:43:03 +00:00
Pavol Rusnak
ede1a0bae3
core/sd_salt: introduce _get_device_dir, _get_salt_path
...
prefix dialog functions with underscore
2019-10-02 15:39:42 +00:00
Pavol Rusnak
2217b680e3
core: update changelog
2019-10-02 10:00:10 +00:00
Pavol Rusnak
2e877b5762
core: refactor fido2 stuff into webauthn/fido2
2019-10-01 14:02:28 +00:00
Tomas Susanka
6b8f63c624
docs: improve tests documentation
2019-10-01 15:14:36 +02:00
matejcik
3c62db2696
stellar: fix ManageDataOp value padding
2019-10-01 15:12:37 +02:00
Andrew Kozlik
18998ff42f
core/webauth: Remove "alg" parameter validation for key-agreement public keys to avoid compatibility issues.
2019-10-01 12:05:14 +02:00
Andrew Kozlik
4a81101c84
core/webauthn: Modify error handling to match fido2-tests.
2019-10-01 11:55:36 +02:00
Andrew Kozlik
9537bc40a5
core/webauthn: Use ECDH_ES_HKDF_256 instead of ES256 as the algorithm type for key-agreement keys.
...
ECDH_ES_HKDF_256 is the wrong type to use, since the key-agreement does not use HKDF, but ES256 is even more wrong, because it is an ECDSA type rather than an ECDH type. Currently there is no correct algorithm type defined. ES256 is used by libfido2, whereas ECDH_ES_HKDF_256 is used by Chrome, YubiKey and SoloKey, so it has the majority.
2019-09-30 19:37:46 +02:00
Pavol Rusnak
69142e56e7
core/tests: don't use curl, use wget
2019-09-30 12:46:00 +00:00
Andrew Kozlik
500401d81f
core/webauthn: Place a 500 ms timeout on CTAP HID continuation packets.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
0495d18b1e
core/webauthn: Fix CTAP HID protocol to correctly handle invalid channel IDs and interleaving packets from different channels.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
9ea8136545
u2f: Add keepersecurity.eu to knownapps.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
e4c13b6357
u2f: Store hashes of U2F application parameters instead of pre-images.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
6a33889706
common/webauthn: Add new URLs for gandi.net and Slush Pool.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
528ee9ccf1
core/webauthn: Ensure user-presence option is not present in MakeCredential requests.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
e341f133a3
core/webauthn: Add length checks in CTAPHID protocol.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
ae70741e48
core/webauthn: Add more type checking for CBOR command parameters and return CTAP2_ERR_CBOR_UNEXPECTED_TYPE.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
5ca4ed2347
core/webauth: Add _AUTOCONFIRM option for testing.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
7ad1467dbf
core/webauthn: Process debuglink signals in Fido2ConfirmGetAssertion.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
3d91cb5c5b
core/webauthn: Return ERR_MISSING_PARAMETER instead of generic error.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
eaf63fff45
core/webauthn: In GetAssertion do not return user ID for server resident credentials.
2019-09-26 19:02:29 +02:00
Andrew Kozlik
f54c968039
core/webauthn: Validate U2F key handle length.
2019-09-25 21:06:36 +02:00
Andrew Kozlik
638a861137
core/webauthn: Add U2F_V2 to authenticatorGetInfo supported versions.
2019-09-25 20:00:11 +02:00
Andrew Kozlik
cf6949332f
core/webauthn: Claim that PIN is set even when it's not, because login.live.com shows an error, but doesn't instruct the user to set a PIN.
2019-09-25 20:00:11 +02:00
Andrew Kozlik
5e99058832
common/webauthn: Add webauthn RP ID for google.com.
2019-09-25 19:59:59 +02:00
Pavol Rusnak
40c66e6d85
core: handle removal of non-existing PIN in require_confirm_change_pin
2019-09-25 17:35:37 +00:00
Pavol Rusnak
ad76b5fb9f
core: regenerate mocks
2019-09-25 10:27:04 +00:00
Pavol Rusnak
dcff4ade01
core: use set_clr_card_detect to disable SD card pull-up resistor
2019-09-25 12:13:53 +02:00
Pavol Rusnak
6c14ee7ec0
core: initialize fatfs only after we know the SD card is powered
2019-09-25 12:13:52 +02:00
Pavol Rusnak
7394ecfa77
core: add exist_ok parameter to fatfs.mkdir
2019-09-25 12:13:52 +02:00
Pavol Rusnak
d393fc6e85
Revert "core: replace BITCOIN_ONLY with a constant only in src/trezor/utils.py"
...
This reverts commit b9e7e93bcf
.
Unfortunately this does not work, compiler cannot see it is a literal constant,
so it won't get optimized out, even when we use const(0). Also const(False)
is not supported at all.
2019-09-25 12:05:13 +02:00
Tomas Susanka
f53694c3fe
core/recovery: rename variable and add a comment in Info button
2019-09-24 16:12:19 +02:00
Tomas Susanka
6c6bd44ee8
core/recovery: fix Info button when the threshold was reached ( #566 )
2019-09-24 16:10:09 +02:00
matejcik
65d2a55bff
core/recovery: improve comment
2019-09-24 14:07:46 +02:00
matejcik
02ee0b63c0
core/recovery: fix type signature of _process_words
2019-09-24 14:07:08 +02:00
matejcik
1c53c2bdf2
core/recovery: allow changing word count again ( fixes #554 )
2019-09-24 14:04:51 +02:00
Tomas Susanka
7f959250e7
Merge pull request #563 from trezor/tsusanka/562-fix-info-btn
...
core/recovery: fix Info dialog
2019-09-24 13:20:14 +02:00
ciny
1337ff97b7
core: fixed confirmation screen during advanced slip39 reset flow
2019-09-24 12:11:18 +02:00
Tomas Susanka
51bf0dde12
core/recovery: fix Info dialog
...
closes #562
2019-09-24 11:23:29 +02:00
Pavol Rusnak
78041d261b
crypto: refactor bip39 api
2019-09-23 17:56:36 +02:00
Andrew Kozlik
524a2ac721
core: Show success dialogs in sd-protect.
2019-09-23 10:38:58 +02:00
Andrew Kozlik
a7485c0840
core: In sd-salt and webauthn error dialogs replace "X" button with "Close" button.
2019-09-23 10:38:58 +02:00
Andrew Kozlik
de74750569
core: Show success and failure dialogs in change-pin.
2019-09-23 10:38:58 +02:00
Pavol Rusnak
b9e7e93bcf
core: replace BITCOIN_ONLY with a constant only in src/trezor/utils.py
2019-09-22 15:07:04 +02:00
Pavol Rusnak
bb4dd3cf18
core: respect PYOPT in firmware build
2019-09-20 23:35:47 +02:00
matejcik
03f1403c93
core: clean up backup type handling in reset_device
2019-09-20 18:00:14 +02:00
matejcik
78ecc38b1b
core: fix BIP39 backup
...
Refers to #550 . Not marking fixed because we need more tests.
2019-09-20 17:14:59 +02:00
Tomas Susanka
eca0a719db
core: bump version to 2.1.7
2019-09-20 15:00:34 +02:00
Pavol Rusnak
702f865e8d
core/webauthn: let's use Self Attestation for now
2019-09-20 12:07:49 +02:00
Tomas Susanka
5d32fc37ae
core/changelog: complete 2.1.6 changelog
2019-09-20 12:07:11 +02:00
Andrew Kozlik
576a211c3d
core: Clarify the messages on the screens and get rid of overflows.
2019-09-20 12:06:32 +02:00
Tomas Susanka
bf518665a0
Merge pull request #546 from trezor/tsusanka/1of1
...
core: enable 1of1 in reset device
2019-09-20 10:37:37 +02:00
Tomas Susanka
e25686e079
core: enable 1of1 in reset device
...
updates #500
2019-09-20 10:12:33 +02:00
Tomas Susanka
871e159bee
core/recovery: remove group threshold from storage
2019-09-20 09:47:15 +02:00
Tomas Susanka
6731d1bbf2
core/recovery: remove word count and backup type
2019-09-20 09:46:49 +02:00
Tomas Susanka
cf5a794436
core/storage: swap arguments in recovery_shares.set
2019-09-20 09:22:30 +02:00
Tomas Susanka
6938d2b238
Merge pull request #541 from trezor/ciny/slip39_various_fixes
...
core: various fixes to slip39
2019-09-20 09:20:31 +02:00
Pavol Rusnak
39a1e308a0
core/webauthn: change the default icon
2019-09-20 00:33:48 +02:00
Andrew Kozlik
9efc3b4431
core/webauthn: Use basic attestation in FIDO2 MakeCredential responses.
2019-09-19 20:28:51 +02:00
Pavol Rusnak
8da121ff5c
core+python: regenerate coins
2019-09-19 20:17:35 +02:00
matejcik
e14edd77a9
core: simplify confirm_share_words
2019-09-19 17:34:02 +02:00
matejcik
e4ac47b0b3
core: simplify fetch_slip39_remaining_shares
2019-09-19 17:27:23 +02:00
Andrew Kozlik
8024f6d069
core/storage: Rename APP_FIDO2 to APP_WEBAUTHN.
2019-09-19 17:17:22 +02:00
Pavol Rusnak
68513a0b39
Merge pull request #538 from trezor/andrewkozlik/fido2-signcount
...
Disable FIDO2 signature counter for some relying parties
2019-09-19 17:00:51 +02:00
ciny
cb029fa905
core: various fixes to slip39
2019-09-19 16:42:10 +02:00
Tomas Susanka
cefb1cf4fd
core: refactor slip39
2019-09-19 16:38:29 +02:00
Andrew Kozlik
315a30b42b
core/webauthn: Disable FIDO2 signature counter for some relying parties
2019-09-19 16:16:58 +02:00
Pavol Rusnak
649d14898f
core/tests: remove also sdcard files in test runner
2019-09-18 19:14:35 +02:00
Andrew Kozlik
a5f5a1709f
core/tests: Increase sleep to 30 after emulator launch to allow for FatFS.mkfs.
2019-09-18 18:55:58 +02:00
Andrew Kozlik
f5ea81f905
core: Move some PIN-related functions to apps.common.request_pin and implement verify_user_pin().
2019-09-18 18:55:58 +02:00
Andrew Kozlik
262434ea1b
python/tests: Add SD protection device test.
2019-09-18 18:55:58 +02:00
Andrew Kozlik
6350b1c61c
core: Implement SD card protection.
2019-09-18 18:55:58 +02:00
Andrew Kozlik
06fc676cc9
common/messages: Add SdProtect message.
2019-09-18 18:53:42 +02:00
Andrew Kozlik
4f01003637
storage: Add external salt parameter to unlock() and change_pin().
2019-09-18 18:53:42 +02:00
Pavol Rusnak
69d936a390
core: remove unused script
2019-09-18 17:23:27 +02:00
Tomas Susanka
5c9fd5875a
core/recovery: inform about ToS
...
updates #495
2019-09-18 12:26:53 +02:00
Andrew Kozlik
b89a9dc590
core: Implement credential management.
2019-09-17 18:32:31 +02:00
Andrew Kozlik
091053507d
common/messages: Add credential management message.
2019-09-17 18:32:31 +02:00
Pavol Rusnak
650db2a5c0
ci: add u2f tests to CI
2019-09-14 14:47:45 +02:00
Pavol Rusnak
9414a2b2f5
tests: fix file permissions
2019-09-14 14:41:12 +02:00
Andrew Kozlik
5472499326
core/webauthn: Process debuglink signals in dialogs ( #519 )
2019-09-13 18:34:23 +02:00
Ciny
a0180d233e
Merge pull request #494 from notatestuser/improve-binance-ux
...
Binance UX improvements
2019-09-13 15:05:55 +02:00
Tomas Susanka
e4c8cb1315
core: move public_key_to_wif to helpers
2019-09-13 12:55:04 +02:00
Tomas Susanka
adedb7df97
core: remove underscores in symbols used externally
...
closes #504
2019-09-13 12:55:04 +02:00
Pavol Rusnak
2711ce2a3d
Merge pull request #394 from trezor/andrewkozlik/fido2-squashed
...
Add FIDO2 support
2019-09-13 11:20:48 +02:00
Tomas Susanka
75c539ec55
all: replace /bin/bash with /usr/bin/env bash
2019-09-12 17:35:55 +02:00
matejcik
cad297ed36
style: fix weirdness in modtrezorio-fatfs.h
2019-09-12 16:49:51 +02:00
Andrew Kozlik
58c2691ad9
core/pin: Avoid flicker in remaining time message.
2019-09-12 12:04:01 +02:00
Andrew Kozlik
6ee1ea0fde
core/webauthn: Add README.md.
2019-09-12 12:04:01 +02:00
Andrew Kozlik
26193245d4
core/webauthn: Generate random part of U2F key handles with uniform distribution.
2019-09-12 12:04:01 +02:00
Andrew Kozlik
5020ae9757
core/tests: Test SLIP-0022 FIDO2 credential decode.
2019-09-12 12:04:01 +02:00
Andrew Kozlik
70fe14e84c
core/webauthn: Implement CTAP2 protocol for FIDO2 support.
2019-09-12 12:04:01 +02:00
Andrew Kozlik
6366f3ac0d
core/storage: Implement storage of FIDO2 resident credentials.
2019-09-12 11:46:19 +02:00
Andrew Kozlik
de183849b9
core/webauthn: Implement SLIP-0022 FIDO2 credential ID format.
2019-09-12 11:46:13 +02:00
Andrew Kozlik
f658958057
core/ui: Add ui.alert() for CTAP WINK command.
2019-09-11 15:33:16 +02:00
Andrew Kozlik
509a815f73
core/ui: Implement multi-page confirmation screen.
2019-09-11 15:33:16 +02:00
Andrew Kozlik
1f58ee7ae9
core/ui: Add text_center_trim_left() and text_center_trim_right().
2019-09-11 15:33:16 +02:00
Andrew Kozlik
84674a7463
core/usb: Add write_blocking() to trezor.io.HID.
2019-09-11 15:33:16 +02:00
Andrew Kozlik
5cbbcd0ce7
core/ui: Add offset parameter to ui.pulse() and specify the pulse rate in terms of period.
2019-09-11 15:33:16 +02:00
Andrew Kozlik
2142b37f86
core/usb: Ensure that USB interface is not busy before writing.
2019-09-11 15:33:16 +02:00
Pavol Rusnak
6ad3294f31
core: fix visibility of apps.common.device.U2F_COUNTER
2019-09-11 09:51:51 +02:00
Pavol Rusnak
e7955357b0
core: fix style
2019-09-10 13:48:25 +02:00
Pavol Rusnak
898c421752
core: enable debuglink+webauth together in the emulator firmware
2019-09-09 17:59:49 +02:00
Pavol Rusnak
a635ba6bff
build: clean up build-docker scripts a little
2019-09-08 16:21:16 +02:00
Milan Rossa
f962a18785
core: enhance testing runners
2019-09-07 11:29:55 +02:00
Pavol Rusnak
f87d033345
core: rename PROFILING to TREZOR_PROFILING in trezor_cmd.sh
2019-09-07 11:22:21 +02:00
Tomas Susanka
3cb023ec21
core: add Capabilities to 2.1.5 changelog
2019-09-06 11:05:07 +02:00
Tomas Susanka
b7d2fa9643
core: add Binance to 2.1.5 changelog
2019-09-06 10:57:51 +02:00
Tomas Susanka
c66a1e7780
Merge pull request #497 from romanz/segwit-multisig
...
core/wallet: fix segwit multisig comment
2019-09-05 10:59:21 +02:00
Roman Zeyde
cb04f5774b
core/wallet: fix segwit multisig comment
2019-09-04 13:34:30 +03:00
Pavol Rusnak
bfe01707b1
build: add BITCOIN_ONLY variable to docker build scripts
2019-09-04 12:16:55 +02:00
Luke Plaster
9c2d911dcb
core: improve binance ux
2019-09-04 12:21:25 +08:00
Pavol Rusnak
9d5bac50fd
core: alphabetically order files in SConscript files
2019-09-03 18:15:47 +02:00
Pavol Rusnak
854045c019
build: fix file order in SConscript.unix
2019-09-03 16:24:33 +02:00
Ondrej Mikle
59ee3750d1
core/modtrezorio: raise exception when directory listing fails on disk error or other error
2019-09-03 15:14:35 +02:00
Ondrej Mikle
24359ea074
core/modtrezorio: use upstream's fix of read-after-buffer
2019-09-03 15:14:25 +02:00
Ondrej Mikle
972a96f1a0
core/modtrezorio: raise error when no space left on FAT FS
2019-09-03 15:14:25 +02:00
Pavol Rusnak
743f57afdb
core/modtrezorio: use ff_unifdef.sh preprocessor
...
to reduce the number of lines in ff.c and ffunicode.c
2019-09-03 15:14:25 +02:00
Pavol Rusnak
49a98a5015
core/modtrezorio: enable FatFS.mkfs only in emulator
2019-09-03 15:14:25 +02:00
Pavol Rusnak
d40b7c0385
core/modtrezorio: enable LFN+Unicode in FatFS
2019-09-03 15:14:25 +02:00
Pavol Rusnak
aa8d14c0ea
core/modtrezorio: add FatFS support
2019-09-03 15:14:24 +02:00
Pavol Rusnak
ecceed018e
core/tests: make binance sign_tx test vector more readable
2019-09-03 15:09:12 +02:00
Luke Plaster
3eff86d17b
core: fix the "coin" blueprint ( #488 )
2019-09-03 14:47:29 +02:00
ciny
ec4dd38888
core: #482 fix binance divisibility
2019-09-03 09:12:04 +02:00
Pavol Rusnak
7c74f1c54c
core: fix style
2019-09-02 13:49:46 +02:00
Jan Pochyla
355cebf8bf
core: wait for the default layout after closing a workflow
...
Fixes #469
2019-09-02 12:52:09 +02:00
Jan Pochyla
ccb926af53
core: improve log messages in workflow and wire
2019-09-02 12:52:09 +02:00
Pavol Rusnak
bdaf4cd069
core: update ChangeLog
2019-09-02 12:46:20 +02:00
Andrew Kozlik
c1f0c642df
core: cache seed without passphrase ( #478 )
2019-09-02 12:09:03 +02:00
TheCreator
64034c6d7d
common: enable UNO ( #472 )
2019-09-01 09:47:58 +02:00
Roman Zeyde
680e18a4ba
core/seed: add SLIP-0077 derivation to Keychain ( #398 )
...
Following #66 and #317 , it would allow deriving confidential addresses and
unblinding confidential transactions' outputs.
2019-08-31 19:04:00 +02:00
Pavol Rusnak
324cb651c6
core+legacy: update bootloader ChangeLogs
2019-08-30 16:15:04 +02:00
Pavol Rusnak
dbef93a30d
core: enable firmware build without SDL2 installed
...
SConstruct includes SConscript.unix even for the firmware builds,
which resuls in error if SDL2 is not installed.
This commit workarounds the issue.
Is there a better way how to NOT include SConscript.unix via
SConstruct for firmware only builds?
2019-08-29 12:35:16 +02:00
Pavol Rusnak
1a71c7a3e8
common: rename Features.features to Features.capabilities
2019-08-28 15:02:30 +02:00
Jan Pochyla
34ec1ed294
core/webauthn: fix bug introduced in bb2556
...
Fixes #448
2019-08-28 14:27:32 +02:00
Pavol Rusnak
9cef06de2b
core+legacy: update ChangeLogs
2019-08-28 13:59:42 +02:00
Pavol Rusnak
dde4c12796
common: add Feature.ShamirGroups to features
2019-08-28 09:25:11 +02:00
Pavol Rusnak
93f18b09bd
core+python: regenerate Features
2019-08-27 17:30:49 +02:00
Pavol Rusnak
74bc83726c
common: add Feature.Shamir to features
2019-08-27 17:17:26 +02:00
Tomas Susanka
72f6bf51cd
Merge pull request #446 from trezor/andrewkozlik/shamir-wording
...
core: Improve Super Shamir texts.
2019-08-27 17:10:30 +02:00
Andrew Kozlik
90bd453d0a
core: Improve Super Shamir texts.
2019-08-27 16:03:11 +02:00
Tomas Susanka
f5af4e4fe0
core: bump version to 2.1.6
2019-08-27 14:39:06 +02:00
Tomas Susanka
73e59bb84c
core: add changelog for 2.1.5
2019-08-27 14:39:06 +02:00
Tomas Susanka
fd53c72a3c
Merge pull request #428 from trezor/ciny/super_shamir
...
UI for multi level Shamir reset and recovery
2019-08-27 13:22:32 +02:00
ciny
9595800158
core: store correct backup type during recovery
2019-08-27 13:10:08 +02:00
Pavol Rusnak
32edf7b6b9
core: fix unit tests for Bitcoin only firmware
2019-08-27 12:38:29 +02:00
Pavol Rusnak
908bbfffef
core: remove remaning utility code for Bitcoin only firmware
2019-08-27 12:38:28 +02:00
Pavol Rusnak
c815bc410c
core: remove remaning Decred/Zcash code for Bitcoin only firmware
2019-08-27 12:38:28 +02:00
ciny
81f5cbef93
core + tests: Super shamir reset and recovery UI and tests
2019-08-27 11:50:42 +02:00
Tomas Susanka
077735f57b
ci: introduce upgrade tests
...
closes #126
2019-08-26 16:02:06 +02:00
matejcik
6481316ac5
core/ethereum: fix typo in wanchain detection (in template also)
2019-08-26 14:43:43 +02:00
matejcik
b0b286aafe
core/ethereum: fix typo in wanchain detection
...
Reason it worked before: this function would fail to find a network
for wanchain, but the `network` value is only used to determine if
RSKIP60 should be used. That is almost never the case, so missing
network info did not cause an issue.
2019-08-26 14:28:05 +02:00
matejcik
2022c39ef9
core/ethereum: add support for wanchain slip44 id ( #440 )
2019-08-25 16:36:14 +02:00
Pavol Rusnak
8a61ef4f6e
core: unroll the utils.BITCOIN_ONLY constant in mpy-cross
2019-08-23 13:52:14 +02:00
Pavol Rusnak
4036f2243b
core: introduce linker script for BITCOIN_ONLY
2019-08-23 13:52:14 +02:00
Pavol Rusnak
9ae319211f
core: fill in Features.features
2019-08-23 13:52:14 +02:00
Pavol Rusnak
07ef01f3e4
core: introduce BITCOIN_ONLY flag
2019-08-23 13:52:10 +02:00
Tomas Susanka
566753e551
core: fix style
2019-08-23 12:35:17 +02:00
Pavol Rusnak
e1f0c238cf
core: fix utils.format_amount for negative amounts
2019-08-23 12:24:17 +02:00
Ryxor
2c709ee162
common/defs: add Umbru ( #433 )
2019-08-23 11:59:30 +02:00
matejcik
3467cbe236
core/cardano: do not force-show homescreen
2019-08-22 18:33:13 +02:00
Pavol Rusnak
876ba5f590
tests: make path to tested binary configurable
2019-08-22 17:47:36 +02:00
Jan Pochyla
29153f0e51
core/log: be less noisy with ui.Cancelled exceptions
2019-08-22 17:37:31 +02:00
Jan Pochyla
7789a29d50
core/loop: fix last commit
2019-08-22 17:36:04 +02:00
Jan Pochyla
2c8b90f86e
core/loop: properly cleanup task waiting on a chan
2019-08-22 17:29:21 +02:00
Jan Pochyla
29cca614f0
core/workflow: properly reset the default task global
2019-08-22 17:23:35 +02:00
Jan Pochyla
6d1a315b0e
core/homescreen: render homescreen in a layout
...
FIxes a bug introduced in bb25562
2019-08-22 16:08:38 +02:00
Tomas Susanka
f07694116c
docs: emulator's variables
2019-08-22 15:39:53 +02:00
Tomas Susanka
16b44b6f7b
core: improve log output for ui.Result exception ( #429 )
...
* core: improve log output for ui.Result exception
updates #373
* core: avoid importing ui module
2019-08-22 15:31:20 +02:00
Pavol Rusnak
132c841752
core: preparations for bitcoin-only firmware
2019-08-21 18:53:08 +02:00
Pavol Rusnak
76719bab65
core: split handling of messages in the build script
2019-08-21 18:45:07 +02:00
Pavol Rusnak
632a29ea8c
core: fix typo
2019-08-21 18:09:56 +02:00
Pavol Rusnak
774ca02c41
core: refactor FROZEN and PYOPT in SConscript.firmware
2019-08-21 18:04:15 +02:00
Pavol Rusnak
2c646a61b7
core: refactor FROZEN variable in SConscript.unix
2019-08-21 17:50:09 +02:00
Pavol Rusnak
b8726e74c8
core: add possibility to pass PYOPT to emulator frozen build
2019-08-21 17:46:30 +02:00
Tomas Susanka
b65cabc67c
Merge pull request #425 from trezor/tsusanka/iss387-init-fix
...
core: fix initialized to be unrelated to recovery
2019-08-21 15:51:45 +02:00
Tomas Susanka
ba7b5c7232
core/ui: add note on yield usage
2019-08-21 15:14:33 +02:00
Tomas Susanka
c9a78d7bcb
core: fix docs typos
2019-08-21 15:12:21 +02:00
Tomas Susanka
d0ce2b9e39
core: fix initialized to be unrelated to recovery
...
closes #387
2019-08-21 14:10:36 +02:00
Tomas Susanka
4323b0ac2a
core: rename recovery keyboards
...
closes #301
2019-08-21 13:48:24 +02:00
Pavol Rusnak
f51f9d9be1
core: one more change to previous commit
2019-08-21 11:33:04 +02:00
Pavol Rusnak
f8ebd4fa0b
core: fix last commit
2019-08-21 11:28:28 +02:00
Pavol Rusnak
c4e745a0d6
core: update build scripts to list python source more explicitly
2019-08-21 11:24:16 +02:00
Tomas Susanka
ba74cc2880
core: change pubkeys to List
2019-08-21 11:14:11 +02:00
Pavol Rusnak
0f6e06e1e5
common/tools: reorder coins in coin_info.py so Regtest appears at the beginning
2019-08-21 11:06:02 +02:00
Tomas Susanka
debb8ec478
Merge pull request #422 from romanz/typing
...
core/wallet: fix 'pubkeys' type to be list
2019-08-21 10:48:00 +02:00
Roman Zeyde
5b3427a21d
core: ensure multisig (m,n) parameters are valid ( #423 )
2019-08-20 19:18:34 +02:00
Pavol Rusnak
1eb823be03
core: fix permissions of apps/eos source files
2019-08-20 18:08:00 +02:00
Roman Zeyde
acfd6b7771
core/wallet: fix 'pubkeys' type to be list
2019-08-20 17:55:13 +03:00
Jan Pochyla
bb2556a22c
core: improve code documentation, simplify wire package
...
* docs: improve loop.py, ui.init
* docs: improve trezor.loop, rename spawn to race
* docs: wire
* core/wire: simplify and document the session handler
* core/wire: improve documentation
* core/wire: improve docs
* core/docs: document ui.grid function
* core: decouple ui and workflow, document both
* core: improve docs
Co-authored-by: Tomas Susanka <tsusanka@gmail.com>
2019-08-20 16:20:02 +02:00
Pavol Rusnak
cc184a0a30
common: introduce Features.features enum
2019-08-20 14:38:31 +02:00
Roman Zeyde
588998cb85
apps/wallet: support Signify Ed25519 signatures ( #348 )
2019-08-19 15:20:39 +02:00
omtns
1bb77b81c0
common/defs: enable MTNS ( #415 )
2019-08-16 17:29:50 +02:00
Marius Kjærstad
1d6ea33ec6
docs: switch http to https in links ( #419 )
2019-08-16 17:28:15 +02:00
Tomas Susanka
e119e8de96
core/slip39: fix UI for 33 words
...
closes #395
2019-08-14 11:16:15 +02:00
Tomas Susanka
542f156b4f
core/slip39: remove _encrypt
...
(cherry picked from commit 53ca61ab00
)
2019-08-13 17:25:53 +02:00
Tomas Susanka
1b666804c0
core/shamir: fix EMS vs MS
...
(cherry picked from commit cb94454618
)
2019-08-13 17:25:47 +02:00
Tomas Susanka
0f742bc3a7
core: bump to 2.1.5, add changelog for 2.1.4
2019-08-12 13:48:54 +02:00
matejcik
eaf1e940a8
build: update test runners for new paths
2019-08-12 12:57:25 +02:00
matejcik
872e66efca
tests: drop pytest customization from core
...
it will no longer possible to run just `pytest` from core subdir
2019-08-12 12:57:25 +02:00
Roman Zeyde
7210a2f56d
common/defs: add 'confidential_assets' section to coin definitions ( #399 )
...
Enable 'confidential_assets' for Elements (following #66 and #317 ) to allow
deriving confidential addresses and signing confidential transactions.
The following Python helper script was used to update the JSON files:
```
import json
import sys
for f in sys.argv[1:]:
d = json.load(open(f))
d["confidential_assets"] = None
with open(f, "w") as o:
json.dump(d, o, indent=2)
o.write("\n")
```
Set it to `{'address_prefix': 4, 'blech32_prefix': 'el'}` for Elements.
`coins.json` and `coininfo.py` were re-generated using:
```
$ pipenv run make gen gen_check
```
2019-08-12 12:52:20 +02:00
matejcik
c285bbba7a
core: dispatch DebugLinkDecisions from a common queue
2019-08-09 16:53:12 +02:00
matejcik
741bfd5c53
core: remove loop.signal in favor of chan, change usage
2019-08-09 16:53:12 +02:00
matejcik
f680f0c0d3
core: unify NEM pager confirm with rest of codebase
2019-08-09 16:53:12 +02:00
matejcik
cf70f82d90
core: debug messages when reading from wire
...
fixes #373
2019-08-09 16:53:12 +02:00
matejcik
0890f68c0c
core: use channels to give feedback over debuglink
...
all debug input signals are now channels, and DebugLinkDecision handler
waits until the input was consumed. This means that the input events are
queued; originally, if an input event arrived before the previous was
consumed, the previous input would be lost.
reset words and their positions are now also channels, and
DebugLinkGetState can wait for their updates, if required
2019-08-09 16:53:12 +02:00
matejcik
6e7fc5f601
core: implement channels for sending messages
2019-08-09 16:53:12 +02:00
Pavol Rusnak
e23bb10ec4
core+legacy: fix KMD signing (introduce negative_fee coin field)
2019-08-09 16:47:24 +02:00
Tomas Susanka
024f4d64af
core/reset: modify confirmation sentence
2019-08-09 15:50:56 +02:00
Tomas Susanka
35ecfbcb3d
build
2019-08-09 13:34:46 +02:00
Andrew Kozlik
cb7bc8f410
core: Fix mypy warnings.
2019-08-09 12:52:55 +02:00
Andrew Kozlik
55f69becff
core/tools: Clarify hid-bridge README.
2019-08-09 12:46:41 +02:00
Andrew Kozlik
1d56b8b9a1
webauthn: Add login.microsoft.com to knownapps. Add Microsoft icon.
2019-08-09 12:46:28 +02:00
Andrew Kozlik
8297b81cd5
core/crypto: Add AES mode constants.
2019-08-09 12:46:08 +02:00
Tomas Susanka
db2ce2055d
docs: add link to a built version of the docs
2019-08-08 11:38:32 +02:00
Tomas Susanka
107ae697aa
docs: do not ignore build subdirectory
2019-08-08 11:12:17 +02:00
Pavol Rusnak
eaa85ddd6e
core+legacy: add new changelog entries
2019-08-07 15:42:33 +02:00
Jan Pochyla
6835748bbf
core/protobuf: fix 5b6fa113
2019-08-07 10:59:22 +02:00
Tomas Susanka
e897f7cf7f
core: fix unit tests
...
test_protobuf.py is failing because of `del ffields` introduced by 5b6fa1136a
2019-08-07 10:04:38 +02:00
Tomas Susanka
0ac0daf148
core: bump to 2.1.4
2019-08-06 22:06:44 +02:00
Jan Pochyla
943ed73166
core/ui: remove workaround, fixed properly in c9096d9
2019-08-06 15:43:17 +02:00
Jan Pochyla
5b6fa1136a
core: improve typing annotations
2019-08-06 15:42:23 +02:00
Andrew Kozlik
0a594ea1e9
Merge pull request #280 from trezor/andrewkozlik/slip-0021
...
Add SLIP-0021 implementation and tests.
2019-08-06 14:26:34 +02:00
Tomas Susanka
c8b95838b5
docs: restructure, add SUMMARY, add a few things
2019-08-06 10:44:48 +02:00
Jan Pochyla
c9096d9a0a
core/ui: mark Controls as dirty in the beginning
2019-08-05 15:41:44 +02:00
matejcik
aa9860fdb7
protobuf: add enum value validation ( #363 )
2019-08-02 19:06:01 +02:00
Tomas Susanka
0bc847ff7f
docs: remove old api.md article
2019-08-02 14:06:36 +02:00
Tomas Susanka
e30159c000
docker: remove
...
It seems to me 1) it does not work 2) no one actually uses this.
2019-08-02 10:35:11 +02:00
Tomas Susanka
776071e220
core/embed: add hint in fatal error on unix ( #378 )
...
core/embed: add hint in fatal error on unix
2019-08-02 10:22:07 +02:00
Pavol Rusnak
007f3aa6de
core: use uppercase for cashaddr QR codes
2019-08-01 17:48:07 +02:00
Tomas Susanka
4b1955dcd3
core/embed: add hint in fatal error on unix
2019-08-01 15:40:24 +02:00
Tomas Susanka
46c10e9402
core/shamir: end recovery mode after Success screen
2019-07-31 17:43:51 +02:00
Ciny
90b91a7fb5
#28 - binance implementation ( #189 )
...
- placeOrder, cancelOrder, transfer messages
- cli support
- unit and device tests
2019-07-31 17:02:41 +02:00
Tomas Susanka
e4a69dcc53
core/docs: fix toif_convert link
2019-07-30 14:12:23 +02:00
Tomas Susanka
ac2acb0b5a
core: mnemonic mypy
2019-07-30 11:22:56 +02:00
Tomas Susanka
4030874c7e
core: some mypy in recovery-related modules
2019-07-29 17:24:59 +02:00
Andrew Kozlik
c1c23cb5cb
core/tests: Add more tests for Cardano with SLIP-0039.
2019-07-29 14:02:52 +02:00
Tomas Susanka
6af7a6b3d6
core: bump version to 2.1.3
2019-07-29 13:48:54 +02:00
Tomas Susanka
4da54f95d6
core/shamir: remove checked icon from future items in Backup checklist
2019-07-29 13:42:20 +02:00
Tomas Susanka
81a1b26fad
core/shamir: fix texts
2019-07-29 12:51:02 +02:00
Tomas Susanka
4117f3506c
core/shamir: text improvements
2019-07-26 16:51:56 +02:00
Tomas Susanka
a8c9a4ddc4
core/shamir: send boolean flag in Features that Recovery is in progress
2019-07-26 16:38:05 +02:00
Tomas Susanka
5bd8ad321e
core/shamir: increase default iteration exponent to 1
2019-07-26 15:56:53 +02:00
Pavol Rusnak
529ec95c93
core: fix unit tests for omni
2019-07-26 15:55:27 +02:00
Pavol Rusnak
c288514a4f
core+legacy: fix display of non-divisible OMNI amounts
2019-07-26 12:59:10 +02:00
Tomas Susanka
c735299bd0
core/backup: fix mnemonic_module to mnemonic_type
2019-07-26 12:06:00 +02:00
Andrew Kozlik
217c910b4b
cardano: Implement SLIP-0023 and add SLIP-0039 support for Cardano.
2019-07-25 19:43:05 +02:00
Tomas Susanka
2b6a14cb5f
core: support load device with SLIP-39
...
updates #356
2019-07-24 15:45:52 +02:00
Tomas Susanka
e95a97f281
common/protobuf: set mnemonic as repeated in LoadDevice for SLIP-39 support
2019-07-24 15:45:52 +02:00
Jan Pochyla
ebe883e4a9
core: support rebooting into default mode
2019-07-24 15:12:04 +02:00
Tomas Susanka
d2597d54c1
core/shamir: persistence
...
updates #270
2019-07-24 15:12:04 +02:00
Tomas Susanka
8f4bbb8825
core/homescreen: move err and warn to ui module
2019-07-24 12:55:12 +02:00
Tomas Susanka
539379bd55
core: alter reset_device to use enum
2019-07-22 15:43:15 +02:00
Tomas Susanka
1480f754f4
build
2019-07-22 15:32:41 +02:00
Tomas Susanka
7c0a20b5bb
core: add common page for success and warning
2019-07-16 14:49:23 +02:00
Andrew Kozlik
5d561a0e53
core/tests: Fix Keychain usage in test_apps.wallet.signtx.fee_threshold.
2019-07-16 14:30:30 +02:00
Andrew Kozlik
58e06ba22c
core/seed: Ensure ed25519 paths are hardened in Keychain.derive().
2019-07-16 14:30:30 +02:00
andrew
5f604b5fea
core/seed: Add SLIP-0021 implementation and tests.
2019-07-16 14:30:28 +02:00
Tomas Susanka
db0847282a
core/reset: check three words
...
closes #289
2019-07-16 09:58:44 +02:00
Tomas Susanka
96cdd886bc
core: fix Hold To Confirm button
2019-07-15 14:16:49 +02:00
Tomas Susanka
d073102422
core/ripple: increase the maximum amount allowed to be sent
...
The maximum amount is defined in [Ripple's docs](https://xrpl.org/basic-data-types.html#currencies ) but it's most likely in XRP and not in drops ("satoshi" equivalent). This commit increase the value to the drops equivalent.
closes #327
2019-07-15 13:34:14 +02:00
Tomas Susanka
5134cd0b80
core: add backup warnings at correct place; add backup success page
...
closes #287
2019-07-15 11:17:40 +02:00
Tomas Susanka
baaba41447
docs: move git hooks to core docs and update
2019-07-12 12:53:32 +02:00
Andrew Kozlik
b9f63c3f55
webauthn: Add Binance to knownapps. Add Binance icon.
2019-07-12 11:38:44 +02:00
Tomas Susanka
ce312e484b
Show total number of words during device recovery ( #320 )
...
Show total number of words during device recovery
2019-07-09 16:30:28 +02:00
Tomas Susanka
841a27257e
Shamir reset device tests ( #319 )
...
Shamir reset device tests
2019-07-09 15:43:53 +02:00
ciny
11b9f1c4e8
core: show total number of words during device recovery
2019-07-09 15:40:41 +02:00
ciny
bdfdaa9bb1
core: added device tests for shamir reset
2019-07-09 14:09:12 +02:00
Jan Pochyla
081e459075
core: fix various types
2019-07-09 14:05:35 +02:00
Jan Pochyla
0f6f05e4b7
core/typing: fix extmod docs and mocks
2019-07-09 14:05:14 +02:00
Jan Pochyla
758a1a2528
core/typing: add annotations
2019-07-09 12:51:48 +02:00
Jan Pochyla
86e16bbf31
messages: add types
2019-07-09 12:51:48 +02:00
Jan Pochyla
3af75c0b8b
core/typing: improve extmod types
2019-07-09 12:51:48 +02:00
Jan Pochyla
f5299456a9
core/typing: add mypy
2019-07-09 12:51:48 +02:00
Dusan Klinec
67212a0d2e
PaginatedWithButtons fix, fixes #306
2019-07-08 16:59:13 +02:00
Tomas Susanka
46e4c02602
core: refactor storage
...
Each namespace now has its own file in apps.common.storage and
storage/__init__ serves as an entry point.
Updates #274 .
2019-07-08 15:24:56 +02:00
Tomas Susanka
f04f190a02
core/ui: enlarge backspace button
...
closes #288
2019-07-02 14:27:03 +02:00
Tomas Susanka
049c5211f3
Restore progress_bar parameter in mnemonic.seed ( #297 )
...
Restore progress_bar parameter in mnemonic.seed
2019-07-02 12:14:46 +02:00
Pavol Rusnak
3c40ab8d96
core/src: remove unused num_pad.py
2019-07-02 00:01:31 +02:00
Pavol Rusnak
bf3c257f96
core/messages: don't generate unused messages
2019-07-01 15:52:36 +02:00
Tomas Susanka
f94bc26110
core/mnemonic: return progress_bar parameter
2019-07-01 15:08:23 +02:00
Tomas Susanka
5aa592a69a
core/slip39: modify wording on success screen
2019-06-28 12:26:34 +02:00
Tomas Susanka
f78e75bc38
core/slip39: add different wording for BIP/SLIP39 in backup warining
2019-06-28 11:57:02 +02:00
Milan Rossa
9b2167a138
core: asan config
2019-06-27 19:09:55 +02:00
Tomas Susanka
390bef00ca
core/slip39: catch exception also when finding out threshold in recovery
2019-06-27 15:42:09 +02:00
Tomas Susanka
6c50b155de
core: remove unused variables in Shamir recovery
2019-06-27 14:10:33 +02:00
Tomas Susanka
c205acd3e1
core/slip39: do not populate MnemonicError's message; do not throw exceptions with mnemonic inside the message
2019-06-27 14:00:45 +02:00
Tomas Susanka
4f8022c5cd
core/slip39: remove partial persistance in Shamir recovery
2019-06-27 13:47:02 +02:00
Milan Rossa
22f562e275
core: add status to main_exit function
2019-06-26 22:13:21 +02:00
Milan Rossa
9f681a363e
core: git ignore coverage outputs
2019-06-26 22:10:05 +02:00
Roman Zeyde
f3e3ebe1d8
core: unify exception handling at wallet.sign_tx ( #255 )
2019-06-26 16:53:26 +02:00
Roman Zeyde
99e21f2a96
core: keep BIP143 hashes as bytes ( #258 )
...
AFAIU, there is no need to convert them to bytearray.
2019-06-26 16:52:31 +02:00
Tomas Susanka
bc3a4a69be
core: style
...
I'm sorry about this, I'll add a git hook for pre-push I promise.
2019-06-26 13:20:41 +02:00
Tomas Susanka
8f3e648497
core/slip39: remove note on T9 keyboard
2019-06-26 13:18:47 +02:00
Ján Hrnko
0a70f8da1b
core/emu: use #!/usr/bin/env in shebang ( #263 )
2019-06-26 12:16:41 +02:00
Tomas Susanka
582910732a
core/slip39: one more typo
2019-06-26 11:40:33 +02:00
Tomas Susanka
2f0a5adac6
core/slip39: hopefully final version of slip39 texts
2019-06-26 11:11:50 +02:00
Tomas Susanka
4fbac3ec63
style
2019-06-26 10:23:32 +02:00
Tomas Susanka
5394d5a5a5
core/slip39: add texts from copy and add success screen in recovery
2019-06-26 06:59:45 +02:00
Jan Pochyla
487cc19750
core/recovery_device: fix dry_run
2019-06-25 18:25:32 +02:00
Tomas Susanka
240440550a
style
2019-06-25 16:56:35 +02:00
Tomas Susanka
4124ad3ccd
core/slip39: return ProcessError when mnemonic processing fails
2019-06-25 16:49:46 +02:00
Jan Pochyla
a4039f9459
core/management: fix word check, add icons to checklist
2019-06-25 15:47:19 +02:00
Tomas Susanka
10e5ec6135
core/slip39: generate and store slip39 identifier during reset
2019-06-25 14:43:20 +02:00
Jan Pochyla
07de336586
core/pin: do not allow empty pin
2019-06-25 13:23:48 +02:00
Jan Pochyla
4d0fe4d064
core/management: fix various reset/backup/recovery ui bugs
2019-06-25 13:23:48 +02:00
Tomas Susanka
989fb1491f
core/slip39: suggest word sooner when a single one is left
2019-06-25 10:35:19 +02:00
Pavol Rusnak
1ec5d091fd
core/usb: call wait_random just before returning the data
2019-06-24 19:13:12 +02:00
Tomas Susanka
0daf2bf6b6
core/reset device: remove unnecessary check
2019-06-24 15:25:21 +02:00
Jan Pochyla
03f23fe940
core/mnemonic: cancel homescreen before seed progress animation
...
If we close the default layout before the animation starts, the workflow manager starts it again after the current workflow ends (and no layout is running).
2019-06-24 13:12:12 +02:00
Tomas Susanka
10f15a6952
core: bump version to 2.1.2
2019-06-24 09:13:18 +02:00
Tomas Susanka
80f8f7900d
core: add slip39 support to reset and recovery device
2019-06-23 21:33:58 +02:00
Tomas Susanka
49d6a35249
core: add slip39 keyboard
2019-06-23 21:33:58 +02:00
Roman Zeyde
6fb76f95d1
core: ensure correct pubkeyhash/witprog length in scripts.py ( #254 )
2019-06-22 16:22:00 +02:00
Pavol Rusnak
e3e2811f7a
core: throw exception classes instead of instances where possible
2019-06-22 02:14:02 +02:00
Pavol Rusnak
312224b7a3
core: fix style
2019-06-22 00:18:31 +02:00
Pavol Rusnak
e432c37df0
core/sdcard: read/write now don't return bool, but rather throw an Exception instead
2019-06-21 22:51:53 +02:00
Pavol Rusnak
4938fb5461
core/tests: rename trezor.io.sdcard test, don't use assert in tests directly
2019-06-20 17:22:44 +02:00
Pavol Rusnak
c8bc21a393
core: bump SD card capacity to 64MB in emulator
2019-06-20 11:52:50 +02:00
Pavol Rusnak
2d8e11e827
core/tests: expand slip39 test_error_location
2019-06-18 23:50:03 +02:00
Andrew Kozlik
84d3723ee9
slip39: Add RS1024 error locator function.
2019-06-18 18:34:29 +02:00
Pavol Rusnak
54d348228f
all: rename TREZOR to Trezor where possible
2019-06-17 20:28:29 +02:00
Tomas Susanka
906013a6d7
ui/mnemonic: small refactor in input's edit
2019-06-13 21:18:23 +02:00
Tomas Susanka
40d55dfe8b
ui: remove dead code in mnemonic.py
2019-06-13 17:58:15 +02:00
Jan Pochyla
5bc6bc4635
core: fix request_passphrase notification screen
2019-06-12 16:08:59 +02:00
Jan Pochyla
416226648c
core: rotate touch coordinates by default
2019-06-12 15:30:05 +02:00
Roman Zeyde
a4c0645622
core: return exception details in debug mode ( #238 )
2019-06-11 17:07:18 +02:00
Pavol Rusnak
c1f5432904
Merge pull request #239 from trezor/andrewkozlik/hmac_drbg
...
Add HMAC DRBG and use it to generate random delays
2019-06-11 16:59:50 +02:00
Roman Zeyde
40bf2c5d2e
core: ensure pubkeyhash/scripthash have the correct length ( #220 )
2019-06-11 14:34:58 +02:00
Andrew Kozlik
c2bdd1cf32
core/common: Change delay_random() to wait_random().
2019-06-11 11:41:40 +02:00
Andrew Kozlik
f677a0f0db
core: Use PRNG when generating random delays.
2019-06-11 11:41:40 +02:00
Andrew Kozlik
1d9e125fd4
crypto/rfc6979: Use the new HMAC DRBG implementation in rfc6979.c. Remove code duplication between rfc6979.c and ecdsa.c.
2019-06-11 11:41:40 +02:00
Andrew Kozlik
0e277dfcb0
core/slip39: Fixed a bug when generating shares with group_threshold = 1.
2019-06-11 11:26:29 +02:00
Pavol Rusnak
0b96b48a8c
core/tools: rename toif_convert to toif_convert.py
2019-06-09 19:17:53 +02:00
Pavol Rusnak
b89134bf3f
core/tools: fix style in toif_convert
2019-06-09 19:04:10 +02:00
Pavol Rusnak
9cb9653c27
core: refactor png2toi/toi2png tools into one toif_convert usable as a library
...
unify filename extensions
2019-06-09 18:07:07 +02:00
Tomas Susanka
677562d571
Merge pull request #216 from trezor/tsusanka/iss212-monere-tests
...
ci: download monero tests binary in docker
2019-06-06 10:57:24 +02:00
matejcik
835d5df175
core: reset i2c bus when detected busy
...
(cherry picked from commit bf79384845
)
2019-06-05 14:18:24 +02:00
Pavol Rusnak
e6bb2697c8
core: update ChangeLog
2019-06-05 14:17:38 +02:00
Tomas Susanka
83a5ae3def
ci: download monero tests binary in docker
...
closes #212
2019-06-03 19:44:41 +02:00
Pavol Rusnak
1ee5068128
core/cbor: fix string conversion to work with bytearrays
2019-06-01 11:49:27 +02:00
Andrew Kozlik
31506d81e9
core/cbor: move CBOR from cardano to common
...
- add support for text strings and boolean values
- add support negative integers and decoding maps
- fix decoding of short strings
- encode maps canonically
- add unit tests for decoding
- sort maps lexicographically by encoded key
2019-06-01 11:38:52 +02:00
Pavol Rusnak
751715dc15
common/defs: add to support.json, regenerate
2019-06-01 08:57:06 +02:00
Roman Zeyde
b538eb3375
core/secp256k1_zkp: refactor API into a Context class
...
In order to prevent frequent memory allocations, the user can create a single
Context object and re-use it between subsequent cryptographic operations.
2019-05-31 17:29:49 +02:00
Tomas Susanka
6a27328801
xmr: get_address - pagination, integrated address ( #201 )
...
xmr: get_address - pagination, integrated address
2019-05-31 15:06:46 +02:00
Tomas Susanka
412efcd35e
tests: remove progress bar from curl
...
It makes CI logs nicer.
2019-05-31 14:44:45 +02:00
Milan Rossa
779ff86214
core: redesign multiprofile support, add profile verbosity
2019-05-31 13:32:49 +02:00
Dusan Klinec
16317f1814
xmr: get_address - pagination, integrated address
...
- pagination added to show_address
- integrated address supported
- QR code fixed (prefix with monero: as GUI does)
2019-05-31 13:18:11 +02:00
Jan Pochyla
961499fdcf
core: fix uppercase ripple address in qr code
...
Fixes #191
2019-05-28 15:57:04 +02:00
Jan Pochyla
0b03794fee
core/tests: disable fading, improve runners
2019-05-28 13:12:46 +02:00
Jan Pochyla
36534325f0
core: revamp the UI subsystem
2019-05-28 13:12:46 +02:00
Jan Pochyla
2f4c123466
core: fix gitignore for older git
2019-05-28 11:17:07 +02:00
Jan Pochyla
09da577fd9
core: use const in trezor.crypto.slip39
2019-05-28 11:17:07 +02:00
Pavol Rusnak
b89d1db0e4
core: update build instructions
2019-05-28 10:24:49 +02:00
Pavol Rusnak
917f5c6534
core: remove bashisms from emu.sh
2019-05-28 10:19:18 +02:00
Pavol Rusnak
a3717c7b6c
core/slip39: use condensed wordlist
2019-05-27 19:39:41 +02:00
Pavol Rusnak
11aac67c82
core: fix last commit
2019-05-27 17:45:06 +02:00
Pavol Rusnak
ae749eedee
core/secp256k1_zkp: don't allocate static buffer
2019-05-27 17:21:14 +02:00
matejcik
6864758f2b
docs: fix typo in testing.md
2019-05-27 17:01:49 +02:00
matejcik
32fbdb2abd
docs: update testing documentation
2019-05-27 16:38:42 +02:00
matejcik
a0d7a6a667
python: more consistent handling of markers in device_tests
...
also better behavior when no Trezor device is present
2019-05-27 16:38:35 +02:00
Pavol Rusnak
f7053d96fe
all: remove extraneous whitespace
2019-05-26 22:20:14 +02:00
Pavol Rusnak
daf0d77923
core: remove raspi makefile target
...
Raspi build is still available when ENV variable is set,
but no need to bloat the Makefile/SConscript file
2019-05-26 21:57:47 +02:00
Pavol Rusnak
07ce935725
core/eos: revert new pubkey format
2019-05-26 11:48:49 +02:00
Pavol Rusnak
5a2c67ccae
core: let's have pytest.ini back
2019-05-25 13:53:58 +02:00
Pavol Rusnak
23202e2479
core: remove pytest.ini because it hides setup.cfg from root
2019-05-25 13:37:34 +02:00
Pavol Rusnak
0765842e7f
root: move pytest markers to setup.cfg
2019-05-25 13:06:28 +02:00
Pavol Rusnak
684862a7f5
common: more TRX cleanup
2019-05-25 12:48:04 +02:00
Roman Zeyde
8a179437b1
core: add custom markers to pytest.ini
...
Following https://docs.pytest.org/en/latest/mark.html#registering-marks
2019-05-25 12:09:45 +02:00
Tomas Susanka
cc5c8ae7e0
common+python: Revert Ontology support
...
This reverts commit 402e72e36e
.
This reverts commit 21326d3a41
.
This reverts commit 18739987ee
.
2019-05-25 11:59:35 +02:00
Tomas Susanka
562206d220
tests: remove xfail
2019-05-25 11:59:35 +02:00
Roman Zeyde
d190d906de
core/secp256k1-zkp: use ARM assembly for field operations ( #176 )
...
Update to latest secp256k1-zkp to allow building on Cortex-M4 devices (https://github.com/ElementsProject/secp256k1-zkp/pull/56 ).
2019-05-25 11:42:13 +02:00
Jan Pochyla
9586358e44
core: log memory info if TREZOR_LOG_MEMORY env is set
2019-05-24 16:28:11 +02:00
Pavol Rusnak
9460ac425a
core/eos: fix pubkey unit test
2019-05-24 16:18:07 +02:00
Pavol Rusnak
8c1f5c88f7
core: fix style
2019-05-24 16:09:12 +02:00
Jan Pochyla
c2f5174b43
core: optimize memory usage in signing
2019-05-24 16:04:20 +02:00
Pavol Rusnak
a6e51434f2
core/eos: use new pubkey format
2019-05-24 16:01:28 +02:00
Pavol Rusnak
414b33dbfb
core/eos: reduce code duplication
2019-05-24 15:52:57 +02:00
Pavol Rusnak
1583ea62f9
core: serialize signature in EosSignedTx message
2019-05-24 12:49:19 +02:00
Tomas Susanka
279b40bdb7
build: templates
...
Fixes tests broken by 9e05517872
2019-05-24 11:49:03 +02:00
Pavol Rusnak
5f1586e049
core: regenerate templates
2019-05-23 20:24:44 +02:00
Pavol Rusnak
164336cb56
core: add equality function to mako template too
2019-05-22 22:46:22 +02:00
Pavol Rusnak
0568379f8d
core/tests: disable over_fee_threshold test
2019-05-22 19:29:49 +02:00
Pavol Rusnak
a99ccbc4d2
core: add equality function to coininfo
2019-05-22 16:59:06 +02:00
Pavol Rusnak
b31092a874
core/tests: don't use coins.by_shortcut
2019-05-22 16:46:49 +02:00
Pavol Rusnak
2060ca569f
core: fix flake8 warning
2019-05-22 16:28:26 +02:00
Jan Pochyla
1f3adc7069
core: store bitcoin-like coins as a decision tree
2019-05-22 16:15:39 +02:00
Pavol Rusnak
9676eec4df
common: update support for core coins
2019-05-22 16:06:58 +02:00
Trustfarm-heart
31fca6d25d
common/defs: add TEO ( #163 )
2019-05-22 15:43:47 +02:00
Pavol Rusnak
2b3f72f994
core: update changelog
2019-05-22 15:25:10 +02:00
matejcik
984c6b6236
style: drop tokens.py from style checks
...
because pyflakes / stdlib's ast will exceed recursion depth
while analyzing the main function
2019-05-22 15:06:23 +02:00
Pavol Rusnak
60d1460185
core/ethereum: simplify code for token list
2019-05-20 18:04:12 +02:00
Jan Pochyla
d56de2c5fe
core: import some modules lazily to save memory
2019-05-20 16:51:47 +02:00
Jan Pochyla
875579867e
core/ethereum: store tokens as a decision tree
2019-05-20 16:51:46 +02:00
matejcik
e2ab5d0565
core: fix usage of EthereumAddress after old field was restored
2019-05-17 15:49:01 +02:00
matejcik
0b50d671e1
make gen && make style
2019-05-17 15:48:57 +02:00
matejcik
482b4569f5
build: fix and auto-generate mock files
...
Squashed commit of the following:
commit 84d3486f59bda063f06521c8b695ea4b07781ec6
Author: matejcik <ja@matejcik.cz>
Date: Fri May 17 14:17:15 2019 +0200
mocks: complete
commit d538133a6d0fb4af06c7c81f80b8675869fb5908
Author: matejcik <ja@matejcik.cz>
Date: Fri May 17 14:12:26 2019 +0200
mocks part 3
commit 9f0b868d41dafaf487df6fc844db7f3368eabe1b
Author: matejcik <ja@matejcik.cz>
Date: Fri May 17 14:09:20 2019 +0200
mocks: update generated mocks
commit 5d80c18a7824ed16fc11cde4cdb8ebca7ed33400
Author: matejcik <ja@matejcik.cz>
Date: Thu May 16 15:49:40 2019 +0200
mocks wip 2
commit 4b576eb796136a61eb88cb0d281fa4e21eadada8
Author: matejcik <ja@matejcik.cz>
Date: Tue May 7 17:02:51 2019 +0200
WIP mocks part 1
commit cf3f0d4471ab74b478d2970b0bb178feae7c86a3
Author: matejcik <ja@matejcik.cz>
Date: Fri May 3 17:07:53 2019 +0200
core: add package to secp256k1_zkp for mocking
commit 8a12f26c8c0d99363c8df96012426abbbb3ff6cb
Author: matejcik <ja@matejcik.cz>
Date: Fri May 3 17:04:05 2019 +0200
core: blackify extmod docstring quotes
commit b6f239676dde8b60b001fcae4e5de80a71dbacf2
Author: matejcik <ja@matejcik.cz>
Date: Fri May 3 16:52:27 2019 +0200
core: make build_mocks directory agnostic
mocks: detect bad packages
mocks: revert noqa in favor of setup.cfg
mocks: fix broken comment formatting
2019-05-17 15:45:47 +02:00
matejcik
ffcb5e99cc
mocks: fix shamir package
2019-05-17 15:12:41 +02:00
matejcik
f8446c3e00
build: centralize pb2py usage
2019-05-17 15:12:32 +02:00
Pavol Rusnak
b5b4a2ca5f
core: remove empty __init__.py files
2019-05-17 11:46:04 +02:00
Pavol Rusnak
1812be5d49
core: fix missing value for mnemonic_type when upgrading firmware
2019-05-17 00:31:41 +02:00
Pavol Rusnak
f7d41cbbd7
core+legacy: drop NOUI and HEADLESS, SDL_VIDEODRIVER works fine
2019-05-16 17:06:14 +02:00
matejcik
b69a9e768b
core: fix ethereum test
2019-05-16 13:29:47 +02:00
Konnor Klashinsky
fe65a70dce
Do not display token values in Wei for low-decimal value tokens ( #141 )
...
* Do not display token values in Wei for low-decimal value tokens
* update logic
* add unit tests
2019-05-16 12:50:23 +02:00
Pavol Rusnak
0a52b51a26
core: regenerate templates
2019-05-14 17:15:14 +02:00
Dusan Klinec
f767f890cd
tests: new monero binary added
2019-05-14 11:37:56 +02:00
Pavol Rusnak
4097f254d5
core: don't erase passphrase on ClearSession
2019-05-13 19:35:32 +02:00
Pavol Rusnak
00564f4a1c
core/cache: fix setting of None passphrase
2019-05-13 16:53:41 +02:00
Pavol Rusnak
35945239eb
core/embed: use MP_ROM_INT instead of MP_OBJ_NEW_SMALL_INT where intended
2019-05-13 16:52:21 +02:00
Pavol Rusnak
1dc2ccf4a5
core/xmr: fix style
2019-05-13 15:53:44 +02:00
Pavol Rusnak
7fe09e52bd
core/cache: use different default value for passphrase_fprint
2019-05-13 15:46:23 +02:00
Pavol Rusnak
f1c34701b8
core/cache: cache passphrase_fingerprint, compute it only on change
2019-05-13 15:34:23 +02:00
Dušan Klinec
9f36c73a78
core/xmr: authorize live refresh per passphrase ( #129 )
...
Improves UX as the live refresh prompts were too often.
2019-05-13 15:27:04 +02:00
matejcik
43866407df
move vendored submodules to root vendor/ dir
...
before pulling, run `git submodule deinit --all`
2019-05-13 13:51:53 +02:00
Roman Zeyde
8d47709eec
core/tools: fix typo ( #149 )
2019-05-11 14:18:09 +02:00
matejcik
2e578572dd
add EOS support
...
Squashed commit of the following:
commit 060563458fbc3b4a17f4d77ba5cd62d0c265c806
Author: matejcik <ja@matejcik.cz>
Date: Fri May 10 16:16:19 2019 +0200
skip t1 in eos test
commit f759089fef29501467b62bf1540715132a72c4cf
Author: matejcik <ja@matejcik.cz>
Date: Fri May 10 15:55:20 2019 +0200
make style
commit 3ecdd5f77b331d7a6e5a46a10c79d80f214f31bd
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Thu May 9 22:05:41 2019 +0300
Refinements in asset to to string conversion function according to code review and test cases for amounts less than 1
commit 72e44a35bada76abdd94ab866c2113a6d9d85191
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Wed May 8 00:27:45 2019 +0300
Moved to input_flow rest of the tests, cleanup and styling
commit 92f9acbabcbef44a6912b074a309393450f0c8de
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Tue May 7 21:47:12 2019 +0300
Fix for amounts less then 1
commit 8a0154f7432ab78e69a123202a97194d34c2a3cb
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 23:26:24 2019 +0300
removed unnecessary peace of code
commit b25c15de3eb1df863760e81ca69f09094349c26e
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 23:16:57 2019 +0300
Fixed validate path parameters
commit f0f6e7036a8b88d9c5c6b702a8d851e9a9bd3378
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 23:04:58 2019 +0300
Fixes
commit 0c64d3814300df86d452975b2bd46fea13f512d2
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 22:19:51 2019 +0300
Fixed styling
commit 41d1e77231e7da78fade9b2efa1b7d1980f0d3a8
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 22:13:58 2019 +0300
Changes to core, added CURVE to path validation
commit c045b4554ee8e058dbfe35f715b003d0d85ab1d4
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon May 6 22:07:37 2019 +0300
Changes according to review
commit 3f0e6cfd40e7d87dc3287bc3a0b2b9db5dea5377
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Mon Apr 29 21:37:16 2019 +0300
Added change to make expiration date timezone agnostic
commit efdf44c326cc3f3137c447e798db5439b57c91fa
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Thu Apr 18 00:14:30 2019 +0300
changes according to code review
commit 3b3723da8f8f536c7c370a14236ea81aac25080a
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Tue Apr 16 23:44:50 2019 +0300
Merged python to monorepo
commit da6b0c683c29388e15c889ecea6e7f7471961a19
Author: Andriy Tkachyshyn <atkachyshyn@gmail.com>
Date: Tue Apr 16 23:13:42 2019 +0300
Merged core to monorepo
2019-05-10 16:23:18 +02:00
matejcik
23306d2a0d
defs: drop Aquachain from generated templates
...
before we enable it through support.json
2019-05-10 16:22:36 +02:00
aerth
ffde130003
common/defs: add Aquachain (AQUA) ETH network ( #138 )
2019-05-07 21:32:45 +02:00
matejcik
afdfd5fbdb
cardano: optimize transaction signing
...
squash merge. closes #94 and #130
Squashed commit of the following:
commit 1adc68051df863f5ce3767f6594d91fc9ad7bb16
Author: refi93 <rafael.korbas@gmail.com>
Date: Tue May 7 00:13:07 2019 +0200
cr fix
commit 833b831754aa3dfce4630e9d64e7fb6c5147ceb1
Author: refi93 <rafael.korbas@gmail.com>
Date: Mon May 6 21:59:49 2019 +0200
cr fix style
commit 2962e697c993d3df9a53dcc6cebc9148c1d701f5
Author: Matúš Juran <matus.juran@vacuumlabs.com>
Date: Thu May 2 16:57:55 2019 +0200
cardano: optimize transaction signing
Optimize the storage of previous transactions. Instead of passing a list
of transactions to the Transaction object, verify all inputs beforehand.
Stop creating helper lists when serializing the transaction. This allows
to process a few more inputs.
2019-05-07 17:33:00 +02:00
matejcik
17a7a92b7f
core: remove setup.cfg, keep pytest.ini for convenience
2019-05-07 17:04:21 +02:00
matejcik
e55b42dddb
common: fix tGOR entry
2019-05-07 16:45:34 +02:00
matejcik
bf067cc0c6
core: better handling of TxRequest with mixed inputs
...
fixes #133
2019-05-07 16:31:40 +02:00
matejcik
f7e0bb6183
style: improve pylint exclusions
2019-05-07 16:31:04 +02:00
matejcik
388400bc1b
core: remove or mark star imports
2019-05-07 16:31:04 +02:00
matejcik
cf5df6b39b
style: improve Makefile, stricter style rules
2019-05-07 16:31:04 +02:00
ligi
e388b69fbd
common/defs: Add Ethereum Testnet Goerli ( #137 )
2019-05-07 12:34:28 +02:00
Andrew Kozlik
28c85dee8e
Merge pull request #85 from trezor/andrewkozlik/slip0039
...
Implement SLIP-0039 primitives in MicroPython and C.
2019-05-06 13:34:27 +02:00
Pavol Rusnak
f27187e603
core: embed background images into the emulator binary
2019-05-04 22:33:48 +02:00
Pavol Rusnak
87f14965c4
core: finish frozen modules support
2019-05-04 22:15:20 +02:00
Pavol Rusnak
ce4a1f2e1d
core: remove unnecessary files
2019-05-03 21:37:01 +02:00
Pavol Rusnak
eb1192bc2c
core: simplify emu.sh runner
2019-05-03 21:28:24 +02:00
Andrew Kozlik
bebce78881
core/slip39: Update code logic, tests and test vectors in accordance with the new requirement that the number of shares provided is equal to the threshold.
2019-05-03 18:28:14 +02:00
Andrew Kozlik
ff594753e0
core/tests/slip39: Add tests for invalid threshold.
2019-05-03 16:09:40 +02:00
Andrew Kozlik
0248671438
core/slip39: Resolve code review comments.
2019-05-03 15:12:13 +02:00
Andrew Kozlik
0a99ad3f13
Merge remote-tracking branch 'origin/master' into andrewkozlik/slip0039
2019-05-02 15:08:43 +02:00
Andrew Kozlik
edab43234d
core/slip39: Disallow creating multiple member shares with member threshold 1. Add tests for invalid parameters to generate_mnemonics().
2019-05-02 15:00:04 +02:00
Andrew Kozlik
0c3dde6464
tests: Update SLIP-0039 test vectors.
2019-05-02 14:55:58 +02:00
Pavol Rusnak
6e6ff78ce0
core: re-enable frozen modules in the emulator build
2019-05-01 13:41:23 +02:00
Pavol Rusnak
4b8c418dbc
core: fix docker build
2019-04-30 18:03:24 +02:00
matejcik
0fc275a835
core: make templates after token handling change
2019-04-29 19:22:07 +02:00
Andrew Kozlik
479396b56f
core/slip39: Remove math module dependency.
2019-04-29 12:23:10 +02:00
Andrew Kozlik
e631983d6d
Merge remote-tracking branch 'origin/master' into andrewkozlik/slip0039
2019-04-29 11:29:54 +02:00
Tomas Susanka
7c58d7d24e
ci: split gitlab configuration files and store them in a 'ci' folder
...
The core/build-docker.sh si broken, but so it was already in master and
is tracked to be fixed in #108 .
2019-04-28 09:31:41 +02:00
Pavol Rusnak
32c5f58782
core: regenerate templates
2019-04-27 16:23:17 +02:00
Pavol Rusnak
b76fb0905d
core: remove flamegraph
2019-04-26 22:52:00 +02:00
Pavol Rusnak
719d54d97d
core: regenerate templates
2019-04-26 18:06:36 +02:00
Tomas Susanka
9ed77afd12
core: build protobuf
2019-04-26 12:00:20 +02:00
Pavol Rusnak
1532c96b0e
core+legacy: remove tag automagic from build scripts
2019-04-25 17:04:15 +02:00
Pavol Rusnak
16dbe5f6f6
core+python: remove unnecessary .travis.yml
2019-04-25 15:20:28 +02:00
Pavol Rusnak
62707a062a
core+legacy: reintroduce USB 2.1 landing page for firmware
2019-04-24 22:56:07 +02:00
Roman Zeyde
30ae11f22e
core: allow running 'build_protobuf' from any directory ( #106 )
2019-04-24 21:38:51 +02:00
Pavol Rusnak
1c00d868a9
core: bump versions of firmware to 2.1.1, bootloader to 2.0.4
2019-04-23 21:31:00 +02:00
Pavol Rusnak
914ac8a2bd
core: fix unit tests
2019-04-23 20:11:59 +02:00
Pavol Rusnak
2f77c53781
core: format last change
2019-04-23 19:55:18 +02:00
Pavol Rusnak
a89a3bf6db
core: fix last commit
2019-04-23 19:54:03 +02:00
Pavol Rusnak
c761351afa
core: add indeterminate flag to display_loader
2019-04-23 19:21:03 +02:00
Pavol Rusnak
c995d9fa59
Revert "ui.display.loader: slice_span added for indeterminate loaders"
...
This reverts commit 9de96f6114
.
2019-04-23 18:31:30 +02:00
Pavol Rusnak
def96032d2
core+legacy: make path checks more benevolent ( #84 )
...
Non-existing BIP-48 is causing mess among implementations
2019-04-23 18:16:37 +02:00
Tomas Susanka
24bd4f84da
ci: gitlab init
...
Lot of things are missing, this is to at least have something in master. Todo:
- add legacy, python and storage tests
- fix crypto
- cache
- pass builds from build stage to tests using artefacts
and many others
2019-04-23 15:57:24 +02:00
Tomas Susanka
456d98ac03
all: style
2019-04-23 14:41:59 +02:00
Tomas Susanka
c9f380eae4
Tezos: Add voting support ( #41 )
...
Tezos: Add voting support
2019-04-23 14:00:32 +02:00
Tomas Susanka
37a597a444
xmr.ui: improves UX of the monero app ( #95 )
...
xmr.ui: improves UX of the monero app
2019-04-23 14:00:05 +02:00
Dusan Klinec
7ea53c089e
xmr: indeterminate progress for live refresh
2019-04-23 09:15:59 +02:00
Dusan Klinec
9de96f6114
ui.display.loader: slice_span added for indeterminate loaders
2019-04-23 09:15:58 +02:00
Dusan Klinec
a3aae9c234
xmr.ui: improves UX of the monero app
...
Based on the testing feedback I've made slight modifications to the UI.
Main points:
- running on the full brightness during the process (previously dimmed, felt broken)
- overlaying layout fix after transaction confirmation
2019-04-23 09:15:58 +02:00
Pavol Rusnak
af89ae88dc
core+legacy: update changelogs
2019-04-22 18:57:14 +02:00
Tomas Susanka
4c8ef80cc7
core: build templates
2019-04-19 17:21:00 +02:00
Tomas Susanka
de6be423a1
all: add Pipfile to root
...
Although we have to a) discuss if we want this b) consolidate with other
Pipfiles if so.
2019-04-19 16:37:58 +02:00
Tomas Susanka
021a8a0cb8
xmr: live refresh progress starts from 0
...
Migrated from https://github.com/trezor/trezor-core/pull/552
2019-04-19 16:07:28 +02:00
Pavol Rusnak
8b06598474
core+legacy: rework code styling checks
2019-04-18 17:40:55 +02:00
matejcik
834a483e1a
tezos: make style
2019-04-18 15:54:29 +02:00
matejcik
1e1e6513a0
core/tezos: add ButtonRequest in front of proposal paginator
2019-04-18 15:43:33 +02:00
matejcik
1e7357db80
core/ui: fix crash when trying to scroll with only one page
2019-04-18 15:03:24 +02:00
Andrew Kozlik
1ee831f50c
Merge remote-tracking branch 'origin/master' into andrewkozlik/slip0039
2019-04-18 14:59:05 +02:00
matejcik
9f8ebcf183
build: make build scripts work from monorepo root
...
incidentally fixes #9 and the dreaded non-bug #8
2019-04-18 14:55:04 +02:00
Adrian Nagy
8ee605484e
remove stray print
2019-04-18 14:45:36 +02:00
Adrian Nagy
dce60da6ec
Added comment to path validation
2019-04-18 14:37:11 +02:00
Andrew Kozlik
c073d68a2d
crypto/shamir: Improve error handling.
2019-04-18 14:35:18 +02:00
Adrian Nagy
2dd1ae6491
refactor path validation
2019-04-18 14:25:42 +02:00
Tomas Susanka
ec38a8ce3f
core: update Pipfile.lock
2019-04-18 12:50:21 +02:00
Adrian Nagy
da7bb8abf8
fix path validation and update unit tests
2019-04-18 12:32:43 +02:00
Adrian Nagy
c588d0b4f3
requested changes #2
2019-04-18 08:41:38 +02:00
Pavol Rusnak
e7592a4c04
nix: consolidate various shell.nix files into one
2019-04-18 00:26:04 +02:00
Tomas Susanka
5dc0a1ee0a
core/extmod: return False or None consistently when a signature verification fails
...
from https://github.com/trezor/trezor-core/pull/535 by @real-or-random
2019-04-17 16:23:28 +02:00
Andrew Kozlik
0d21bca288
crypto: Move Shamir secret sharing to trezor-crypto.
2019-04-17 11:26:16 +02:00
Andrew Kozlik
d2a399debf
Merge remote-tracking branch 'core-local/andrewkozlik/slip0039' into andrewkozlik/slip0039
2019-04-17 10:53:00 +02:00
Pavol Rusnak
be76dcc96a
toplevel: reorganize .gitignore files
2019-04-17 00:05:24 +02:00
Adrian Nagy
fd95ff0531
made requested changes
2019-04-16 19:20:40 +02:00
Adrian Nagy
c0e5a32dec
Add voting support
2019-04-16 19:16:01 +02:00
Adrian Nagy
0c630831dc
Merge remote-tracking branch 'core-local/voting' into voting
2019-04-16 11:10:52 +02:00
matejcik
28e74b5e0e
MONOREPO RELINK SUBMODULES
2019-04-15 19:15:14 +02:00
matejcik
e5670856a2
MONOREPO CREATE FROM trezor-core
2019-04-15 19:14:40 +02:00