Skip to main content

Smart Contract Library

The Smart Contract Library extends the EVM with encrypted data types and operations. It is deployed on the host blockchain and provides:
  • Encrypted data types (ebool, eaddress, euint256)
  • Arithmetic operations (e.add, e.sub, e.mul, e.div, etc.)
  • Comparison operations (e.eq, e.le, e.gt, etc.)
  • Conditional operations (e.select)
  • Access Control (e.allow)
This library allows developers to write smart contracts that handle encrypted data without modifying the underlying blockchain.

Confidential Compute Server

The Confidential Compute Server runs inside a Trusted Execution Environment (TEE) and securely handles all confidential operations in the system. It provides a unified service for encrypted computation and decryption, ensuring privacy and integrity for sensitive data and operations. Key responsibilities:
  • Executes confidential computations and decryption requests within a secure enclave
  • Processes encrypted operations triggered by blockchain events
  • Validates access control before performing decryption
  • Monitors the blockchain for requests and returns results directly, without requiring callback transactions
All results and attestations are verified on-chain to guarantee trust and integrity. The Confidential Compute Server streamlines the architecture, providing robust security and reliability for confidential blockchain applications.

Client-side JavaScript Library

The JavaScript Library provides client-side functionality for interacting with the host chain and Inco:
  • Encrypts user inputs using the network’s public key
  • Handles ephemeral key and EIP-712 signature generation for decryption requests
  • Decrypts results locally for the user