我是密码学领域的新手,正在研究 PKI 和 PKCS 等。我了解 PKI 的基本概念以及它如何用于加密/解密。然而,我对如何使用 USB 令牌或智能卡等硬件令牌来安全登录计算机感到困惑。以下是我理解的步骤以及我感到困惑的部分(提前抱歉问题的长度):

设想:网络上的计算机 xyz 包含只有属于 SECRET 组的用户才能访问的数据。用户 Bob 和 Joe 属于该组,并已获得 USB 令牌,他们可以使用这些令牌来提供使他们能够访问这些资源的凭据。USB 令牌采用双因素身份验证,并且需要输入 PIN。该令牌符合 PKCS11 标准。

  1. Bob 将 USB 令牌插入 Linux 机器
  2. PAM-PKCS11 模块识别此事件并提示 Bob 输入他的 PIN。
  3. 一旦 Bob 正确输入了他的 4 位 PIN,模块就会通过以下方式检查 Bob 令牌上的证书的有效性: (这各不相同,但最低限度是多少?):
    • 找到根证书以检查受信任的 CA
    • 检查证书有效期和吊销列表
    • 将令牌上的 ID 与用户文件进行匹配 (哪里?,少了一步) 或目录(LDAP 等)
  4. 如果一切正常,模块会通知 PAM 成功结果。
  5. 该行已标记为足够,以便 PAM 接受身份验证,Bob 已登录并可以查看仅限 SECRET 组中的用户的信息。

我缺少的部分是存储有关鲍勃是否可以访问这台计算机以及他如何与网络(甚至桌面)用户鲍勃绑定的信息的位置。我了解有关 Bob 的其他识别数据将存储在 USB 上,包括 ID(例如电子邮件地址)。然而,这种强大的安全性如何呢?如果有的话,登录过程中在哪里使用加密货币(或者这不是这些代币的真正目的)?如果有人掌握了 USB 并知道 4 位引脚,那么这似乎就足够了,对吗?此外,本质上对 CA 的信任是否允许信任其他用户无法获取新的 USB 令牌并使用受信任的 CA 获取新证书,但指定所有标识数据与 Bob 的相同?我知道我缺少一些关键部分..但在阅读了数十篇文章后,这方面的解释似乎被掩盖了。使用硬件令牌作为登录包含敏感数据的计算机的充分身份验证手段是个好主意吗?或者此类令牌的目的主要是为了安全地存储其他应用程序中使用的密钥对?感谢您的帮助!

有帮助吗?

解决方案

PAM(顾名思义)仅处理身份验证。身份验证是为了证明用户是谁,即"向我证明谁是你说的那个人" 这与授权是分开的,即“您有权访问此资源吗?”。

身份验证包括三个方面:
1.我知道
2.我有
3.我是

典型的用户名/密码组合符合 1。令牌或其他 PKCS 设备属于第 2 个,而虹膜识别或指纹读取等生物识别技术属于第 3 个。

您的安全性中的这些方面越多,安全性就越好/越严格。在本例中,登录名适合 1 和 2,因此比仅使用用户名和密码更安全。如果有人想从他身上夺走他的密码并偷走他的设备,那么是的,这并不能证明是鲍勃在使用它。但如果鲍勃把他的用户名和密码给别人也不会。

令牌的要点是引入“拥有”某些东西的第二个因素,事实上您还需要 PIN 意味着也需要“知道”某些东西。这样系统就可以更加确信这个人就是他们所声称的那个人。

您所指的缺失部分是 授权 如上所述,这是一个单独的身份验证过程,仅在用户对自己进行身份验证后才会发生。在这种情况下,PAM 已对 Bob 进行了身份验证,并向操作系统提供了 Bob 确实正在使用该系统的确认。但是,操作系统必须在步骤 5 中执行一些其他检查,以确认 Bob 有权访问该资源。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top