The CKKS scheme is a Leveled Fully Homomorphic Encryption scheme optimized for approximate fixed-point arithmetic on real and complex numbers, making it the preferred choice for privacy-preserving machine learning inference where exact precision is not required. Unlike the BFV scheme which operates on integers, CKKS treats encryption noise as part of the approximation error inherent in floating-point computations.
Glossary
CKKS Scheme

What is CKKS Scheme?
An overview of the Cheon-Kim-Kim-Song scheme, the leading homomorphic encryption approach for privacy-preserving machine learning on real numbers.
CKKS relies on the Ring Learning With Errors (RLWE) hardness assumption and supports SIMD packing, enabling parallel computation on vectors of encrypted numbers. The scheme manages its noise budget through a mandatory rescaling operation after each multiplication, which divides the ciphertext by a scaling factor to maintain stable precision, analogous to truncating floating-point values.
Key Features of CKKS
The CKKS scheme is the workhorse of privacy-preserving machine learning, enabling efficient computation on encrypted real numbers. Its core design trades exact precision for performance, making it ideal for neural network inference.
Approximate Fixed-Point Arithmetic
Unlike exact schemes like BFV, CKKS natively operates on approximate real numbers by treating plaintexts as scaled integers. It views a ciphertext as encoding a value with an inherent least significant bit error, similar to floating-point representations. This design choice is critical for machine learning, where operations like sigmoid or ReLU activations produce irrational numbers that cannot be represented exactly. The scheme accepts a small, controllable precision loss in exchange for the ability to perform polynomial approximations of non-linear functions efficiently.
Rescaling for Noise Management
CKKS manages noise through a unique operation called rescaling, which is the approximate analogue of modulus switching in exact schemes. After every homomorphic multiplication, the ciphertext modulus is divided by a scaling factor, truncating both the message and the accumulated noise. This maintains a stable scale and prevents exponential noise growth. The process is deeply integrated with the leveled structure of the scheme: each multiplication consumes one level, and the total multiplicative depth of a circuit must be known before encryption.
SIMD Packing and Parallelism
CKKS leverages the Chinese Remainder Theorem to pack up to thousands of plaintext values into a single ciphertext. This Single Instruction, Multiple Data (SIMD) packing enables component-wise addition and multiplication on encrypted vectors in parallel. For machine learning, this means an entire layer of neurons can be processed simultaneously, dramatically amortizing the computational cost. A single homomorphic multiplication can evaluate thousands of scalar multiplications at once, making batched encrypted inference highly efficient.
Leveled Homomorphic Encryption
CKKS is typically deployed as a leveled scheme, meaning it can evaluate circuits of a predetermined multiplicative depth without the expensive bootstrapping operation. Each multiplication reduces the ciphertext's level, and once the level reaches zero, no further multiplications are possible. This requires the computation—such as the number of layers in a neural network—to be known in advance. The leveled approach avoids the massive computational overhead of bootstrapping, making CKKS the most performant choice for fixed-depth ML inference pipelines.
Relinearization for Ciphertext Size Control
A homomorphic multiplication in CKKS increases the ciphertext size from two ring elements to three. Without intervention, subsequent multiplications would cause exponential growth, making computation infeasible. Relinearization is a key-switching procedure that reduces the ciphertext back to two elements after each multiplication. This operation uses a public evaluation key and is essential for maintaining compact ciphertexts and manageable computational overhead throughout deep circuits like convolutional neural networks.
Polynomial Approximation of Non-Linear Functions
CKKS natively supports only addition and multiplication on encrypted data. To evaluate non-linear activation functions like ReLU, sigmoid, or tanh, these must be replaced with low-degree polynomial approximations. Techniques like Chebyshev approximation or minimax optimization are used to find polynomials that closely match the target function over a specific input range. The degree of the polynomial directly determines the multiplicative depth consumed, creating a trade-off between approximation accuracy and computational cost.
Frequently Asked Questions
Clear, technically precise answers to the most common questions about the CKKS homomorphic encryption scheme, its operational mechanics, and its role in privacy-preserving machine learning.
The CKKS scheme (Cheon-Kim-Kim-Song) is a Leveled Fully Homomorphic Encryption scheme optimized for approximate fixed-point arithmetic on real and complex numbers. Unlike exact schemes like BFV, CKKS treats a ciphertext's inherent noise as an approximation error, similar to floating-point rounding. It works by encoding a vector of real numbers into a plaintext polynomial using the canonical embedding, encrypting it, and then performing homomorphic addition and multiplication. A critical operation is rescaling, which divides the ciphertext by a scaling factor after each multiplication to manage the scale and truncate noise, effectively maintaining a stable precision budget throughout the computation.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
CKKS vs. Other Homomorphic Encryption Schemes
A feature-level comparison of the CKKS scheme against BFV, TFHE, and BGV for privacy-preserving machine learning workloads.
| Feature | CKKS | BFV | TFHE | BGV |
|---|---|---|---|---|
Native Data Type | Approximate real numbers (complex) | Exact integers | Binary gates (bits) | Exact integers |
Arithmetic Model | Fixed-point approximation | Modular integer | Boolean circuits | Modular integer |
SIMD Packing Support | ||||
Bootstrapping | ||||
Programmable Bootstrapping | ||||
Multiplication Depth | Configurable (leveled) | Configurable (leveled) | Unlimited (gate-by-gate) | Configurable (leveled) |
ML Inference Suitability | Optimal (natively handles floats) | Moderate (requires quantization) | Low (bitwise operations) | Moderate (requires quantization) |
Ciphertext Expansion Ratio | 10x-50x | 10x-50x | 100x-1000x | 10x-50x |
Related Terms
Understanding the CKKS scheme requires familiarity with the core cryptographic primitives and noise management techniques that enable approximate arithmetic on encrypted real numbers.
Rescaling
The CKKS-specific operation that divides the ciphertext by a scaling factor after multiplication to maintain a stable scale and manage noise. It is analogous to truncating floating-point precision.
- Mechanism: Divides the ciphertext modulus and plaintext scale by a factor Δ after each multiplication.
- Purpose: Prevents the scale from growing exponentially with multiplicative depth.
- Impact: Consumes one 'level' from the modulus chain, limiting the total number of multiplications before bootstrapping is required.
Polynomial Approximation
The mathematical technique of replacing non-linear functions like sigmoid, ReLU, or softmax with low-degree polynomials, enabling their evaluation within CKKS which natively supports only addition and multiplication.
- Chebyshev polynomials are commonly used to minimize the maximum approximation error over an interval.
- Minimax approximation finds the polynomial with the smallest maximum absolute error.
- The degree of the polynomial directly impacts the multiplicative depth and thus the performance of the encrypted inference.
SIMD Packing
A technique that encodes multiple plaintext values into a single ciphertext using the Chinese Remainder Theorem, enabling parallel homomorphic operations and amortizing computational cost across data vectors.
- CKKS supports packing up to N/2 complex numbers into one ciphertext, where N is the ring dimension.
- Enables slot-wise addition and multiplication, processing entire vectors in a single instruction.
- Critical for achieving practical throughput in neural network inference where thousands of neurons must be evaluated simultaneously.
Noise Budget
The finite amount of cryptographic noise a ciphertext can tolerate before decryption fails. Each homomorphic operation consumes a portion of this budget.
- Addition consumes a small, additive amount of noise.
- Multiplication consumes significantly more noise and causes quadratic growth.
- In CKKS, the noise budget is managed through rescaling and ultimately refreshed via bootstrapping when exhausted.
- Monitoring the remaining noise budget is essential for determining how many more operations can be performed.
Bootstrapping
A computationally intensive procedure that refreshes a ciphertext's noise budget by homomorphically evaluating the decryption circuit, enabling unlimited computation in fully homomorphic encryption.
- In CKKS, bootstrapping also performs a modulus raise to restore the ciphertext to the top of the modulus chain.
- It is the most expensive operation in FHE, often dominating the total computation time.
- Recent optimizations have reduced CKKS bootstrapping latency to under 1 second on modern hardware.
Encrypted Inference
The process of evaluating a pre-trained machine learning model on encrypted input data to produce an encrypted prediction, ensuring the client's query remains private from the server hosting the model.
- CKKS is the preferred scheme for this application due to its native support for real-number arithmetic.
- The model must be converted to use only polynomial operations, replacing activations like ReLU with polynomial approximations.
- The server never sees the raw input, and the client never sees the model weights—only the encrypted result.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us