【问题标题】:Use client fingerprint to encode JWT token?使用客户端指纹编码 JWT 令牌?
【发布时间】:2019-06-19 23:54:55
【问题描述】:

我想知道使用客户端指纹作为 JWT-secret 进行编码是否是最佳实践。但是,我在万维网中找不到有关此问题的任何内容,但到目前为止,这样做对我来说是有意义的。

我正在考虑使用 JavaScript 生成指纹客户端,并在每次调用时将其发送到 API。然后,API 应将指纹与硬编码秘密一起用于对令牌进行编码和解码。

这不是防止CSRF的好方法吗? 还是我错过了其他东西? 或者一般来说:使用 JWT 防止 CSRF 的最佳方法是什么? (我正在使用 PHP 和 VueJS,是否有与案例相关的解决方案?)

【问题讨论】:

    标签: javascript api jwt token csrf


    【解决方案1】:

    我从来没有听说过。

    使用私钥或共享密钥对令牌进行签名。使用指纹意味着您可以将一个(或多个)手指与私钥相关联,然后计算一个令牌。

    但是,这看起来与我正在使用的Webauthn protocol 非常相似。使用 Android 设备时,浏览器可以与指纹/屏幕锁交互以对用户进行身份验证。设备发送的数据是 JWT,可以使用 Google API 进行验证(请参阅Android SafetyNet)。

    【讨论】:

      猜你喜欢
      • 2021-08-12
      • 2015-09-20
      • 2018-05-18
      • 2016-09-17
      • 2020-01-31
      • 2020-12-21
      • 2017-01-06
      • 2018-06-13
      • 2017-12-04
      相关资源
      最近更新 更多