摘要 :全同态加密(Fully Homomorphic Encryption, FHE)允许在加密数据上直接计算,是实现"数据可用不可见"的终极密码学手段。然而从原始密码原语到"一行命令跑通密文推理",中间横亘着巨大的工程鸿沟。本文以三个开源项目为样本------Go 密码库 Lattigo 、MLIR 编译器工具链 HEIR 、以及端到端密态推理平台 LattiAI,系统讲解它们在 FHE 技术栈中的角色定位、内部架构、相似之处与核心差异。全文以流程案例、图表与性能数据呈现,无需密码学背景即可通读,帮助读者建立对 FHE 软件生态的整体认知。
目录
- [背景:FHE 是什么,为什么需要"三个库"](#背景:FHE 是什么,为什么需要"三个库")
- 主角登场:三个项目的速览
- Lattigo:密码学"发动机"
- [HEIR:FHE 领域的 LLVM](#HEIR:FHE 领域的 LLVM)
- [LattiAI:面向 AI 工程师的密态推理平台](#LattiAI:面向 AI 工程师的密态推理平台)
- 三者关系:分层价值链与流水线分工
- 相似性:共同的密码学基因
- 区别:从定位到实现的全维度对比
- 选型建议:我该用哪个?
- 总结与展望
1. 背景:FHE 是什么,为什么需要"三个库"
1.1 一个类比
想象你有一台永远打不开的保险箱 ,但有人能在不打开保险箱的情况下,往里面塞纸片、叠纸鹤、甚至拼出一幅完整的画。等箱子还给你、你打开它的那一刻,里面的纸片已经变成了你想要的最终作品------这就是全同态加密。
用密码学的语言说:给定加密算法 Enc 和运算函数 f,存在一个同态评估算法 Eval,使得:
Dec( Eval(f, Enc(x)) ) = f(x)
即:密文上计算的结果,解密后等于明文上计算的结果。2009 年 Gentry 的博士论文首次证明其可行性,此后经过十余年优化,如今已经走到深度学习推理(CNN 密态推理)的实用边缘。
1.2 当前主流 FHE 方案
| 方案 | 代数结构 | 数据形态 | 典型应用 |
|---|---|---|---|
| BFV / BGV | 整数环上的模运算 | 整数 | 统计、检索、加密数据库 |
| CKKS | 浮点近似运算(含误差) | 复数/实数向量 | 深度学习推理(最主流) |
| CGGI / TFHE | 布尔电路 / 门级加密 | 比特 | 逻辑运算、密文数据库查询 |
其中 CKKS 天然支持浮点数 + SIMD(单指令多数据,一个密文可打包 N/2 个槽位并行计算),是深度学习密态推理研究与工程实践中最常用的方案。
1.3 从"密码原语"到"密文推理"有多远?
下图是密文推理的基本交互模型,它同时是本文三个项目共同的安全假设:

在这个流程中,把"第 4 步的密文计算"落到真实硬件上,需要解决一串连锁难题:
- 密码层:NTT(Number Theoretic Transform,快速数论变换)、RNS(Residue Number System,剩余数系统)、密钥切换、模数提升、噪声控制......
- 算法层:卷积如何用"旋转-乘-加"实现?矩阵乘怎么打包进 SIMD 槽位?非线性激活(ReLU/Sigmoid)怎么用多项式近似?乘法深度耗尽后 Bootstrapping 插在哪?
- 工程层:PyTorch 模型怎么转成密文可执行形式?参数怎么规划?多线程/GPU 怎么调度?用户要不要懂密码学?
没有任何一个项目能独立优雅地解决所有三层 ------于是出现了三个定位互补的开源项目:Lattigo 解决第 1 层,HEIR 解决第 2 层的"通用编译",LattiAI 把第 2、3 层打包成产品。
2. 主角登场:三个项目的速览
| 项目 | 一句话定位 | 主导方 | 主要语言 | 许可证 | 代码规模 |
|---|---|---|---|---|---|
| Lattigo | 基于格(RLWE)的同态加密 Go 密码库 | EPFL 实验室 → Tune Insight | Go | Apache 2.0 | 约 250 个 Go 文件 |
| HEIR | 基于 MLIR 的 FHE 通用编译器工具链 | Google(社区驱动) | C++(MLIR)+ Python | Apache 2.0 | 30+ 方言、1200+ MLIR 测试 |
| LattiAI | 面向 AI 开发者的端到端密态推理平台 | 深圳 CipherFlow(格物致慧) | C++17 + Python | Apache 2.0 | 50+ C++ 算子、80+ Python |
三个项目均为开源、Apache 2.0、都聚焦 CKKS 密态推理------但它们的抽象层次截然不同。先记住一句话比喻,后续展开:
Lattigo 是"发动机"(密码库),HEIR 是"汽车设计平台"(编译器),LattiAI 是"为 AI 推理定制的整车"(应用平台)。
3. Lattigo:密码学"发动机"
官方定位 :lattigo 是一个 Go module,实现基于全 RNS(Residue Number System)的 RLWE 同态加密原语与多方安全计算协议。
3.1 分层架构
Lattigo 是严格分层设计的,自底向上形成一条线性依赖链:

ring:最底层,提供分圆多项式环上的模运算(NTT、RNS 基扩展、RNS 重缩放、高斯/三元/均匀采样)。core/rlwe:所有方案共用的 RLWE 基础:明文/密文结构、密钥生成、加密解密、密钥切换、RLWE-repacking 等。schemes:bfv、bgv、ckks三种具体方案(BFV 实际是 BGV 的包装)。circuits:面向应用的"高阶电路",例如ckks/polynomial(多项式求值)、ckks/bootstrapping(任意精度、批处理自举)、ckks/minimax(极小极大多项式逼近)、ckks/comparison(sign/max/step 比较电路)、ckks/dft(离散傅里叶变换)等。multiparty:多方分布式密钥生成与门限解密。
3.2 核心特点
- 纯 Go 实现 :跨平台编译,甚至可编译为 WASM 在浏览器客户端运行,性能与主流 C++ 库(如 SEAL/OpenFHE)可比。
- 方案覆盖全:BFV/BGV/CKKS + 多方协议,还支持 RGSW、外部乘积与 LMKCDEY 盲旋转(盲旋转是 TFHE 风格电路的基础)。
- 面向 Go 生态:Go 的并发模型天然适合分布式系统与微服务架构中的密码计算。
3.3 最小案例:一个密文加法
下面是用 Lattigo 手工编写密文程序的最小示例(v6 API),可见使用门槛------开发者需要理解参数、密钥、编码、加密、评估、解密的全链路:
go
// 1. 选择参数 → 2. 生成密钥 → 3. 编码+加密 → 4. 同态运算 → 5. 解密+解码
params, _ := ckks.NewParametersFromLiteral(ckks.ParametersLiteral{LogN: 14, ...})
kgen := ckks.NewKeyGenerator(params)
sk, pk := kgen.GenSecretKeyNew(), kgen.GenPublicKeyNew(sk)
encoder := ckks.NewEncoder(params)
enc, dec, eval := ckks.NewEncryptor(params, pk), ckks.NewDecryptor(params, sk), ckks.NewEvaluator(params, nil)
pt := ckks.NewPlaintext(params, params.MaxLevel())
encoder.Encode([]float64{1.0, 2.0, 3.0}, pt) // 编码明文
ct := enc.EncryptNew(pt) // 加密
ptOne := ckks.NewPlaintext(params, params.MaxLevel())
encoder.Encode([]float64{1, 1, 1}, ptOne) // 明文 [1,1,1]
ctAdd := eval.AddNew(ct, ptOne) // 密文 + 明文
res := dec.DecryptNew(ctAdd) // 解密
got := make([]float64, 3); encoder.Decode(res, got) // 解码 ≈ [2, 3, 4]
可以想象:如果让 AI 工程师用这种方式写一个 ResNet 的密文推理,无异于要求司机用螺丝刀组装发动机。
4. HEIR:FHE 领域的 LLVM
官方定位 :HEIR(Homomorphic Encryption Intermediate Representation)是一个基于 MLIR 的 FHE 编译器工具链,目标是成为 FHE 领域的行业标准编译器------正如 LLVM 之于通用编程。
4.1 核心设计:分层方言(Dialect)
MLIR(Multi-Level Intermediate Representation,多级中间表示)的核心理念是"方言 + 渐进降级":把高层程序逐层降低为低层代数运算,每一层都有独立优化机会。HEIR 在 lib/Dialect/ 下实现了 30+ 个方言,构成一条"机密性 → 代数 → 后端"的降级链:
| 层次 | 代表方言 | 作用 |
|---|---|---|
| 高层语义 | Secret、TensorExt、Preprocessing |
标记哪些数据是密文(secret)、张量类型推导 |
| 底层代数 | LWE、RNS、ModArith、Polynomial、Random |
建模密文背后的环/多项式算术(与 Lattigo 的 ring 层一一对应) |
| 方案层 | CKKS、BGV、CGGI |
具体 FHE 方案的算子和类型 |
| 后端层 | Openfhe、Lattigo、TfheRust、Jaxite |
生成各密码库的调用代码 |
4.2 使用方式
heir-opt:跑编译 pass(降级、优化、打包规划)。heir-translate:翻译成指定后端的源码(OpenFHE C++ / Lattigo Go / tfhe-rs Rust / Jaxite)。heir-py:Python 包,支持在 Python 中标注 secret 类型后直接编译。- 前端支持:Python、PyTorch(经
torch-mlir导入为linalg)、ONNX(经onnx-mlir)、TensorFlow(经 StableHLO)。
4.3 支持矩阵
| 后端库 | BGV | BFV | CKKS | CGGI |
|---|---|---|---|---|
| OpenFHE | ✅ | ✅ | ✅ | ❌ |
| Lattigo | ✅ | ✅ | ✅ | ❌ |
| tfhe-rs | ❌ | ❌ | ❌ | ✅ |
| Jaxite | ❌ | ❌ | ❌ | ✅ |
4.4 工作流程:从 PyTorch 模型到 Lattigo 代码
HEIR 的端到端流程非常简洁,只需三步(无需编写任何密码学代码):
- 前端导入 :用
torch-mlir把 PyTorch 模型导出为linalg方言的 MLIR 中间表示; - 编译优化 :运行
heir-opt --torch-linalg-to-ckks,自动完成降级、打包方案选择、乘法深度规划; - 代码生成 :运行
heir-translate --emit-lattigo,输出可直接编译链接 Lattigo 的 Go 源码。
tests/Examples/lattigo/ 下已有 30+ 个端到端测试(MNIST 分类、向量点积、批矩阵乘、卷积、Bootstrapping、Sigmoid 等),每个测试都是"MLIR → Go → 编译 → 运行 → 校验精度"全链路闭环。
HEIR 的价值:方案与后端可替换。同一份高层程序,今天输出 Lattigo Go,明天可输出 OpenFHE C++,后天可面向 FPGA/GPU 加速器生成代码------这是它作为"基础设施"的核心竞争力。
5. LattiAI:面向 AI 工程师的密态推理平台
官方定位 :LattiAI 是构建于 LattiSense FHE 框架之上的隐私保护 AI 推理开发平台,覆盖"PyTorch 明文模型 → 密文推理部署"的完整流水线。目标用户是不懂密码学的 AI 工程师。
5.1 五大模块

- 模型适配(Model Adaptation) :把 FHE 不友好的算子替换为可计算形式------ReLU/SiLU → 低阶多项式(
RangeNormPoly2d/PolyAct),MaxPool → AvgPool,BatchNorm 融合进卷积(省一次密文乘法)。替换后通过单阶段微调(PolyAct-RN 算子)恢复精度,实测 ResNet/MobileNet/YOLO 上精度几乎无损。 - 模型编译器 :输入
.pth/.onnx,输出 CKKS 兼容的 DAG(Directed Acyclic Graph,有向无环图)计算图,自动完成 FHE 参数选择、Bootstrapping 插入位置搜索(128 组并行实验择优)、level/scale 逐层分配。 - HE 算子库:C++ 实现的密态卷积/反卷积/全连接/AvgPool/BatchNorm 等,利用 SIMD 槽位打包 + Bootstrapping 支撑任意深度网络。
- 运行时:按编译器生成的图自动调度推理,支持多线程 CPU 与 GPU(集成 HEonGPU)加速。
- 部署组件 :
gen_mega_ag.py生成低层指令;InferenceClient(密钥/加密/解密)+InferenceServer(密文计算)开箱即用。
5.2 特色算法:广义交错打包(GIP)
传统打包方案(连续打包/通道穿插/间隔打包)在高分辨率图像 (单通道像素数超过单密文槽容量 N/2)时会失效。LattiAI 提出通道打包因子 g = H/Ĥ(图像分辨率与基础打包尺寸之比),自适应切换三种形态(g>1 分解子通道、g<1 通道穿插、g=1 连续打包),并设计了保持打包结构的密态卷积/反卷积/上采样算子------这是它相对 HEIR 通用流水线的重要差异化能力之一。
5.3 使用流程:ResNet-20 密文推理全流程
LattiAI 的端到端流程对 AI 工程师非常友好,只需四步命令行操作:
- 训练 baseline:用 PyTorch 正常训练一个带 ReLU 的 ResNet-20;
- 算子替换 + 微调 :运行
train.py --poly_model_convert,自动完成 ReLU→多项式、MaxPool→AvgPool 替换,并执行单阶段微调恢复精度; - 编译 :运行
run_compile.py,输入 ONNX 模型,自动完成 DAG 生成、Bootstrapping 规划、打包策略选择; - 部署运行 :运行
gen_mega_ag.py生成指令,再用InferenceClient/InferenceServer完成密文推理。
整个过程无需编写任何密码学代码,也无需理解 CKKS 参数、多项式逼近、打包方案等底层细节。
5.4 官方性能数据(128bit 安全,Xeon 6226R + RTX 5880 Ada)
| 任务 | 模型 | Baseline 精度 | FHE 精度 | 16 线程 CPU | GPU |
|---|---|---|---|---|---|
| CIFAR-10 分类 | ResNet-20 | 91.9% | 92.0% | 310.3 s | 13.5 s |
| ImageNet 分类 | MobileNetV2 | 71.8% | 70.1% | 1210.0 s | 82.4 s |
| 血细胞检测 | YOLOv5n | 92.2% mAP | 92.0% mAP | 1519.3 s | --- |
注:密文精度甚至偶尔"反超"baseline,源于微调使模型重新适应了多项式激活。这组数据也直观展示了密文推理的现实成本------比明文慢几个数量级,因此"编译器/算子优化 + GPU 加速"才如此重要。
6. 三者关系:分层价值链与流水线分工
6.1 三层模型与依赖关系
把三者放到同一个坐标系中,它们构成 FHE 软件生态的"三层模型":

依赖关系详解:
- LattiAI → Lattigo:直接依赖(最强耦合) 。LattiAI 的底层框架 LattiSense 通过
fhe_ops_lib/lattigo子模块引入 Lattigo v6,其编译器里的 CKKS 参数直接取材于 Lattigo 的params.go。LattiAI 的 C++ 算子本质是"包在 Lattigo 密码原语之上的神经网络算子层"。 - HEIR → Lattigo:代码生成目标(可替换)。HEIR 把 IR(Intermediate Representation,中间表示)翻译为 Lattigo Go 源码(同时也能出 OpenFHE C++、tfhe-rs Rust),对 HEIR 而言 Lattigo 只是若干后端之一。
- HEIR ↔ LattiAI:无直接依赖,同为"上层建筑" 。两者都消费 Lattigo,但走不同路线:HEIR 做通用编译 (什么程序都能编),LattiAI 做垂直深耕(只做 CNN 密态推理,但做到极致)。

6.2 同一条推理链上的流水线分工
以"MNIST/CIFAR-10 图像分类"为例,把三者放到同一条推理流水线上看各自的职责边界:
| 阶段 | Lattigo | HEIR | LattiAI |
|---|---|---|---|
| 模型适配与微调 | ❌ | ❌ | ✅(单阶段微调,精度基本无损) |
| 模型/程序编译 | ❌ | ✅(通用编译器) | ✅(专用编译器) |
| 密码学计算 | ✅(全部由它承担) | ✅(生成代码后由它承担) | ✅(经 Lattigo 承担) |
| 部署运行时 | ❌ | ❌(需集成) | ✅(Client/Server + GPU) |
结论很清晰:Lattigo 是地基,HEIR 与 LattiAI 是两根不同的柱子------前者用"通用编译器"支撑所有 FHE 场景,后者用"垂直平台"专攻 AI 推理。
7. 相似性:共同的密码学基因
7.1 同一套数学底层
三者全部构建在 RLWE 格密码 + 全 RNS 多项式算术之上:
| 概念 | Lattigo 中的载体 | HEIR 中的载体 | LattiAI 中的载体 |
|---|---|---|---|
| 多项式环算术 | ring 包(NTT/RNS) |
RNS、ModArith、Polynomial 方言 |
直接调用 Lattigo |
| RLWE 原语 | core/rlwe |
LWE、Secret 方言 |
直接调用 Lattigo |
| CKKS 方案 | schemes/ckks |
CKKS 方言 |
直接调用 Lattigo |
7.2 相同的核心关切
无论哪个项目,都要回答同一批 FHE 关键问题:
- 乘法深度(level)管理:每次同态乘法消耗一个 level,耗尽后必须 Bootstrapping;
- Bootstrapping 插入规划:插在哪、插几次,直接决定端到端延迟;
- SIMD 槽位打包:怎么把张量装进密文槽,是性能的分水岭;
- 非线性层多项式近似:ReLU/SiLU/Sigmoid → 低阶多项式,并配套微调恢复精度;
- 经典算法同源:Gazelle 卷积(旋转-乘-加)、对角线打包矩阵乘、HEAAN 多项式逼近等,在三个项目的文档/代码中都能找到。
7.3 相同的商业模式要素
- 全部 Apache 2.0 开源;
- 都支持跨平台,其中 Lattigo 纯 Go 可编译 WASM,在浏览器客户端做加密;
- 都走"客户端加密 → 服务端密文计算 → 客户端解密"的非交互式安全模型,同时保护数据隐私与模型知识产权。
8. 区别:从定位到实现的全维度对比
8.1 总览对比表
| 维度 | Lattigo | HEIR | LattiAI |
|---|---|---|---|
| 本质 | 密码学基础库(API) | 编译器基础设施(IR/工具链) | 应用平台(端到端产品) |
| 解决的核心问题 | 怎么用代码做同态加密 | 怎么把任意程序自动、高效地编译成密文程序 | 怎么把 AI 模型一键变成密文推理服务 |
| 输入 | Go 代码 | Python / PyTorch / ONNX → linalg MLIR |
.pth / .onnx 模型 |
| 输出 | 可运行的密文计算逻辑 | Lattigo / OpenFHE / tfhe-rs / Jaxite 源码 | DAG + 参数 + H5 权重 + 推理运行时 |
| FHE 方案 | BFV / BGV / CKKS | BGV / BFV / CKKS / CGGI | 仅 CKKS |
| 后端库 | 自身即后端 | OpenFHE / Lattigo / tfhe-rs / Jaxite | 仅 Lattigo(+ HEonGPU) |
| 主要语言 | 纯 Go | C++ (MLIR/LLVM) + Python | C++17 + Python |
| 构建系统 | Go module | Bazel(依赖 LLVM 源码) | CMake(submodule 管理) |
| 是否含训练/微调 | 否 | 否 | 是(PolyAct-RN 单阶段微调) |
| 是否含运行时 | 否 | 否 | 是(多线程 CPU / GPU) |
| 是否含硬件加速器代码生成 | 否 | 部分支持(Jaxite/TPU 架构后端;GPU/FPGA 代码生成是设计目标,仍在演进) | 否(但内置 GPU 运行时) |
| 用户画像 | 密码学研究者、Go 后端开发者 | 编译器工程师、研究者、硬件厂商 | AI 应用工程师、业务部署方 |
| 密码学上手门槛 | 高(需全面理解) | 中(需理解编译流程) | 低(对 AI 工程师近乎透明) |
8.2 三个维度上的"能力光谱"
- 密码学深度 :Lattigo > HEIR > LattiAI(Lattigo 拥有
multiparty多方协议、盲旋转、scheme switching 等前两者没有的能力); - 通用性:HEIR > Lattigo > LattiAI(HEIR 支持多方案 × 多后端 × 多前端;Lattigo 支持多方案但单一语言;LattiAI 绑定 CKKS + Lattigo);
- AI 工程完整度:LattiAI 领先,是三者中唯一提供"训练→编译→部署→运行"全链路与 GPU 运行时的项目;HEIR 与 Lattigo 定位不同(编译器 vs 密码库),不宜直接比较。
8.3 关键差异的直观示例
同一件事------"给密文向量做 Sigmoid":
| 项目 | 实现方式 | 代码形态 |
|---|---|---|
| Lattigo | 手工选参数、编码、选多项式逼近(ckks/minimax 或 Chebyshev),逐算子评估 |
几十行 Go,需理解密码学 |
| HEIR | 高层写 sigmoid,heir-opt 自动降级为多项式并出后端代码 |
高层描述 + 命令行编译 |
| LattiAI | 模型里的 Sigmoid 在训练侧自动替换为多项式,运行时透明执行 |
完全无感 |
9. 选型建议:我该用哪个?
9.1 使用前需要知道的事
三个项目都仍在快速演进,选型前请了解它们的现实约束:
- Lattigo :v6 处于快速迭代期,官方明确表示大版本内仍会有不兼容的 API 变更,生产环境升级版本需评估迁移成本;
- HEIR:依赖 LLVM 源码编译,首次完整构建约 30 分钟,对工程环境要求较高;部分优化 pass 仍在活跃开发中;
- LattiAI :与 Lattigo 深度绑定(submodule 方式),上游大版本升级存在适配周期;密文推理延迟在数十秒到二十分钟量级,适合离线/准实时场景,暂不适合强实时交互场景。
9.2 场景选型表
| 你的场景 | 推荐 | 理由 |
|---|---|---|
| 研究 FHE 算法、自定义密码协议、做多方安全计算(MPC) | Lattigo | 原语最全、纯 Go、有 multiparty,可直接在密码层面做实验 |
| 探索通用 FHE 编译(跨方案/跨后端)、为硬件加速器做代码生成、做 FHE 编译器研究 | HEIR | MLIR 基础设施、多后端可替换、社区与论文支撑 |
| 快速把 ResNet/MobileNet/YOLO 部署为密态推理服务(面向业务) | LattiAI | 全自动流水线、内置训练适配与运行时、性能数据最接近落地 |
| 想理解"密文推理到底怎么算出来的"(学习/教学) | 三者结合 | Lattigo 学密码、HEIR 学编译、LattiAI 学工程 |
| 生产环境深度定制(如自己选后端库、改打包策略) | HEIR + Lattigo | HEIR 出码 + Lattigo 做运行时,组合最灵活 |
10. 总结与展望
10.1 总结
- Lattigo 是 FHE 的密码学基础层:纯 Go、全方案(BFV/BGV/CKKS)、含多方协议,解决"同态加密怎么算";
- HEIR 是 FHE 的编译器中间层:MLIR 方言体系、多前端多后端,解决"任意程序怎么自动编成密文";
- LattiAI 是 FHE 的应用产品层:训练适配 + 专用编译 + C++ 算子 + 推理运行时,解决"AI 工程师怎么零门槛用上密态推理"。
三者共用 RLWE/CKKS 同一套数学地基,共享 level 管理、Bootstrapping 规划、SIMD 打包、多项式近似同一批核心算法,但在抽象层次、用户画像、方案覆盖度、工程完整度上形成清晰的互补分工。对个人开发者,读懂这三层,就基本读懂了当今 FHE 软件生态的全貌。
10.2 展望
三个项目都在向各自方向的下一站演进:
- Lattigo:持续快速迭代,circuits 层的电路族(bootstrapping、多项式求值、比较)不断完善,多方协议是其区别于 C++ 库的独特优势;
- HEIR:沿"通用 FHE 编译器"路线推进,硬件加速器(GPU/FPGA/ASIC)代码生成是其路线图上的重要目标,学术社区围绕它的研究也在快速增长;
- LattiAI:在已验证的 ResNet/MobileNet/YOLO 之外,正在扩展更多网络架构的转换策略,GPU 加速链路的成熟有望把密文推理延迟进一步压到分钟级以内。
可以预期,随着底层密码库、中间编译器、上层平台三条线并行推进,"密文上跑 AI"将从技术演示逐步走向规模化落地。
附:参考与延伸
- Lattigo 官方仓库:https://github.com/tuneinsight/lattigo
- HEIR 官网与仓库:https://heir.dev / https://github.com/google/heir
- HEIR 论文:HEIR: A Universal Compiler for Homomorphic Encryption(arXiv:2508.11095)
- LattiAI 仓库:https://github.com/cipherflow-fhe/latti-ai
- LattiSense:https://github.com/cipherflow-fhe/lattisense
- HEonGPU(LattiAI 的 GPU 加速库):https://github.com/Alisah-Ozcan/HEonGPU
- 同类项目参考:Microsoft SEAL、OpenFHE(Duality 主导)、Zama Concrete(TFHE 路线)。本文选取的三个项目分别代表 FHE 生态的密码库 / 编译器 / 应用平台三个层次,互补性最能体现生态全貌。
- 本文数据来源:三个项目官方 README、LattiAI 技术白皮书(docs/zh/whitepaper.md)、HEIR 文档站