使用RSA算法Django Rest Framework Simple JWT时出现错误,无法反序列化密钥数据
我在使用django rest框架和RSA算法的简单jwt身份验证时出错 当我使用HS算法时,我的代码工作得很好,但当我将算法更改为RS时,我得到以下错误: 无法反序列化密钥数据。数据的格式可能不正确,或者可能使用 不支持的算法 我的设置:使用RSA算法Django Rest Framework Simple JWT时出现错误,无法反序列化密钥数据,django,django-rest-framework,jwt,jwt-auth,django-rest-framework-simplejwt,Django,Django Rest Framework,Jwt,Jwt Auth,Django Rest Framework Simplejwt,我在使用django rest框架和RSA算法的简单jwt身份验证时出错 当我使用HS算法时,我的代码工作得很好,但当我将算法更改为RS时,我得到以下错误: 无法反序列化密钥数据。数据的格式可能不正确,或者可能使用 不支持的算法 我的设置: SIMPLE\u JWT={ “算法”:“RS512”, “签名”关键是“签名”的关键是:::::::::::'ssh-rsh-rsh-rsa MiibPaPaPaPaPaPaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaB
SIMPLE\u JWT={
“算法”:“RS512”,
“签名”关键是“签名”的关键是:::::::::::'ssh-rsh-rsh-rsa MiibPaPaPaPaPaPaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaBaWiUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU2.WeWeWeWeWeUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU2(WeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeWeuuy9ajajgigHxpppObkuy8CIGqjwhRqD02gmAH90x5K8/RAY9SF5RGLGC43R9GAQRBAIEALXLZUVxOSXY6XR67ODCGZI7YB1XXWIWB73LXWRNKK=',
“验证密钥”:mfwwdqyjkozihvcnaqebqadswawsajbalz+WuuTIol2cwEALcqn+/d0AER+sx269kvzt7sdl9c0qcspnhvhgybwloyiv5i72fsinx4v5ivkqsin83o4jqmcawaaq='
}
REST_框架={
“默认\u身份验证\u类”:(
“rest\u framework\u simplejwt.authentication.JWTAuthentication”,
),
“默认权限类”:[
'rest_framework.permissions.IsAuthenticated',
]
}
视图和其他使用
Request POST|http://localhost:8000/api/jwt/create/
username : userExample,
password : **********
注:使用邮递员进行测试
它是固定的,我只需要更改签名密钥和验证密钥字符串 设置.py
SIMPLE_JWT = {
'SIGNING_KEY' : '''-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQCpjDCwMjok1ez1Hr+eOnCs7Ms/hczI1pZ3txyGKrMPLN2Tof3s
gtW6fBOlpCctNo3rG00V64SDLbXHx59QTo+GBY8EdVY8KnGy8ihMpBX86aD2SngP
/pGXMBw/XjCvu7uXCQs0I52EfXmK1+/u5LgGFLizN1upQIcaJq3hm2KZPwIDAQAB
AoGAWDyQXjJVljQLNOpCuRsa5rP5dt6wW9lpx3Xxj1WLiJtF2X5Vww+4IWxPYUYT
6XDZ3QCBVqYSeZ6BWy5lmAq6oCCf56V7j/gBTB6/1aBTXBAhKIXxk040qcrGAMUW
ZoJXz6py0C16MaOQVKgHkMw7F07XovCVGWZI9dik7kOln7ECQQDhcaltBqPOprGl
kfDLx4PyCCP2HLN/vEw/UaOTtGUvc5DjvcEp/7BQsAvmCG1Y8GIHXTA1ITYIR9KI
QBwk4WsZAkEAwIcQq3CxOn7MP3XF99alrO19UXOO4D5Z7xL7mgjLjUrO/6wjMZ83
bQOt2noiCU6522RPZ53CY04h+vRQNesKFwJBAJFXYL4sOLECoKa4hsApmXQRMXX6
nPJt584uiMGx3EYSQEfCzuSPthDe3lzn8+8R0nEi7/Bgv9/oxd8XTc2tEgkCQESv
qxXO5Zu94vZ8+Pzbmk3giIYHmSCNfh5aAmNI4f3tg34ZlpC8gdSlrF+2lPAHIy2P
UvjfgptVI7BZe0hRK08CQBva/cZfIbq8HSWmLnRtzlbELg7UlRzGcIc6KElwDlid
8SOZOXGZjKY9Xll5g/ecRXgRoE0/hw6ThOrsrObHZ7w=
-----END RSA PRIVATE KEY-----
''',
'VERIFYING_KEY' : '''-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCpjDCwMjok1ez1Hr+eOnCs7Ms/
hczI1pZ3txyGKrMPLN2Tof3sgtW6fBOlpCctNo3rG00V64SDLbXHx59QTo+GBY8E
dVY8KnGy8ihMpBX86aD2SngP/pGXMBw/XjCvu7uXCQs0I52EfXmK1+/u5LgGFLiz
N1upQIcaJq3hm2KZPwIDAQAB
-----END PUBLIC KEY-----
''',
}
做得好。虽然我确信这是一把你不打算长期使用的钥匙,但你可能不应该发布它。您可能会继续使用它,而且其他人也会复制/粘贴它。只要说
“SIGNING_KEY”:“{private KEY here}”
就足够了,诸如此类,这只是一个伪密钥……我不会在我的项目中使用这个密钥