Skip to content

feat(clearsign): describe EVM transactions the device can verify - #352

Closed
BitHighlander wants to merge 1 commit into
feature/715-10-solana-clearsign-x402from
feature/715-11-clearsign-evm
Closed

feat(clearsign): describe EVM transactions the device can verify#352
BitHighlander wants to merge 1 commit into
feature/715-10-solana-clearsign-x402from
feature/715-11-clearsign-evm

Conversation

@BitHighlander

Copy link
Copy Markdown
Owner

7.15 review stack position 11/17.

This PR is intentionally one coherent commit, based on feature/715-10-solana-clearsign-x402, for individual auditing.
The full stack is linear from the clean fork develop at 1af2ffe.

Review scope: feat(clearsign): describe EVM transactions the device can verify.

The preserved pre-restage candidate remains available at preserve/alpha-2026-08-05.

Uses the signed-metadata engine on the Ethereum path so a user sees what a
contract call actually does instead of a hex blob:

- EthereumTxMetadata carries the signed description and EthereumMetadataAck
  acknowledges it; LoadClearsignSigner installs a trust anchor for the current
  session only. Metadata that fails verification is dropped and the transaction
  falls back to raw display — it never degrades to a friendlier screen.
- EIP-712 typed data: domain/primary-type handling is corrected, the policy
  gate decides when a typed hash may be signed at all, and the recursion and
  length limits are enforced rather than assumed.
- EIP-7702 authorization lists are recognised and shown.
- ERC-20 and the bundled contract decoders (THORChain router, liquidity and
  swap proxies) check the selector against the argument shape before claiming
  to know what a call means.
- A factory reset clears loaded signers.
- unittests/firmware/eip712.cpp and the extended ethereum.cpp cover the typed
  data limits, selector mismatches and the metadata accept/reject paths.
@BitHighlander

Copy link
Copy Markdown
Owner Author

Superseded by the smaller audit-ready 7.15 stack: #359 release foundation, #360 authenticated clear-signing, #361 recovery and entropy, #362 Zcash Orchard, #363 chain integrations, and #364 Bitcoin/release security. All release changes remain preserved in the replacement branches and preservation tags. The replacement aggregate was tree-verified against the prior release and passed the local CI-equivalent container suite (405 firmware, 2 board, 18 crypto, and 7 Pallas constant-time tests). GitHub-hosted checks have been explicitly dispatched and are currently queued.

@BitHighlander
BitHighlander deleted the feature/715-11-clearsign-evm branch August 9, 2026 04:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant