> ## Documentation Index
> Fetch the complete documentation index at: https://docs.inco.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Components

## 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
