問題タブ [jose]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1548 参照

c# - C# を使用した PS256 でエンコードされた JWT の検証

私は、PS256 アルゴリズムを使用してエンコードされた JWT トークンを検証する任務を負っていますが、この 2 日間、問題を抱えていました。私はこの件に関する知識が不足しており、さまざまな解決策を試して問題をゆっくりと解決してきました。

Microsoft.IdentityModel.TokensおよびSystem.IdentityModel.Tokens.Jwtで提供されるJWTSecurityTokenHandlerを使用している RS256 エンコード JWT の実用的な実装があります。RS256 実装の場合、子供のカスタム チェックを行い、公開鍵を提供するIssuerSigningKeyResolverがあります。

この実装は、PS256 でエンコードされた JWT では機能しません。System.IdentityModel.Tokens.Jwt内でJwtSecurityTokenHandlerをデバッグしましたが、サポートされているアルゴリズム リストに PS256 が含まれていても、検証に失敗したようです。

この件に関する私の知識は限られていることを再度述べなければなりません。私が理解していることから、RSA256 と PS256 は同じアルゴリズムのファミリーに属していますか? jose-jwt のような別のライブラリを使用して、PS256 JWT のカスタム検証を作成したほうがよいでしょうか?