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

529 Commits

Author SHA1 Message Date
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