我说的是 SSL/TLS 证书颁发机构。我知道他们将私钥存储在一个非常安全的位置。但是我们的浏览器用来确保签名实际上是由我们正在谈论的证书颁发机构签署的公钥呢?那个公钥存储在哪里?
是否可以通过物理访问某人的网络浏览器/计算机来编辑这些公钥,攻击者能否将这些公钥更改为他们自己的公钥,并使该特定计算机/网络浏览器上的 CA 无用?
我说的是 SSL/TLS 证书颁发机构。我知道他们将私钥存储在一个非常安全的位置。但是我们的浏览器用来确保签名实际上是由我们正在谈论的证书颁发机构签署的公钥呢?那个公钥存储在哪里?
是否可以通过物理访问某人的网络浏览器/计算机来编辑这些公钥,攻击者能否将这些公钥更改为他们自己的公钥,并使该特定计算机/网络浏览器上的 CA 无用?
CA 的公钥存储在 CA 的证书中。此证书存储在客户端系统上的本地信任库中。确实,有权访问本地信任存储的攻击者可以替换现有的 CA 证书或添加新证书。但是,如果攻击者拥有这种访问权限,他无论如何都会造成更大的伤害,例如用具有后门或其他恶意行为的类似软件替换系统上的现有软件。
有关更多信息,请参阅SSL 证书框架 101:浏览器如何实际验证给定服务器证书的有效性? .