创建加密分区来存储私钥

创建加密分区来存储私钥

我正在使用运行 Debian 的 BeagleBone Black 板。

我的目的是创建一个单独的加密分区来在内部emmc中存储私钥。这些密钥用于 SSL 通信。当然,主要目的是保证密钥的安全,以便没有人可以读取它们。我知道使用 TPM 或 HSM 是正确的解决方案,但我想看看是否可以在没有 TPM 或 HSM 的情况下做一些事情,并将密钥存储在普通闪存中。

我需要一个单独的分区的原因是,有时我想通过覆盖一个分区上的当前映像来完全升级设备上的 Linux 操作系统。我不想影响以这种方式存储的私钥,并且新操作系统应该能够以与单独分区中的最后一个密钥相同的方式访问密钥。这是一种常见的处理方式吗?

dm-crypt 可以解决这个问题吗?然而我不明白这在低级别上是如何工作的。我安装的新 Linux 操作系统是否能够像以前的 Linux 一样解密我的私有分区?如果有人侵入设备,如何阻止他们解密和查看我的私钥?

答案1

加密技术对于保护静态数据 (DAR) 非常有效。然而,一旦数据被解密,数据至少可供执行解密的用户和根用户使用。

关于你的问题,目前尚不清楚加密存储的用途。如果目的是长期存储密钥材料,那么加密存储位置是合适的。但是,此类存储最好保持离线状态。这称为冷藏。

您已表示您希望存储 TLS 私钥。但是,TLS 密钥需要保持在线状态,并且在大多数情况下,保持在内存中以及活动文件系统中。所以,问题在这里开始堆积起来。

如果您创建了自签名根证书以及密钥,那么问题会变得更加清晰。这种系统的私钥应该离线保存并保存在加密冷存储中。

进一步阅读:

OWASP 加密存储备忘单

相关内容