【问题标题】:Where does credential management api store webauthn related data凭证管理api在哪里存储webauthn相关数据
【发布时间】:2020-09-20 13:41:54
【问题描述】:

WebAuthn 包含凭据管理 API 的扩展,允许您使用公钥。我可以转到 chrome 设置并检查托管密码,以查看我选择使用凭据管理 API 将哪些用户名/密码存储在浏览器中。关于webauthn+凭证管理api组合的几个问题。

  1. 当我们成功创建一个 凭证?
  2. 我们可以通过 chrome 设置(或其他方式)访问此信息吗?

【问题讨论】:

    标签: google-chrome credentials webauthn


    【解决方案1】:

    对于您的问题:

    1. 浏览器不存储此信息,创建的信息 (来自认证者)用于注册认证者以 回复方
    2. 在运行时

    【讨论】:

      【解决方案2】:
      1. 无 - 凭据以受保护的形式存储在所使用的身份验证器设备内 - 例如。像 Yubikey 这样的安全密钥,或者在您的计算机或手机的 TPM 中。
      2. 您可以在运行时通过 WebAuthn API (navigator.credentials...) 创建或获取凭据(在本例中获取的真正意思是“签署此随机数”),但您无法枚举它们。

      即使是 Yubico 也不提供一种工具,让您只列出他们的设备上持有的 FIDO2 凭据。

      【讨论】:

      • 这是否意味着如果您丢失您的设备,您基本上就退出了?在提供 webauthn 身份验证的平台上,我如何能够跨设备对同一个“帐户”进行身份验证?
      • 是的,您总是需要备份。如果没有其他“便携式”凭据(无论是传统密码还是独立安全密钥),内置身份验证器的注册也是一项挑战。
      • 另外,建议是“购买 2 个 Yubikeys 并将一个保存在保险箱中”,但我不确定它是否会受到大众欢迎。我对如何简化此过程的所有想法都导致再次打开网络钓鱼的风险,因此这无疑是一个挑战。
      【解决方案3】:

      这是一个加载的问题,thangcao和mackie的回答都很中肯,这里有更多细节。

      • “身份验证器”与浏览器是分开的——只是为了强调这一点。
      • 身份验证器可以是“平台身份验证器”,内置于 Android 手机和 Windows Hello 等客户端设备中,也可以是“漫游身份验证器”,一种单独/外部的硬件,例如您可以在多个设备上使用的 Yubikey。
      • Authenticator 是用来创建和存储“凭证”的,它采用公钥/私钥方案。浏览器可以通过凭证管理 API 从身份验证器获取公钥(意味着公开),但不能获取私钥。身份验证过程在身份验证器内部完成,浏览器只是在客户端(用户/应用程序)和身份验证器之间传递信息。
      • Chrome 设置中没有等效的“密码管理”来管理您的“WebAuthn 私人信息”,因为浏览器中没有凭据;更重要的是,多个浏览器可以使用相同的身份验证器,使用相同的一组公钥/私钥凭据。

      最后但同样重要的是,您的问题是:“我们可以从 chrome 设置(或其他方式)访问此信息吗?”

      答案:除非身份验证器供应商构建了一些后门。如果是这样的话,后门不是给你的,而是让黑客获取你所有的私钥。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-06
      • 2021-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      相关资源
      最近更新 更多