1个不稳定版本
使用旧的Rust 2015
0.1.4 | 2017年2月2日 |
---|---|
0.1.3 |
|
0.1.2 |
|
0.1.1 |
|
0.1.0 |
|
#1566 in 加密学
19KB
264 行
不再维护。请使用ClearOnDrop代替。
对Box
进行轻量级包装,当数据被丢弃时将其数据置零
文档
有很多类型的数据在不再需要时应被擦除,加密密钥材料是一个极端的例子。此包提供了简单的包装类型,当数据被丢弃时将内容置零。请参阅文档。
我们无法推荐此包用于所有加密应用,因为它不支持mlock
。在没有完整分配器的情况下无法支持mlock
,因为如果几个mlock
调用锁定同一页,则第一个munlock
调用将完全解锁该页。
有两个包secrets和tars提供了这样的分配器,如果您需要真正的保护,则应使用这些包。然而,这些包是在最近添加的分配器特性之前创建的,所以目前事情还在变化。
我们相信此包提供的API与包装mlock
的分配器足够相似,代码可以在使用它后转移到完整的分配器。特别是,我们仅在Box
数据上操作,并提供了不返回数据到堆栈的方法,其中它不能可靠地擦除。
安装
此包与Cargo和crates.io兼容。通过以下方式将其添加到您的Cargo.toml
中:
[dependencies]
zerodrop = "^0.1"
使用此包的方式:
extern crate zerodrop;
...
依赖关系
~595KB