LedgerHQ/app-ethereum

Fix provideErc20Information Speculos test

trevarj opened this issue · 1 comments

Description

While trying to implement a client for app-ethereum, I noticed that none of the erc20 signatures were being verified correctly, even when they were successfully verified externally to Speculos with other tools.

The tests/speculos/test_erc20information.py actually fails if you examine the stdout from speculos

Your environment

  • Linux
  • develop
  • Speculos

Steps to reproduce

Run the speculos test_erc20information.py with -s to see PRINTFs:

pytest -s --model nanox --display headless --path elfs/nanox.elf test_erc20information.py

Notice 18:48:55.185:seproxyhal: printf: Invalid token signature even though the test passes.

Expected behaviour

The test should pass but fail verification on the device.

Actual behaviour

The test passes but fails verification.

Logs

Output of pytest -s --model nanox --display headless --path elfs/nanox.elf test_erc20information.py

...
18:48:55.175:werkzeug: 127.0.0.1 - - [02/Mar/2023 18:48:55] "GET /events?stream=true HTTP/1.1" 200 -
b'\x03ZRX\xe4\x1d$\x89W\x1d2!\x89$m\xaf\xa5\xeb\xde\x1fF\x99\xf4\x98\x00\x00\x00\x12\x00\x00\x00\x01\xde\xad\xbe\xef'
18:48:55.180:werkzeug: 127.0.0.1 - - [02/Mar/2023 18:48:55] "POST /apdu HTTP/1.1" 200 -
18:48:55.181:seproxyhal: printf: Provisioning currentItemIndex 1
18:48:55.185:seproxyhal: printf: Invalid token signature
18:48:55.185:seproxyhal: printf: exception[27264]: LR=0x40001AC1

Closing as this seems to be an error on my end