[英]How to decrypt JWE source (encrypted with RSA1_5 A256CBC-HS512) in C#?
[英]How to decrypt JWE encrypted with ECDS ( ECDH-ES+A128KW ) algorithm in C#
我一直在寻找 C# 中的一种方法来解密由我的 OpenId Connect 提供商使用 ECDH-ES+A128KW 加密的 JWE 令牌。 我已与 OIDC 提供商共享 EC 公钥,他们向我发送了使用共享公钥加密的 JWE。 我想使用我安全存储的私钥从 JWE 有效负载中解密和提取信息。 一段时间以来,我一直在寻找合适的 C# 解密库。 我的应用程序是一个 .Net 5 应用程序并在 Linux 上运行。 任何帮助高度赞赏。
假设它会帮助某人回答这个问题。 您可以使用以下代码解密 JWS
using Jose;
var privateKey = new Jwk(
crv: encryptionPublicKey.crv,
x: "y_0F1OlwlIj0VVDbWF2D3JnHqryJK58CExQXqJr3e5s",
y: "Av4X6ew_hQLmL3qgJJjKcqJcTftpsDk0VLwFLBEzEIE",
d: "k44uec9XUofhcGUD6mwf-1krn4nQJ5q3TWDwg8wkTFY",
);
string decryptedToken = JWT.Decode(token, privateKey);
如果您仍然获得 JWT 作为解密令牌,您可以使用以下方法读取令牌
JwtSecurityTokenHandler handler = new();
var jwtSecToken = handler.ReadJwtToken(decryptedIdToken);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.