Eoonia Integration
Eoonia Wallet is embedded directly in Aephoron — not a separate app the browser talks to. It's real: EVM (EIP-6963, SIWE, eth_sendTransaction) and Substrate signing, ~1,893 lines with 55 passing tests.
Public Flow
- A dApp requests a connection via
window.aephoron(EIP-6963 wallet provider). - Aephoron surfaces the request through a native egui signing popup — not a DOM-rendered dialog a page script could spoof.
- Eoonia signs with keys held in the OS secure enclave; keys never touch the JavaScript heap.
- For SIWE login flows, the app receives a signed message it can verify against the wallet address.
did:empcredentials, where present, are stored and viewable locally in the wallet — on-chain registration and full VC verification are in-progress work, not yet complete end to end.
Developer Rules
- Request only what the flow needs — don't ask for broad wallet permissions up front.
- Prefer signed messages and on-chain reads over exporting raw credential data.
- Bind requests to nonce, expiry, app id, and chain profile (
2026for EmpoorioChain). - Never pass recovery material, seed phrases, or private keys through deep links or postMessage.