在 .net core 3.1 中从 (RSA) PublicKey 手动创建 JWK

Manually create JWK from (RSA) PublicKey in .net core 3.1

任何人都可以帮助我从 rsa public 密钥创建 jwk 吗 在 java 中。 想要避免 Org.BouncyCastle 或第三方实施

已根据以下内容从 public 密钥创建 JWK。如果大家有更好的建议请告诉我

using (var textReader = new StringReader(o.publickey))
                            {
                                var pubkeyReader = new PemReader(textReader);
                                RsaKeyParameters KeyParameters = (RsaKeyParameters)pubkeyReader.ReadObject();
                                var obj = new JwksKey
                                {
                                    use = "sig",
                                    kid = o.short_code,
                                    e = Base64UrlEncoder.Encode(KeyParameters.Exponent.ToByteArrayUnsigned()),
                                    n = Base64UrlEncoder.Encode(KeyParameters.Modulus.ToByteArrayUnsigned()),
                                    kty = "RSA",
                                    alg = "RS256"
                                };
                                objJwks.keys.Add(obj);
                            }

如果可能的话,我想要 public 密钥中的更多内容,而不是对其进行硬编码。两件事是 kty 和 alg。如果可能的话,请告诉我。 我在生成时有可用的私钥。如果我能从他们那里得到 kty 和 alg,请告诉我,然后我会使用它。 谢谢