recrypt-rs:纯Rust实现的代理重加密库
recrypt-rs 是一个用纯 Rust 语言编写的开源库,它提供了一系列密码学原语,用于构建多跳代理重加密方案,也被称为转换加密。
项目基础介绍
recrypt-rs 旨在为开发者提供一个安全、高效的方式来处理转换加密的需求。该项目的代码托管在 GitHub 上,遵循 AGPL-3.0 许可协议。它为构建多跳代理重加密方案提供了必要的密码学基础,使得加密数据可以在不同的用户之间安全转换。
编程语言
本项目的主要编程语言是 Rust,一种系统级编程语言,以其安全性和性能而闻名。
核心功能
recrypt-rs 的核心功能是实现代理重加密,这是一种加密技术,允许用户将加密信息从一个密钥转换到另一个密钥,而无需泄露原始信息。以下是该项目的几个关键特性:
- 代理重加密:数据可以加密给一个用户的公钥,然后通过代理重加密转换,使得另一个用户可以使用其私钥进行解密。
- 密钥生成:支持生成多种密钥对,包括 Ed25519 签名密钥对。
- 安全性:经过 NCC Group 的密码学服务团队审核,确认实现了目标协议的忠实和正确表示,且不会通过时间或内存访问模式的侧信道攻击泄露秘密信息。
最近更新的功能
项目的最近更新包括:
- 性能优化:对加密、解密和转换操作的性能进行了优化。
- 内存保护:支持内存保护功能,通过 mlock 自动检测并在支持的平台上启用,增加了安全性。
- 错误处理:改进了错误处理机制,使得库更健壮、易于使用。
recrypt-rs 的这些更新进一步提升了库的功能性和安全性,使其成为处理代理重加密需求的优秀选择。