#encryption #tlock

tlock_age

Rust 混合时间锁定加密库

5 个版本

0.0.5 2024年2月29日
0.0.4 2023年8月23日
0.0.3 2023年7月23日
0.0.2 2023年3月27日
0.0.1 2023年3月22日

#1603密码学

每月 下载 24
用于 2 crate

MIT 许可证

55KB
756

tlock_age:Rust 中的混合时间锁定加密/解密

Documentation License crates.io

tlock_age 是一个库,用于使用 tlock 方案加密和解密 age 文件密钥。它提供了由 drand 灯塔提供的 age 身份和接收者消耗阈值 BLS 签名。

参考可互操作的 Go 实现在 drand/tlock

目录表

特性

  • 在 age 格式中进行时间锁定加密和解密
  • ASCII 护甲
  • tlock 头部解密
  • 在 G1 和 G2 上使用公钥加密
  • 与 Go 和 JS 实现的互操作性
  • wasm32 兼容库

安装

环境 CLI 命令
Cargo (Rust 1.74+) cargo安装 tlock_age

该库针对以下目标进行了测试:x86_64-unknown-linux-gnuarmv7-unknown-linux-gnueabihfaarch64-unknown-linux-gnuwasm32-wasi

使用

代码示例提供在 tlock_age/examples

tlock 系统依赖于 unchained drand 网络

此 crate 不提供 drand 客户端。您可以使用 drand_core

安全考虑

此软件尚未经过审计。请自行决定使用。考虑到这一点,deep 安全性依赖于以下

常见问题解答

实用时间锁定加密是如何工作的

简单解释,您可以参考挥挥手进行密码学

如果您需要更详细的说明,应该花时间阅读Nicolas Gailly、Kelsey Melissaris和Yolan Romailler撰写的tlock:基于阈值BLS的实用时间锁定加密(tlock: Practical Timelock Encryption from Threshold BLS)

我如何从命令行使用它

您需要一个客户端。使用tlock-rs的客户端有

许可证

本项目遵循MIT许可证。

贡献

除非您明确表示,否则您提交给本作品的所有有意贡献都应按上述MIT许可证许可,不附加任何额外条款或条件。

依赖项

~14–23MB
~288K SLoC