微软 SEAL 是一个开源的同态加密 C++ 库,可在不解密的情况下对密文进行加法和乘法运算。
zama-ai/tfhe-rs
纯 Rust 实现的 TFHE 方案,可直接对加密数据进行布尔与整数运算。
- Star
- 1,675
- Fork
- 338
- 未关闭 Issue
- 54
- 最近提交
- 昨天
这是什么?
TFHE-rs 是一个纯 Rust 实现的 TFHE 全同态加密库,允许程序直接在密文上计算,由数据持有者解密后得到的结果与对明文执行相同运算一致。它支持布尔电路以及 FheUint8、FheUint32 等常见位宽的加密整数运算。
该库提供 Rust 高级 API、C API,以及编译为 WASM 的客户端 JavaScript API。底层密码学层实现了可编程自举(programmable bootstrapping),同时包含与原始 TFHE 库兼容的布尔 API,以及支持最高 8 位消息空间、可精确计算任意长度整数的 short integer API。密文和服务端密钥均支持压缩,以减少传输体积。
项目面向需要隐私计算、但不希望自行处理底层密码学细节的开发者和研究人员。文档、手册和教程涵盖了底层算法、参数选择以及示例应用。
核心功能
- 01基于 TFHE 对加密数据进行布尔与整数运算。
- 02提供 Rust 高级 API,包含 FheUint32 等加密整数类型。
- 03提供 C 绑定以及编译为 WASM 的客户端 JavaScript API。
- 04底层密码学层支持可编程自举。
- 05支持密文与服务端密钥压缩,减少数据传输量。
适用场景
- 构建服务端无法读取明文数据、却仍能完成计算的隐私保护服务。
- 在研究中原型验证加密整数或布尔电路。
- 通过 WASM API 在浏览器端完成客户端加密。
快速上手
- 1
确认 Rust 版本为 1.91.1 或更高
rustc --version - 2
在 Cargo.toml 中添加 TFHE-rs 依赖
tfhe = { version = "*", features = ["boolean", "shortint", "integer"] } - 3
以 release 模式运行示例
cargo run --release
使用前须知
- 采用 BSD-3-Clause-Clear 许可证,仅限开发、研究、原型和实验用途;商业使用需另外向 Zama 取得专利许可。
- 尚未实现侧信道攻击的防护。
- 需要 Rust 1.91.1 或更高版本。
- Windows 平台不支持 AArch64 架构机器。
收录于专题
标签
常见问题
- tfhe-rs 是什么?
- 纯 Rust 实现的 TFHE 方案,可直接对加密数据进行布尔与整数运算。 TFHE-rs 是一个纯 Rust 实现的 TFHE 全同态加密库,允许程序直接在密文上计算,由数据持有者解密后得到的结果与对明文执行相同运算一致。它支持布尔电路以及 FheUint8、FheUint32 等常见位宽的加密整数运算。
- tfhe-rs 可以免费使用吗?用的什么许可证?
- tfhe-rs 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- tfhe-rs 还在维护吗?
- 活跃维护中。tfhe-rs 最近一次提交是在 2026年10月23日。
- tfhe-rs 适合用来做什么?
- 构建服务端无法读取明文数据、却仍能完成计算的隐私保护服务。 在研究中原型验证加密整数或布尔电路。 通过 WASM API 在浏览器端完成客户端加密。
- tfhe-rs 怎么安装和运行?
- 确认 Rust 版本为 1.91.1 或更高: rustc --version 在 Cargo.toml 中添加 TFHE-rs 依赖: tfhe = { version = "*", features = ["boolean", "shortint", "integer"] } 以 release 模式运行示例: cargo run --release
- 在哪里获取 tfhe-rs?
- 源代码和安装说明在 GitHub 上:https://github.com/zama-ai/tfhe-rs
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Zama 团队整理的全同态加密(FHE)资源合集,涵盖机密区块链协议、TFHE-rs 库、研究论文与教程。
一款无需任何用户标识符的端到端加密即时通讯应用与网络,提供 iOS、Android、桌面和终端客户端。
面向 Windows、macOS 和 Linux 的桌面客户端,为 Dropbox、Google Drive、OneDrive 等同步云盘中的文件提供客户端加密。
一个极简的自托管 pastebin,在浏览器中加密粘贴内容,服务器无法读取明文。
一款自托管的“死人开关”,在你停止邮件签到后,把端到端加密的消息自动送达亲友。