我目前正在利用这里讨论的漏洞
https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/
JWT 中的算法类型可以从 RSA 更改为 HMAC,并使用给定的公钥对令牌进行签名。
但是,我编写了以下 python 代码:
import jwt
import base64
# consider 'publickey' as the servers public key
code =
jwt.encode({'login':'test'},'publickey',algorithm='HS256')
这会引发错误:
InvalidKeyError: The specified key is an asymmetric key or x509 certificate and should not be used as an HMAC secret.
我正在寻找一种替代方法,我可以使用非对称密钥成功对其进行签名。
谢谢