ERC-7995: Encrypted Data

ERC-7995 defines a standard for handling encrypted data in Ethereum smart contracts. It introduces:

  • Encrypted data types (euint256, ebool, etc.) as bytes32 handles.
  • 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.