OpenSSH 增加对存储在 RAM 中的私钥的保护

OSCHINA
用于保护内存中私钥的对称密钥来自由随机数据(目前是 16 KB)组成的一个相对较大的 prekey。而工作方式是,密钥在加载到内存中时被加密,并在需要签名或必须保存时解密。

OpenSSH 是 SSH (Secure Shell) 协议的免费开源实现,它是许多 Linux 发行版中用于加密到远程系统的连接的默认解决方案。

此前,Google 的 OpenBSD 开发人员和安全研究员 Damien Miller 对 OpenSSH 进行修改,增加了对存储在 RAM 中的私钥的保护,让攻击者更难利用硬件漏洞的侧通道攻击来提取私钥。

Damien Miller 解释说,用于保护内存中私钥的对称密钥来自由随机数据(目前是 16 KB)组成的一个相对较大的 prekey。而工作方式是,密钥在加载到内存中时被加密,并在需要签名或必须保存时解密。

虽然这种预防措施并不是应对硬件攻击的完整解决方案,但它确实会使攻击者更难获得成功。Damien Miller 分析说,“攻击者必须以高精度恢复整个 prekey,然后才能尝试解密被屏蔽的私钥,但是目前的攻击具有比特错误率,要想累加到整个prekey,这显然是不可能的。”

这并不是长久之计,Damien 表示,当计算机架构变得安全的时候,才可以彻底消除这个问题。

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论