2个版本

0.10.2 2024年1月26日
0.10.0 2024年1月24日

密码学类别中排名691

AGPL-3.0-only

335KB
7K SLoC

Rust 6K SLoC // 0.0% comments Kotlin 428 SLoC // 0.0% comments Python 383 SLoC // 0.1% comments Batch 78 SLoC Shell 20 SLoC // 0.2% comments

包含(JAR文件,62KB) kotlin/gradle/wrapper/gradle-wrapper.jar

IronCore Labs合金SDK

Alloy SDK汇集了一套工具,您可以使用它来满足不同的应用层加密需求。它统一了我们在SaaS Shield租户安全客户端(TSC)SDK中提供的功能以及我们的新Cloaked AI工具,在一个库中,您可以将其包含在您的应用程序中。这个库提供了使用标准确定性向量加密算法加密数据的工具。

无论您是处理结构化或非结构化文档,存储在关系数据库或键值存储中的字段,存储在向量数据库中的向量,或者这些的组合,Alloy SDK都提供了您需要的工具来保护您的应用程序处理的私有或敏感数据。

语言支持

此SDK是用Rust编写的,并使用uniffi生成外语绑定。如果您的语言不在上面列出,请随时打开一个问题,我们可以看看!

入门

点击上面的链接获取相应语言的最新版本。您可以在我们的主要文档网站上看到示例这里

本地构建

  • cargo t --release将构建Kotlin和Python绑定,并运行Rust和外语代码集成测试。它将使绑定项目目录处于可发布状态。这需要安装Python和Kotlin基础设施。
  • cargo t将几乎完成相同的工作,但速度更快,但将使绑定项目目录处于无效形式,不能发布。
  • cargo t --lib 只会构建和运行 Rust 测试,而不是集成测试。这不需要安装任何 Python 或 Kotlin 基础设施。这用于 Rust CI。

目前此项目默认开启编译 metadata 功能,但使用 --no-default-features 将会关闭它,生成的外部库将不会包含元数据操作。Rust SDK 消费者可以使用 --no-default-features 如果他们不想使用 metadata 功能。

运行任意非 --libcargo 命令后,Kotlin 和 Python 项目目录将处于一种你可以像处理该语言的原生库一样与之交互的状态。

  • cd kotlin; ./gradlew test 将手动运行 Kotlin 测试。
  • cd python/ironcore-alloy; hatch run test:test 将手动运行 Python 测试。
  • 有关手动发布此包和其他可用 hatch 命令的更多信息,请参阅 python/ironcore-alloy/README.md

集成测试

使用 integration_tests 功能标志运行测试将启用 SaaS Shield 集成测试。这些测试需要运行在 https://127.0.0.1:32804 的 TSP,配置文件提供在 tests/demo-tsp.conf 中。可以从 tests 目录运行 docker compose up 来启动它。

运行测试

cargo test --features integration_tests

许可证

ironcore-alloy 根据 GNU Affero General Public License 许可。我们还提供商业许可证 - 通过电子邮件 获取更多信息或查看我们 网站 上的定价。

依赖项

~26–42MB
~764K SLoC