2 个版本

0.1.0-pre.12019 年 7 月 18 日
0.1.0-pre.02019 年 3 月 22 日

加密学 中排名 2110

MIT/Apache

2MB
1K SLoC

单钠

docs.rs

这是对 libsodium 的绑定。与同名的库不同,monosodium 更为简单和无聊。

除了对 libsodium 的直接绑定外,这个 crate 中唯一的抽象在 util 模块中,围绕着用于封装敏感字节的 CryptoBuf 类型;下面将进行描述。

CryptoBuf

util::CryptoBuf 是一个简单的封装结构体,围绕着一个内部的 Vec<u8> 缓冲区。 util::CryptoBuf 实现 PartialEqEq(使用 libsodium 的恒时比较函数 sodium_memcmp),通过零化其内部 Vec<u8> 缓冲区(使用 sodium_memzero)来实现 Drop,并具有以零值字节或随机字节(使用 randombytes_buf)初始化其内部缓冲区的构造函数。

HashCryptoBuf

还有一个相关的结构体 util::HashCryptoBuf,它还实现了 Hash

KeyPair

一个公钥/私钥键缓冲区对被封装在 util::KeyPair 中。这也是 gen_sign_keypair 的返回类型,它是围绕 libsodium 的 crypto_sign_keypair 的包装。

无运行时依赖