申请公租房程序:RSA加密字符串公钥到 RSA公钥

给我的公钥是这个字符串格式

string publicKey =
"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlUCQZso6P43gKqw0CfTlwYb3N+m4v6IME 4nPA3WXe52wFpDM/JCFWSdXa7BewlwzDYjblgwL4u59CPxNTPTh7LTD4xXOaGDJHjX5+YgqK4fb9rs ImjMpIACrND/LAdrq5mctWWzw3UtW3F+o+sNwIZM8n65ysS+Vhq9IypFlfuQbWrKjAcWZ3u1iLtplz yf/pjhOEyyZiBUnh6D219+pMiE9nhCpc4xkH1gnlGszIDBqZMMULtGJvFXydA1vv5HxxCYJ2ydEzmA KYxVgA9BGXPEGE89dQbeJsieTj+FSsp9oTm+4vi345opRvH8DWhmZc4OPSwBEL8pwgS7cUnKPtwIDA QAB";

java 中的示例代码中有一行表示公钥需要转换为 RSA 公钥。下面的行是否将字符串公钥转换为 RSAPublicKey?在 C# 中是否有对应的?

byte[] decoedPublicKey = Base64.getDecoder().decode(publicKey);
RSAPublicKey rsaPublicKey = (RSAPublicKey) KeyFactory.getInstance("RSA").
    generatePublic(new X509EncodedKeySpec(decoedPublicKey));

我正在尝试将 RSA 加密的消息发送到外部 API,并且始终 api 返回无法解密消息的错误。我没有在我的 c # 应用程序中执行此步骤,这是公钥的正确 RSA 加密所必需的。下面是我的 RSA 加密的片段。是正确的吗?

 Pkcs1Encoding pkcs1Encoding = new Pkcs1Encoding((IAsymmetricBlockCipher)new RsaEngine());
            using (StringReader reader = new StringReader(publicKey))
            {
                AsymmetricKeyParameter parameters = (AsymmetricKeyParameter)new PemReader((TextReader)reader).ReadObject();
                pkcs1Encoding.Init(true, (ICipherParameters)parameters);
            }
            return Convert.ToBase64String(pkcs1Encoding.ProcessBlock(bytes, 0, bytes.Length));

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(791)
暗黑2亚洲服务器:隧道传输到位于 2个安全服务器后面的服务器
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(84条)