智能卡如何用于客户端证书身份验证?

Ott*_*ana 3 ssl client-certificates smartcard

我试图了解客户端证书身份验证如何与智能卡配合使用。

我已经阅读了有关配置 Apache 以使用证书对用户进行身份验证的信息。网上有很多教程,比如APACHE web server 和来自 LinuxConfig 的SSL 认证

据我了解,一旦导入证书,任何可以访问计算机的人都可以启动浏览器并使用它。因此,在多个用户共享同一帐户的情况下(或者攻击者可以物理访问计算机并能够登录),用户无法明确地进行身份验证。为避免此类问题,当共享帐户时,我可以尝试不在浏览器中存储证书。

现在有几个可以在里面有证书的USB令牌,可以用来对网站进行客户端证书认证。以下是我对此类设备的问题:

  • 通过将证书作为物理设备导入,浏览器会允许我在导入证书时使用它吗?
  • 如果证书有 PIN 会怎样?浏览器每次启动时都会要求输入 PIN 码吗?
  • 我可以确定无法从令牌/智能卡读卡器中提取证书吗?因此,除非令牌被盗,否则我可以确定无法克隆证书吗?

Rob*_*ert 5

通过将证书作为物理设备导入,浏览器会允许我在导入证书时使用它吗?

是的。但是,与软件令牌相比,使用硬件令牌时您可能会发现更高的延迟(例如,智能卡 2-3 秒)。

如果证书有密码会怎样?浏览器每次启动时都要求输入 pin 吗?

默认情况下,例如,如果您连接到启用了 HTTPS 客户端身份验证的网页,Firefox 只会尝试访问客户端证书。然后将请求 PIN。通常,只要不删除令牌,就不再需要 PIN,但该行为可能会因使用的 PKCS#11 模块(将 Firefox 与令牌连接的软件)而异。

我可以确定不能从令牌/智能卡读卡器中提取证书吗?因此,除非令牌被盗,否则我可以确定无法克隆证书吗?

然后取决于令牌。有些可能有用于提取私钥的 API,但通常您只能从令牌中使用或删除私钥 + 证书。