首页
/ Cingulata 的项目扩展与二次开发

Cingulata 的项目扩展与二次开发

2025-05-30 02:26:39作者:裘旻烁

Cingulata 是一个开源项目,它提供了一套编译器工具链和运行时环境(RTE),使得 C++ 程序能够在加密数据上运行,利用全同态加密技术来保护数据的隐私。

1、项目的基础介绍

Cingulata 的目标是让开发者能够在不牺牲数据隐私的情况下,对加密数据进行处理和分析。它的核心是一个编译器工具链,这个工具链可以将 C++ 程序转换成能够在加密数据上执行的形式。

2、项目的核心功能

项目的核心功能包括:

  • 支持全同态加密算法,目前支持 B/FV 方案和 TFHE 库。
  • 提供编译器和运行时环境,使得开发人员可以在不接触原始数据的情况下,对加密数据进行处理。
  • 通过编译器优化和运行时支持,提高加密数据处理的速度和效率。

3、项目使用了哪些框架或库?

Cingulata 项目主要使用了以下框架或库:

  • C++:作为主要的编程语言,用于开发编译器和运行时环境。
  • CMake:用于构建系统,管理项目的编译过程。
  • Docker:用于创建可重复的开发环境和容器化应用。

4、项目的代码目录及介绍

项目的代码目录结构如下:

  • circuit/:包含与加密电路相关的代码。
  • include/:包含项目所需的头文件。
  • cmake/:包含 CMake 构建脚本和相关文件。
  • common/:包含通用工具和库。
  • deco/:可能包含与解密操作相关的代码。
  • experiments/:包含实验性质的代码和测试。
  • optim/:包含优化相关的代码。
  • runtime/:包含运行时环境的代码。
  • submodules/:包含项目依赖的子模块。
  • tests/:包含单元测试和集成测试代码。
  • .dockerignore:指定 Docker 构建时需要忽略的文件和目录。
  • .gitignore:指定 Git 忽略的文件和目录。
  • .gitlab-ci.yml:定义 GitLab CI/CD 的配置文件。
  • .gitmodules:用于声明 Git 子模块。
  • CMakeLists.txt:CMake 的主配置文件。
  • Dockerfile.bfvDockerfile.tfhe:分别为 B/FV 方案和 TFHE 库构建 Docker 镜像的文件。
  • LICENSE.txt:项目的许可文件。
  • README.md:项目的说明文件。

5、对项目进行扩展或者二次开发的方向

  • 算法优化:对现有的全同态加密算法进行优化,提高其性能和效率。
  • 新的加密方案支持:增加对其他全同态加密方案的支持,扩大项目的应用范围。
  • 工具链增强:提升编译器工具链的功能,例如增加新的编译优化策略。
  • 运行时环境扩展:扩展运行时环境,以支持更多的平台和操作系统。
  • API 和库的开发:开发更加友好和易用的 API,使得其他开发人员更容易集成和使用 Cingulata。
  • 文档和教程完善:完善项目的文档和教程,帮助新用户更快地上手和使用项目。
登录后查看全文
热门项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
472
3.49 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
719
173
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
213
86
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
696
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1