ERC-7995 defines a standard for handling encrypted data in Ethereum smart contracts. It introduces:
- Encrypted data types (
euint256,ebool, etc.) asbytes32handles. - Off-chain encrypted inputs with validation proofs (
externalEuint8,externalEuint16,externalEbool, …). - Smart contract modules for access control, encrypted computation, and decryption via oracles.
- Support for homomorphic operations (e.g. addition, comparison) on encrypted values.
- JavaScript API for encrypted input generation and user-side or delegated decryption (via EIP-712).
It enables building privacy-preserving DApps, like private voting, sealed-bid auctions, or confidential transfers, while maintaining composability and auditability.