5 个版本
新 0.1.4 | 2024年8月21日 |
---|---|
0.1.3 | 2022年3月24日 |
0.1.2 | 2020年11月19日 |
0.1.1 | 2020年11月18日 |
0.1.0 | 2020年11月18日 |
#1596 在 加密学 中
每月 68 次下载
8KB
77 行
simplestcrypt
使用预共享密钥进行对称加密的最简单方式。围绕 aes-siv crate 的非常小的包装器,带有随机生成的非确定数,对于更高级的应用,请使用 aes-siv
示例
use std::str;
fn main() {
let payload = "Hello world!".as_bytes();
let password = b"hello wooooooooo";
let encrypted = simplestcrypt::encrypt_and_serialize(&password[..], &payload).unwrap();
let plain = simplestcrypt::deserialize_and_decrypt(&password[..], &encrypted).unwrap();
println!("{:?}", str::from_utf8(&plain));
}
序列化说明
Bincode 在序列化的非确定数和序列化的密文之间添加了 8 个字节,因此看起来像
字节 | 描述 |
---|---|
0 - 15 | 加密密文时使用的非确定数 |
16 - 23 | 密文的长度 |
24 - .. | 密文 |
在与其他库互操作时需要考虑这一点
依赖项
~1.6–2.3MB
~50K SLoC