虚拟智能卡概述

警告

Windows Hello 企业版和 FIDO2 安全密钥是适用于 Windows 的新式双因素身份验证方法。 建议使用虚拟智能卡的客户迁移到 Windows Hello 企业版 或 FIDO2。 对于新的 Windows 安装,建议Windows Hello 企业版或 FIDO2 安全密钥。

本文概述了虚拟智能卡技术。

功能说明

虚拟智能卡技术通过使用双重身份验证提供与物理智能卡类似的安全优势。 虚拟智能卡模拟物理智能卡的功能,但它们使用设备上可用的受信任的平台模块 (TPM) 芯片。 虚拟智能卡不需要使用单独的物理智能卡和读取器。 在 TPM 中创建虚拟智能卡,其中用于身份验证的密钥存储在加密保护的硬件中。

通过利用提供与物理智能卡相同的加密功能的 TPM 设备,虚拟智能卡实现了智能卡所需的三个关键属性:不可导出性、隔离加密和反锤击。

实际应用程序

虚拟智能卡在功能上类似于物理智能卡,在 Windows 中显示为始终插入的智能卡。 虚拟智能卡可用于对外部资源进行身份验证、通过加密保护数据以及通过签名实现完整性。 可以使用内部方法或购买的解决方案来部署虚拟智能卡,并且可以在任意规模的公司设置中替代其他强身份验证方法。

身份验证用例

双因素身份验证\基于 u2012 的远程访问

用户具有功能齐全的 TPM 虚拟智能卡(使用登录证书进行预配)后,该证书将用于获取对公司资源的经过身份验证的访问权限。 将适当的证书预配到虚拟卡后,用户只需提供虚拟智能卡的 PIN,就像它是物理智能卡一样,即可登录到域。

实际上,这就像输入密码来访问系统一样简单。 从技术上讲,它更安全。 使用虚拟智能卡访问系统向域证明,请求身份验证的用户拥有已设置卡的个人计算机,并且知道虚拟智能卡 PIN。 由于此请求可能不来自域认证的系统以外的系统,以便此用户的访问,并且用户在不知道 PIN 的情况下无法发起请求,因此将建立强双重身份验证。

客户端身份验证

虚拟智能卡还可用于使用 TLS/SSL 或类似技术进行客户端身份验证。 与使用虚拟智能卡进行域访问类似,可以根据客户端身份验证过程中的要求,为提供给远程服务的虚拟智能卡预配身份验证证书。 这符合双重身份验证的原则,因为只能从托管虚拟智能卡的计算机访问证书,并且用户必须输入 PIN 才能初始访问卡。

远程桌面连接的虚拟智能卡重定向

与虚拟智能卡关联的双因素身份验证概念依赖于用户与其用于访问域的设备的邻近性。 连接到托管虚拟智能卡的设备时,无法在远程会话期间使用位于远程设备上的虚拟智能卡。 但是,可以在物理控制 () (加载到远程设备)访问连接设备上的虚拟智能卡。 可以像使用远程设备的 TPM 一样使用虚拟智能卡,将特权扩展到远程设备,同时维护双重身份验证的原则。

机密性用例

S/MIME 电子邮件加密

物理智能卡旨在保存私钥。 可以使用私钥进行电子邮件加密和解密。 虚拟智能卡中存在相同的功能。 通过将 S/MIME 与用户的公钥一起使用来加密电子邮件,可以确保电子邮件的发件人只有具有相应私钥的人员才能解密电子邮件。 此保证是私钥不可导出的结果。 它永远不会存在于恶意软件的触手可及的范围内,并且它仍然受到 TPM 的保护,即使在解密期间也是如此。

用于数据卷的 BitLocker

BitLocker 驱动器加密技术利用对称密钥加密来保护用户硬盘驱动器的内容。 BitLocker 可确保如果硬盘驱动器的物理所有权受到损害,攻击者将无法读取驱动器中的数据。 用于加密驱动器的密钥可以存储在虚拟智能卡中,这需要了解虚拟智能卡 PIN 才能访问驱动器,并拥有托管 TPM 虚拟智能卡的设备。 如果获取的驱动器无法访问托管虚拟智能卡的 TPM,则任何暴力攻击都将很困难。

可以使用 BitLocker 加密便携式驱动器,将密钥存储在虚拟智能卡中。 在此方案中,与将 BitLocker 与物理智能卡一起使用不同,加密驱动器只有在连接到用于加密驱动器的虚拟智能卡的设备时才能使用,因为 BitLocker 密钥只能从设备访问。 此方法可用于确保备份驱动器和个人存储在main硬盘驱动器外部使用的安全性。

数据完整性用例

对数据进行签名

若要验证数据的作者身份,用户可以使用虚拟智能卡中存储的私钥对其进行签名。 数字签名确认数据的完整性和来源。

  • 将密钥存储在可访问的操作系统中,恶意用户可以访问它,并使用它来修改已签名的数据或欺骗密钥所有者的标识
  • 将密钥存储在虚拟智能卡中意味着只能使用它对主机设备上的数据进行签名。 无法有意或无意地将密钥导出到其他系统 (,例如恶意软件盗窃) ,这使得数字签名比其他私钥存储方法更安全

硬件要求

若要使用虚拟智能卡技术,运行受支持的操作系统的设备至少需要 TPM 1.2。