为什么使用智能卡进行(双因素)身份验证而不是其他媒介?

信息安全 验证 磁盘加密 多因素 比特锁
2021-09-02 13:48:46

我最近在我的 Windows 8.1 机器上安装了 Bitlocker,只使用了一个密码。我正在考虑获得一些东西,而不仅仅是我的存储驱动器的密码,而是一些物理的东西,比如 USB、SD 卡或智能卡!

我已经询问并四处寻找,人们声称以下内容:

当鉴于2FA的智能卡和另一个存储介质的选择或定期认证时,请转到智能卡,因为它更安全。

我真的不知道为什么它会更安全,使用侧面开关切换为“只读”的加密 SD 卡与智能卡一样安全,对吗?(也就是说,U盘可以被Malware等覆盖)。

这个建议准确吗?为什么或者为什么不?智能卡真的更安全吗?

4个回答

智能卡的工作原理是隐藏秘密并回答证明其拥有秘密的挑战。从理论上讲,它不应该向任何人透露这个秘密,而且它应该是不可恢复的。您可能可以通过一些技术方法绕过它,但其中大多数对卡片具有破坏性。这意味着您知道您的智能卡是否已被盗用。

另一方面,可以简单地复制加密的 USB 驱动器或存储卡。没有机制保护它不被攻击者克隆。有一些 USB 记忆棒确实提供了硬件保护以防止未经授权的访问,这些将是一个更可行的选择,但即使这些记忆棒是否像好的智能卡一样受到保护,也是一个问题。

(理论上)复制智能卡更难。您可以轻松复制 USB 驱动器。

如果我偷了两个,你同样有麻烦,但如果我偷了 USB,复制它,然后在你不知情的情况下更换它,那么你就有麻烦了,你不知道。

磁盘加密要求主机保留或派生一个主密钥,该主密钥保存在内存中的某个位置,因此这是您最大的问题。我已经实现了 SafeNet ProtectFile 产品和其他智能卡堆栈的各个方面,因此我非常清楚这些挑战。

不要一分钟认为你有任何真正的安全感。有些“数字取证设备”只需将 U 盘插入设备端口即可对系统内存进行快照和分析,它们利用 USB 硬件“漏洞”。众所周知,由于这些已知问题,银行会移除工作站上的 USB 端口或 Aryldyte USB 端口。从内存中获取磁盘加密密钥然后使用可用工具解密硬盘几乎是微不足道的。这是执法部门如何能够收集证据并将罪犯绳之以法的一个方面。

对于您的特定用例,没有什么比您可以掌握的更安全的了。所以这是一个问题,你是否认为你的大脑比某些技术更容易丢失信息。

我会使用一个冗长的无意义的短语,并根据您的偏执程度定期更改它。可发音的密码短语更容易记住,并且如果您使用足够长的密码短语,您将拥有比任何设备(包括智能卡)在这种情况下所能提供的更好的安全性。我将可用性作为安全的一个维度,对于个人使用,我更喜欢我的人的可用性特征,而不是如果我无行为能力可能获得的闪存。企业可能更喜欢不依赖湿件来维持可用性的替代模型。

如果没有预先约定的秘密(这与卡 PIN 不同,实际上用于保护卡和主机/计算机之间的消息流),智能卡消息协议无法阻止卡芯片和主机之间的 MITM 攻击,并且有窃听 USB 的许多秘密方法。在所有机器/工作站上使用的所有卡上设置此密钥代表了企业部署中的皇家配置噩梦,因此很少这样做,并且使用内置在智能卡堆栈中的固定众所周知的密钥。即使你确实惹了麻烦,你现在到处都安装了一个秘密,所以它不再是秘密了。对于这个用例,智能卡只是挥手,实际上并不比在键盘上输入内容更好,但它更容易失败或“丢失”/“被盗”。

因此,鉴于智能卡在此特定用例中不能为您提供超过键盘级别的安全性,我会使用长密码或考虑使用包含大量随机数据和密码的只读闪存棒并制作确保您对便宜的中国闪存进行安全的离线备份!

我看到两点:

  1. 您可以为智能卡设置 PIN 以解锁。与密码不同,只要不打开和修改智能卡,此 PIN 就不能离线暴力破解。它有内置的保护措施来防止这种情况。它们并非不可能被打破,但它们提供了非常好的保护。

  2. 这取决于智能卡本身的配置,但很可能您有一个不可复制(如很难复制)的智能卡。然而,U 盘的内容始终可以被复制,当您尝试对 U 盘引入复制保护时,您基本上想要创建一个智能卡。