小编Cha*_*yer的帖子

在 C# 中使用 RS256(非对称)验证 JWT

我有一些这样的代码,我认为它失败了,因为它使用非对称 RS256 但具有“SymmetricSecurityKey()”。令牌是从https://jwt.io/手工生成的

\n
    \n
  1. 如何将其转换为使用我的非对称公钥?
  2. \n
  3. 另外,我是 C# 新手,我想以 dotnet 标准为目标,所以我也想知道我是否使用了错误的库?(我依赖于预览版)
  4. \n
\n
\xce\xbb cat Program.cs\n\xef\xbb\xbfusing System;\nusing System.IdentityModel.Tokens.Jwt;\nusing System.Text;\nusing System.Linq;\nusing Microsoft.IdentityModel.Tokens;\nusing System.Security.Cryptography;\n\nnamespace jwttest\n{\n    class Program\n    {\n        static void Main(string[] args)\n        {\n            string jwt = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.POstGetfAytaZS82wHcjoTyoqhMyxXiWdR7Nn7A29DNSl0EiXLdwJ6xC6AfgZWF1bOsS_TuYI3OG85AmiExREkrS6tDfTQ2B3WXlrr-wp5AokiRbz3_oB4OxG-W9KcEEbDRcZc0nH3L7LzYptiy1PtAylQGxHTWZXtGz4ht0bAecBgmpdgXMguEIcoqPJ1n3pIWk_dUZegpqx0Lka21H6XxUTxiy8OcaarA8zdnPUnV6AmNP3ecFawIFYdvJB_cm-GvpCSbr8G8y_Mllj8f4x9nBH8pQux89_6gUY618iYv7tuPWBFfEbLxtF2pZS6YC1aSfLQxeNe8djT9YjpvRZA";\n            var pubKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr/Mrm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa+GSYOD2QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9MwIDAQAB";\n            var rawKey = Encoding.ASCII.GetBytes(pubKey);\n\n            var tokenHandler = new JwtSecurityTokenHandler();\n            // var rsa = ?\n            tokenHandler.ValidateToken(jwt, new TokenValidationParameters {\n                IssuerSigningKey = new SymmetricSecurityKey(rawKey)\n            },\n            out SecurityToken validatedToken);\n        }\n    }\n}\n\nC:\\src\\jwttest (cgt-test-5 -> origin)\n\xce\xbb dotnet run\n[2020-08-18T23:41:05.7108585-07:00 Info] raw=System.Byte[] [392]\nUnhandled exception. Microsoft.IdentityModel.Tokens.SecurityTokenInvalidSignatureException: IDX10503: …
Run Code Online (Sandbox Code Playgroud)

c# rsa public-key jwt

10
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×1

jwt ×1

public-key ×1

rsa ×1