3个版本
0.1.2 | 2023年10月17日 |
---|---|
0.1.1 | 2021年2月18日 |
0.1.0 | 2019年6月25日 |
#1010 in 密码学
每月51次下载
10KB
133 代码行
屏蔽内存
一个从OpenBSD的/ OpenSSH的提交中汲取灵感和部分文档的crate。
此crate实现了屏蔽内存,提供对内存中存储的秘密的保护,以防止推测和Spectre、Meltdown、Rowhammer和Rambleed等内存旁路攻击。当构造Shielded
时,内存内容会被加密,然后在需要时解密,当内存不再需要时再次加密。
通过生成一个16KB的安全随机预密钥来实现内存保护,然后使用SHA512对其进行散列,以构建ChaCha20-Poly1305密码的加密密钥。然后使用此密码加密内存中的内容。
攻击者必须在尝试解密屏蔽内存之前,以高精度恢复整个预密钥,但当前一代攻击的比特错误率,当累积应用于整个预密钥时,使得这不太可能。
依赖项
~5–13MB
~235K SLoC