|
cryptnox-pos 1.0.0
Standalone USDC payment terminal firmware (ESP32 + Cryptnox smart card)
|
Address parsing, RLP/keccak encoding and the JSON-RPC client. More...
Files | |
| file | main/eth_addr.h |
| Hex Ethereum-address parsing — a pure, dependency-free unit so it can be unit-tested and fuzzed on the host (see fuzz/fuzz_parse_address.cpp). | |
| file | main/eth_json.h |
| JSON-RPC response parsing helpers — kept in their own unit (cJSON + CW_Utils only, no ESP-IDF networking) so they can be fuzzed on the host (see fuzz/fuzz_eth_rpc_json.cpp). | |
| file | main/eth_rlp.h |
| Minimal RLP encoder for EIP-1559 (type 2) Ethereum transactions. | |
| file | main/eth_rpc.h |
| Ethereum JSON-RPC client over HTTPS (nonce / ecrecover parity / raw-tx broadcast / receipt polling). Network bring-up (Wi-Fi, SNTP) lives in net.h. | |
| file | main/https_post.h |
| One HTTPS JSON POST, shared by every RPC client in the firmware. | |
| file | main/keccak256.h |
| Original Keccak-256 digest as used by Ethereum. | |
| file | main/rpc_error.h |
| Turn a node's JSON-RPC refusal into a line an operator can act on. | |
Address parsing, RLP/keccak encoding and the JSON-RPC client.
The pure, host-testable parsers (eth_addr.h, eth_rlp.h, eth_json.h) plus the Keccak-256 digest (keccak256.h) and the HTTPS JSON-RPC client (eth_rpc.h). The parsers carry libFuzzer harnesses under fuzz/.