Encifher Primer
About Encifher what it enables and how does it works
Encifher as a protocol composed of several onchain programs and offchain coprocessor which enable devs to build applications which works on encrypted state.
To enable privacy-preserving computations on the Solana Virtual Machine, we need a mechanism to enable user to express computation on encrypted data.
Encifher fixes this by introducing an off-chain Co-Processor capable of performing encrypted computations. The Co-Processor synchronizes with the latest chain state and operates on encrypted state based on user onchain computation requests.
Encifher's proposed solution integrates three core components designed to work seamlessly together, enabling privacy-preserving computation on Solana Virtual Machine
- Co-Processor: A off-chain computation environment, securely performing encrypted computations within a Trusted Execution Environment (TEE).
- Encrypted State Storage: Users state data is encrypted under master public key and those ciphertexts are stored within public data storage layers.
- Symbolic Execution: Bridges the Co-Processor and onchain encrypted state by managing ciphertext pointers. It enables onchain computation on encrypted state (represented as pointer which is parallely keep getting synced offchain).
At a high level, Encifher's Co-Processor fetches encrypted state transition requests based on onchain pointers, securely decrypts and computes on the data inside the TEE, and updates the state by re-encrypting it before storing it back. This carefully designed architecture provides end-to-end confidentiality, allowing sensitive data to remain encrypted both at rest and throughout its lifecycle, with plaintext processing occurring exclusively inside the isolated, secure environment of the TEE.