2 个版本
0.1.0-pre.1 | 2019 年 7 月 18 日 |
---|---|
0.1.0-pre.0 | 2019 年 3 月 22 日 |
在 加密学 中排名 2110
2MB
1K SLoC
单钠
这是对 libsodium 的绑定。与同名的库不同,monosodium
更为简单和无聊。
除了对 libsodium 的直接绑定外,这个 crate 中唯一的抽象在 util
模块中,围绕着用于封装敏感字节的 CryptoBuf
类型;下面将进行描述。
CryptoBuf
util::CryptoBuf
是一个简单的封装结构体,围绕着一个内部的 Vec<u8>
缓冲区。 util::CryptoBuf
实现 PartialEq
和 Eq
(使用 libsodium 的恒时比较函数 sodium_memcmp
),通过零化其内部 Vec<u8>
缓冲区(使用 sodium_memzero
)来实现 Drop
,并具有以零值字节或随机字节(使用 randombytes_buf
)初始化其内部缓冲区的构造函数。
HashCryptoBuf
还有一个相关的结构体 util::HashCryptoBuf
,它还实现了 Hash
。
KeyPair
一个公钥/私钥键缓冲区对被封装在 util::KeyPair
中。这也是 gen_sign_keypair
的返回类型,它是围绕 libsodium 的 crypto_sign_keypair
的包装。