IronCoreLabs/ironcore-alloy

GitHub: IronCoreLabs/ironcore-alloy

IronCore Alloy 提供统一 SDK,简化多语言环境下的向量加密与 AI 数据保护。

Stars: 28 | Forks: 4

# IronCore Labs Alloy SDK ``` ██╗██████╗ ██████╗ ███╗ ██╗ ██████╗ ██████╗ ██████╗ ███████╗ █████╗ ██╗ ██╗ ██████╗ ██╗ ██╗ ██║██╔══██╗██╔═══██╗████╗ ██║██╔════╝██╔═══██╗██╔══██╗██╔════╝ ██╔══██╗██║ ██║ ██╔═══██╗╚██╗ ██╔╝ ██║██████╔╝██║ ██║██╔██╗ ██║██║ ██║ ██║██████╔╝█████╗ ███████║██║ ██║ ██║ ██║ ╚████╔╝ ██║██╔══██╗██║ ██║██║╚██╗██║██║ ██║ ██║██╔══██╗██╔══╝ ██╔══██║██║ ██║ ██║ ██║ ╚██╔╝ ██║██║ ██║╚██████╔╝██║ ╚████║╚██████╗╚██████╔╝██║ ██║███████╗ ██║ ██║███████╗███████╗╚██████╔╝ ██║ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚══════╝╚══════╝ ╚═════╝ ╚═╝ ``` [![Mentioned in Awesome Security Solutions for AI Systems](https://awesome.re/mentioned-badge-flat.svg)](https://github.com/zmre/awesome-security-for-ai/) ![Crates.io Version](https://img.shields.io/crates/v/ironcore-alloy) 该 Alloy SDK 汇集了一组工具,可用于满足您的不同应用层加密需求。它 统一了此前在 [SaaS Shield](https://ironcorelabs.com/products/saas-shield/) [租户安全客户端 (TSC) SDK](https://ironcorelabs.com/docs/saas-shield/tenant-security-client/overview/) 和新的 [Cloaked AI](https://ironcorelabs.com/products/cloaked-ai/) 工具中提供的功能, 作为一个单一库包含在你的应用程序中。该库提供了使用 _标准_、_确定性_ 和 _向量_ 加密算法来加密数据的工具。 无论你处理的是结构化或非结构化文档、存储在关系型数据库或键值存储中的字段, 存储在向量数据库中的向量,还是这些的组合,Alloy SDK 都提供了保护你的应用程序所处理的私有或敏感数据所需的工具。 ## 语言支持 - [Java](https://central.sonatype.com/artifact/com.ironcorelabs/ironcore-alloy-java) - [Kotlin](https://central.sonatype.com/artifact/com.ironcorelabs/ironcore-alloy) - [Python](https://pypi.org/project/ironcore-alloy) - [Rust](https://crates.io/crates/ironcore-alloy) 该 SDK 使用 Rust 编写,并使用 [uniffi](https://github.com/mozilla/uniffi-rs) 生成外部语言绑定。如果你的语言未在上面列出,请自由提交问题,我们会查看! ## 快速开始 按照上面的链接获取对应语言的最新版本。 你可以在我们的主文档站点 [这里](https://ironcorelabs.com/docs/) 查看示例。我们还提供了具体的 [向量数据库集成示例](https://ironcorelabs.com/docs/cloaked-ai/integrations/),展示如何使用 Cloaked AI 功能来保护各种向量数据库中的嵌入数据。 ### 前置条件 所有语言通用: - glibc 2.29+ ## 本地构建 - `cargo t --release` 将构建 Kotlin 和 Python 绑定,并运行 Rust 及外部代码集成测试。构建完成后,Kotlin 和 Python 项目目录将处于可发布状态。这需要安装 Python 和 Kotlin 基础设施。 - `cargo t` 将以更快的速度执行几乎相同的操作,但会使绑定项目目录处于不适合发布的形式。 - `cargo t --lib` 将仅构建并运行 Rust 测试,不包括集成测试。这不需要安装 Python 或 Kotlin 基础设施,用于 Rust CI。 该项目目前默认启用 `metadata` 特性进行编译,但 `--no-default-features` 将关闭此特性,生成的外部库将不包含 metadata 操作。如果 Rust SDK 消费者不希望使用 `metadata` 功能,可以使用 `--no-default-features`。 在运行完上述非 `--lib` 的 `cargo` 命令后,Kotlin 和 Python 项目目录将处于可以直接操作的状态,就像它们是该语言的本地库一样。 - `cd kotlin; ./gradlew test` 将仅手动运行 Kotlin 测试。 - `cd java; ./gradlew test` 将仅手动运行 Java 测试。 - `cd python/ironcore-alloy; hatch test --all` 将仅手动运行 Python 测试。 - 有关手动发布该包及其他可用 `hatch` 命令的更多信息,请参阅 `python/ironcore-alloy/README.md`。 ## 集成测试 启用 `integration_tests` 特性标志运行测试将启用 SaaS Shield 集成测试。这些测试需要一个在 `http://localhost:32804` 运行的 TSP,并使用 `tests/demo-tsp.conf` 提供的配置。可以通过在 `tests` 目录中运行 `docker compose up` 启动。 运行测试: ``` cargo test --features integration_tests -- --nocapture ``` ## 基准测试 我们在 [Rust](./benches/README.md)、[Kotlin](./kotlin/benchmarks/src/README.md)、[Java](https://github.com/IronCoreLabs/ironcore-alloy/tree/main/java/src/jmh/java/com/ironcorelabs/ironcore_alloy_java) 和 [Python](https://github.com/IronCoreLabs/ironcore-alloy/blob/main/python/ironcore-alloy/bench.py) 中提供了 ironcore-alloy 的基准测试。这些基准测试文件夹均包含一个 Docker Compose 文件,用于启动一个用于测试的预设配置的 TSP。 # 加密学声明 本仓库包含加密软件。你目前居住的国家可能对加密软件的进口、持有、使用和/或重新出口到其他国家有所限制。 在使用任何加密软件之前,请检查你所在国家的法律、法规和政策,以确认是否允许进口、持有、使用或重新出口加密软件。更多信息请参见 https://www.wassenaar.org/ 美国商务工业与安全局(BIS)将本软件归类为出口管制分类编号(ECCN)5D002, 其中包含使用或执行加密功能的信息安全软件。 该分发形式符合 ENC 许可证例外(参见 BIS 出口管制法规,第 740.17.B.3.i.B 项)以及公开源代码例外(参见 742.15)。 已向 BIS 和 NSA 发出通知。 ## 许可证 `ironcore-alloy` 根据 [GNU Affero General Public License](LICENSE) 授权。我们也提供商业许可 — [email](mailto:info@ironcorelabs.com) 了解更多信息或查看我们[网站](https://ironcorelabs.com/)上的定价。
标签:AI向量加密, AI安全, AI数据加密, Alloy SDK, Awesome Security Solutions for AI Systems, Chat Copilot, Crates.io, IronCore, JS文件枚举, ProjectDiscovery, Rust SDK, SDK安全, XML 请求, 企业级加密, 加密库, 加密操作, 加密运算, 可视化界面, 同态加密, 向量加密, 安全开发, 安全解决方案, 密钥泄露防护, 数据保护, 机器学习安全, 机密计算, 端到端加密, 统一SDK, 逆向工具, 通知系统, 隐私计算, 高性能加密