Security
BFV, CKKS, LWE FHE Ciphertext Noise Budget, Relin and Bootstrapping Explainer
Run a real miniature BFV/CKKS pipeline over Z_q[x]/(xⁿ+1): exact invariant-noise budgets in bits, ciphertext multiplication with relinearization, modulus switching, SIMD slot packing and a bootstrapping refresh.
html· HTML resultOpen tool
Quick start
Call this tool from your code in three languages.
cURL
curl -X POST 'https://api.elysiatools.com/en/api/tools/bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainer' \
-H 'Content-Type: application/json' \
-d '{"scheme":"bfv-deep-multiply","ringDegree":"32","levels":2,"slotValues":"12, 34, 56, 78","multiplyDepth":4,"showBootstrap":true}'API reference
Send a POST request with your inputs as JSON. File parameters require a separate upload first.
Endpoint
HTTP
POST https://api.elysiatools.com/en/api/tools/bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainerParameters
| Name | Type | Required | Description |
|---|---|---|---|
| scheme | select | No | — |
| ringDegree | select | No | — |
| levels | number | No | — |
| slotValues | text | Yes | — |
| multiplyDepth | number | No | — |
MCP integration
Add this tool to your Model Context Protocol server so AI agents can list and call it.
Server configuration
Add this block to your MCP client configuration:
mcp.json
{
"mcpServers": {
"elysiatools-bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainer": {
"name": "bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainer",
"description": "Run a real miniature BFV/CKKS pipeline over Z_q[x]/(xⁿ+1): exact invariant-noise budgets in bits, ciphertext multiplication with relinearization, modulus switching, SIMD slot packing and a bootstrapping refresh.",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainer",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}List available tools
After connecting to the SSE endpoint, list the exposed tools:
tools/list
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Call this tool
Invoke the tool by its id, passing arguments built from its parameters:
tools/call
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "bfv-ckks-lwe-fhe-ciphertext-noise-budget-relin-and-bootstrapping-explainer",
"arguments": {
"scheme": "bfv-deep-multiply",
"ringDegree": "32",
"levels": 2,
"slotValues": "12, 34, 56, 78",
"multiplyDepth": 4,
"showBootstrap": true
}
}
}