我想知道使用客户端指纹作为JWT-秘密编码是否是最佳实践。然而,我在WWW上找不到关于这个问题的任何东西,但到目前为止,这对我来说是有意义的。
我正在考虑用JavaScript生成指纹客户端,并通过每次调用将其发送到API。然后,API应该使用带有硬编码秘密的指纹来对令牌进行编码和解码。
这不是预防CSRF的好方法吗?还是我错过了别的什么?或者一般情况下:使用JWT预防CSRF的最佳方法是什么?(我使用的是PHP和VueJS,有可能有与案例相关的解决方案吗?)
发布于 2019-01-28 07:33:53
我从来没听说过这个。
令牌使用私钥或共享秘密进行签名。指纹的使用意味着您可以将一个(或多个)手指与私钥关联起来,然后计算令牌。
然而,这看起来与我正在使用的Webauthn协议非常相似。当使用Android设备时,浏览器可以与指纹/屏幕锁交互来验证用户身份。设备发送的数据是一个JWT,可以使用Google进行验证(请参阅Android SafetyNet)。
https://stackoverflow.com/questions/54377272
复制相似问题