一个基于格子的多方同态加密库,使用 Go 语言开发
- 优化了基于二进制幂的周期体环的算术运算。 - 实现了基于 RLWE 的原语、密钥生成以及其多方版本,且不依赖于特定方案。 - 实现了 BFV/BGV 和 CKKS 方案及其多方版本。 - 支持 RGSW、外部产品和 LMKCDEY 盲旋转。 - 纯 Go 实现,支持跨平台构建,包括为浏览器客户端编译 WASM,性能与先进的 C++ 库相当。
Lattigo 是一个严格的层次结构库,其包构成了从最低级到最高级的线性依赖链。 将低级算术功能转换为高级的同态电路。以下是该过程的图形描述: 上图显示了 Lattigo 包的组织结构。 - `lattigo/ring`: 最底层是 `ring` 包,它提供了在 RNS 基础上进行多项式的模块化算术运算,包括:RNS 基础扩展;RNS 重新缩放;数论变换(NTT);均匀、高斯和三元采样。 - `rlwe`: 基于通用 RLWE 的同态加密的通用基础。它提供了所有同态功能,并定义了不属于特定方案的所有结构。这包括明文、密文、密钥生成、加密、解密和密钥切换,以及其他更高级的原语,如 RLWE 重新封装。
暂无开放 Issues,或尚未同步最近议题。