使用crypto / *后安全地将缓冲区清零

Ain*_*r-G 5 security cryptography go

有没有一种方法可以将包含e的缓冲区归零。G。使用私钥并确保编译器不会删除未使用的调零代码?告诉我一个简单的事情:

copy(privateKey, make([]byte, keySize))
Run Code Online (Sandbox Code Playgroud)

不保证会呆在那里。

Fer*_*uis 5

听起来您想防止敏感数据保留在内存中。但是,您是否考虑过数据可能已被复制或交换到磁盘上?

由于这些原因,我使用https://github.com/awnumar/memguard软件包。它提供了一些功能,可以在不再需要时销毁数据,同时又可以确保数据安全。

您可以在此处了解其背景;https://spacetime.dev/memory-security-go