Th Ethers.c library (aims to) provide a complete and easy-to-use C API for interacting with the Ethereum (and ilk) blockchain.
It is used by the Firefly Hardware Wallet.
Features
- stack-based; only put on the heap what you want to
 
- Address Checksum and calculation
 - BigInt
 - BIP-32 HD Wallets and BIP39 mnemonic phrases
 - CBOR Decoding and Encoding
 - Signing and verifying; secp256k1, P-256
 - Databases for Networks
 - Decimal support for parsing and formatting strings like "1.2" ETH
 - Hashing; KECCAK256, SHA-2 and SHA-2-HMAC (256-bit and 512-bit) and PBKDF2
 - RLP Decoding and Encoding
 - Transaction Parsing and Serializing
 
Coming Soon:
- ABI Decoding
 - JSON Decoding and Encoding
 - Token Address and Selector Databases
 
MIT License.