1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-10-19 06:19:27 +00:00
Commit Graph

31 Commits

Author SHA1 Message Date
grdddj
73238135d6 feat(core/ethereum): EIP-712
Based on original contribution by Max Kupriianov <xlab@hey.com>

Implemented EIP-712 typed data signatures in Ethereum app.

Add eth_abi into pyproject deps

device test for EIP 712

fixed hex decoding for address

fixup! fixed hex decoding for address

code quality, more pythonic code, removing unused imports

running black and isort on changed files

trezorctl file input for EIP 712 data signing

fixup! code quality, more pythonic code, removing unused imports

fixup! fixup! code quality, more pythonic code, removing unused imports

necessary changes after rebase to master

unit tests for sign_typed_data.py

new protobuf messages, working for nonarray types

simplified and verified solution for our simple data

support for simple arrays, without their confirmation

reverting protobuf value messages to bytes, appropriate changes

showing arrays in Trezor, code quality improvements

data validation on Trezor, minor improvements

using custom types for storing type data instead of dicts, addressing feedback from review

moving helper functions to its own file, tests for decode_data

additional overall tests

support for arrays of structs

adding support for metamask_v4_compat variable

using HashWriter object to collect the final hash continously

minor improvements in code quality

validate_field_type function

streaming values from client without saving them, missing UI

prototype of streamed UI using confirm_properties

accounting for bytes in data, more data types in integration tests

rebase on master, using f-strings

minor fixes and improvements from code review

StructHasher class for the whole hashing process

mypy and style changes

asking users whether to show structs and arrays

protobuf descriptions to fix make defs_check

unifying comments, mypy fix

unit tests for StructHasher class

UI fixtures, skipping device tests for T1

addressing majority of code review comments about code quality and structure

changing file structure - layouts, helpers, sign_typed_data

decode_data renaming and docstring, renaming unit test file

using tuples instead of lists in elifs

layout improvements

excluding core/src/apps/common/confirm.py file from the PR

True/False returning layout with Show more button

code review layout improvements

forgotten br_type argument to should_show_more
2021-11-02 14:27:01 +01:00
matejcik
abc347d4ca chore(common): remove Lisk 2021-08-19 10:25:41 +02:00
matejcik
266955ba65 refactor: rework pb2py generator
This also includes the capability to build Rust protobuf blobs.
2021-06-08 09:55:19 +02:00
Pavol Rusnak
90f23afb72
tools/build_protobuf: don't compare __pycache__ 2020-08-21 14:12:49 +02:00
Tomas Susanka
ca3dd2bfb9 common: skip deprecated fields during generation; deprecate overwintered field in Zcash 2020-06-30 16:02:21 +02:00
Andrew Kozlik
091053507d common/messages: Add credential management message. 2019-09-17 18:32:31 +02:00
Tomas Susanka
75c539ec55
all: replace /bin/bash with /usr/bin/env bash 2019-09-12 17:35:55 +02:00
Pavol Rusnak
1a71c7a3e8
common: rename Features.features to Features.capabilities 2019-08-28 15:02:30 +02:00
Pavol Rusnak
908bbfffef
core: remove remaning utility code for Bitcoin only firmware 2019-08-27 12:38:28 +02:00
matejcik
67b879ac07 python: restructure package
This deserves some explanation.

* tests were moved to separate python/tests subdir
* trezorlib was moved to python/src, so that it does not exist on
PYTHONPATH by default
(see https://blog.ionelmc.ro/2014/05/25/python-packaging/ for details)
* everything was updated to understand the new structure
* trezorctl was changed from a top-level executable script to a module
`trezorlib.cli.trezorctl` and is installed via the entry_points
mechanism.
This should make it work normally on Windows!

The package should be installable as normal through pip and pipenv, no
changes are needed on that side.

The source package from pypi will include unit tests. (Device tests were
completely moved out). Wheel will exclude them, because users don't need
them.
That shrinks the .whl from 520 kB to 270 - nice!

python: reorganize remaining unit tests
2019-08-12 12:57:25 +02:00
matejcik
aa9860fdb7
protobuf: add enum value validation (#363) 2019-08-02 19:06:01 +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
Pavol Rusnak
bf3c257f96
core/messages: don't generate unused messages 2019-07-01 15:52:36 +02:00
matejcik
f8446c3e00 build: centralize pb2py usage 2019-05-17 15:12:32 +02:00
matejcik
e5670856a2 MONOREPO CREATE FROM trezor-core 2019-04-15 19:14:40 +02:00
Pavol Rusnak
bfcba533b6
tools: don't generate messages unused in the current codebase 2019-03-12 14:49:51 +01:00
Pavol Rusnak
324d82507e
vendor: update trezor-common 2018-07-16 15:10:50 +02:00
Pavol Rusnak
13c659c202
vendor: update trezor-common, regenerate messages 2018-07-04 17:13:46 +02:00
Pavol Rusnak
ac5e3f200a
src: rename wire_types to MessageType, drop copy in tools/build_protobuf 2018-07-02 20:40:51 +02:00
matejcik
2091ae97bf tools: use pb2py from trezor-common 2018-07-02 20:19:16 +02:00
matejcik
efa0f60493
protobuf: use trezor-common submodule to generate messages 2018-05-24 15:41:07 +02:00
matejcik
fb318fb69b
tools: update build_protobuf and pb2py to the refactored versions
from python-trezor, with appropriate modifications for trezor-core

The end goal is to have these files identical, ideally coming from
trezor-common. This is most of the way there, only thing remaining
is handling of target paths.
2018-05-24 15:41:07 +02:00
Pavol Rusnak
13ffe75a48
tools: chmod +x build_protobuf 2018-02-27 14:26:01 +01:00
Jan Pochyla
a4477b8bef tools/build_protobuf: fix path to trezor_common 2018-02-27 00:12:44 +01:00
Pavol Rusnak
ee242ea416
src.trezor.messages: fix and regenerate 2018-02-26 17:20:48 +01:00
Jan Pochyla
b9c111f6ae tools: add init method to messages 2018-02-26 16:13:00 +01:00
Pavol Rusnak
a31c118d8e
protobuf: update build_protobuf and pb2py from python-trezor, regenerate messages 2018-01-12 13:11:22 +01:00
Pavol Rusnak
ef5f1326dc
build: use python3 everywhere 2017-09-25 16:18:31 +02:00
Pavol Rusnak
73b2ea6c85
travis: add make style (using flake8) 2017-06-13 19:35:34 +02:00
Pavol Rusnak
845a3a7e0d
tests: add partial pylint support 2017-06-07 19:06:26 +02:00
Pavol Rusnak
2d7c6b0c34
bootloader: cleanup, more documentation, added scripts for checking 2017-02-08 19:43:47 +01:00