Alexandre Paillier
|
1a4149e836
|
EIP-712 hidden fields now share the shown fields logic
|
2022-08-05 18:15:44 +02:00 |
|
Alexandre Paillier
|
d8321d422d
|
Renamed EIP-712 UI function
|
2022-08-05 18:15:44 +02:00 |
|
Alexandre Paillier
|
ca37612f61
|
Fix io_exchange exception
Was trying to reply to EIP712 ARRAY size APDU twice
|
2022-08-05 18:15:43 +02:00 |
|
Alexandre Paillier
|
447e7b9277
|
Verbose EIP-712 setting now ignores filtering APDUs
|
2022-08-05 18:15:43 +02:00 |
|
Alexandre Paillier
|
b1f2e933c0
|
Added an EIP712 test key
|
2022-08-05 18:15:42 +02:00 |
|
Alexandre Paillier
|
b7a4c0d93b
|
EIP-712 filtering UI adjustments; Removed half-blind special compilation flag
|
2022-08-05 18:15:41 +02:00 |
|
Alexandre Paillier
|
a24f621ce3
|
EIP712 filtering, added new APDUs
|
2022-08-05 18:15:41 +02:00 |
|
Alexandre Paillier
|
56e0875979
|
Made the hacky 712 generic step redraw a function
|
2022-08-05 18:15:41 +02:00 |
|
Alexandre Paillier
|
07aca18ab1
|
New EIP-712 UX set title/value functions
|
2022-08-05 18:15:40 +02:00 |
|
Alexandre Paillier
|
7e63bd8435
|
Now copies the EIP712 contract address into memory so it can be used later
|
2022-08-05 18:15:40 +02:00 |
|
Alexandre Paillier
|
f480d5091e
|
Now uses an eip712 context struct instead of having multiple global variables => reduced bss footprint
|
2022-08-05 18:15:39 +02:00 |
|
Alexandre Paillier
|
8ea34f9f00
|
Fix hashing of signed negative integers smaller than 256 bits
|
2022-08-05 18:15:39 +02:00 |
|
Alexandre Paillier
|
d5603857b3
|
Fix UI display of signed negative integers smaller than 256 bits
|
2022-08-05 18:15:38 +02:00 |
|
Alexandre Paillier
|
f3e307423e
|
EIP712 now displays integers differently if signed or unsigned
|
2022-08-05 18:15:38 +02:00 |
|
Alexandre Paillier
|
f0d6a2bba1
|
Now filters out all fields but the name in the EIP712Domain in the half-blind mode
|
2022-08-05 17:52:48 +02:00 |
|
Alexandre Paillier
|
239da44d0e
|
Added a new temporary EIP-712 half-bind mode
|
2022-08-05 17:52:48 +02:00 |
|
Alexandre Paillier
|
a0551e8226
|
Added a function to check if we are in the domain or the message struct
|
2022-08-05 17:52:48 +02:00 |
|
Alexandre Paillier
|
2fa6379470
|
Now only compiles full EIP-712 support for capable devices
|
2022-08-05 17:52:47 +02:00 |
|
Alexandre Paillier
|
b9820774ba
|
Replaced the debug printf in the EIP712 signature function by two more relevant ones
|
2022-08-05 17:52:47 +02:00 |
|
Alexandre Paillier
|
59dd149534
|
Added some NULL checks for global structure pointers
|
2022-08-05 17:52:46 +02:00 |
|
Alexandre Paillier
|
c0eaf8d106
|
Proper cleanup after EIP712 message
|
2022-08-05 17:52:46 +02:00 |
|
Alexandre Paillier
|
0525f7cda8
|
Fixes bad multi-screen value behaviour
|
2022-08-05 17:52:46 +02:00 |
|
Alexandre Paillier
|
2badb7b5b2
|
Now displays the field values
Show ints as uints for now
|
2022-08-05 17:52:45 +02:00 |
|
Alexandre Paillier
|
9cd39e2c02
|
Now uses some of the old EIP712 code as common code between the two implementations + approve/reject button now works
|
2022-08-05 17:52:45 +02:00 |
|
Alexandre Paillier
|
9f29a7caa2
|
UI handling WIP
|
2022-08-05 17:52:44 +02:00 |
|
Alexandre Paillier
|
b8424d1a21
|
Now handles domain & message struct not based on order but on struct name
|
2022-08-05 17:52:44 +02:00 |
|
Alexandre Paillier
|
5c00a5c27b
|
Structs alignment in memory, fixes device freezes/crashes
|
2022-08-05 17:52:44 +02:00 |
|
Alexandre Paillier
|
d43849d852
|
Sets the memory buffer to 5K
|
2022-08-05 17:52:43 +02:00 |
|
Alexandre Paillier
|
90dfa74538
|
Emulates old behaviour with new APDUs but computed all on-device
|
2022-08-05 17:52:43 +02:00 |
|
Alexandre Paillier
|
516682b206
|
Fix impl APDU wrongly returning 0x6a80
|
2022-08-05 17:52:42 +02:00 |
|
Alexandre Paillier
|
b6e4f887cb
|
Fixes printf formatting issues caused by the toolchain
|
2022-08-05 17:52:42 +02:00 |
|
Alexandre Paillier
|
4442ba5716
|
Now responds to EIP712 APDUs
|
2022-08-05 17:52:41 +02:00 |
|
Alexandre Paillier
|
faae5a909c
|
Fix PIC crashes
|
2022-08-05 17:52:41 +02:00 |
|
Alexandre Paillier
|
9f8b2da74c
|
WIP integration in app
|
2022-08-05 17:52:41 +02:00 |
|
Alexandre Paillier
|
e070c379da
|
Removed old code main function & apdu handling function
|
2022-08-05 17:52:40 +02:00 |
|
Alexandre Paillier
|
d333b3a433
|
Fixed compilation errors/warnings
|
2022-08-05 17:52:40 +02:00 |
|
Alexandre Paillier
|
c689b68f76
|
Remove some now useless debug outputs
|
2022-08-05 17:52:39 +02:00 |
|
Alexandre Paillier
|
ad030cdb6a
|
Make the dependencies mandatory in the typehash function
|
2022-08-05 17:52:39 +02:00 |
|
Alexandre Paillier
|
6c14bfa476
|
Now wraps the printf calls in a macro. SDK-like
|
2022-08-05 17:52:39 +02:00 |
|
Alexandre Paillier
|
09697f718a
|
Fix dynamic bytes type encoding
|
2022-08-05 17:52:38 +02:00 |
|
Alexandre Paillier
|
6d86a5de77
|
Global hash making
|
2022-08-05 17:52:38 +02:00 |
|
Alexandre Paillier
|
a2a72edf83
|
Now initializes field hash struct in eip712 context
|
2022-08-05 17:52:37 +02:00 |
|
Alexandre Paillier
|
83dda443f4
|
Refactor type hash function to use less RAM
|
2022-08-05 17:52:37 +02:00 |
|
Alexandre Paillier
|
854791324a
|
Doubled the available RAM size
|
2022-08-05 17:52:37 +02:00 |
|
Alexandre Paillier
|
01ba4fb41f
|
Small refactoring to the format uint memory utils function
|
2022-08-05 17:52:36 +02:00 |
|
Alexandre Paillier
|
149e20cd11
|
Typehash refactoring
|
2022-08-05 17:52:36 +02:00 |
|
Alexandre Paillier
|
a3f5eee116
|
WIP field hashing support
|
2022-08-05 17:52:35 +02:00 |
|
Alexandre Paillier
|
0e9cd91ecc
|
Removed structure packing, prevents unaligned access
|
2022-08-05 17:52:35 +02:00 |
|
Alexandre Paillier
|
477046bd43
|
Removed unused byte type
|
2022-08-05 17:52:35 +02:00 |
|
Alexandre Paillier
|
45dfd5d6a6
|
Proper path implementation with array support
|
2022-08-05 17:52:34 +02:00 |
|