1个不稳定版本
0.1.0 | 2023年11月19日 |
---|
#2073 在 编码
12KB
202 代码行
EvolutionString 库
EvolutionString 库是一个Rust crate,提供创建和管理演变字符串的功能,字符串的演变由基于初始字符串、密钥和时间间隔的SHA256哈希函数确定。
特性
- 使用初始字符串、密钥和演变间隔创建EvolvingString的实例。
- 根据自实例创建以来经过的时间计算字符串的当前状态。
- 预测经过特定时间后字符串的状态。
- 将EvolvingString实例序列化和反序列化为base64表示形式。
用法
要在Rust项目中使用EvolutionString库,请将以下内容添加到您的Cargo.toml
文件中的[dependencies]
evolvingstring = "0.1.0"
然后您可以创建一个EvolvingString实例并使用其方法,如下所示
use evolvingstring::EvolvingString;
let es = EvolvingString::new("initial value", "secret key", 60);
let current_state = es.current();
let predicted_state = es.predict(120);
let b64_encoded = es.to_base64();
let es_from_b64 = EvolvingString::from_base64(&b64_encoded).unwrap();
将"初始值"和"密钥"替换为您自己的初始字符串和密钥,并选择合适的字符串演变间隔(以秒为单位)。
测试
库附带了一组广泛的测试,以确保实现功能的正确性。您可以使用cargo test
命令运行测试。
作者
EvolutionString由Jesse McPherson维护([email protected])。有关任何问题或贡献,请直接联系作者。
许可证
本项目的许可证为MIT许可证 - 请参阅LICENSE文件以获取详细信息。
依赖项
~2.2–3MB
~64K SLoC