RSA加密会生成错误的base64字符串

时间:2018-02-28 09:58:32

标签: c# base64 rsa

我简单WinForms只有2 textboxes而且我正在加密字符串

private void button1_Click(object sender, EventArgs e)
    {
        byte[] stringToEnc = Encoding.UTF8.GetBytes(stringTxtbox.Text);

        using (var rsa = new RSACryptoServiceProvider(1024))
        {
            try
            {
                rsa.FromXmlString(pubKey.ToString());
                var encData = rsa.Encrypt(stringToEnc, true);
                encryptedStr.Text = Convert.ToBase64String(encData);
            } catch (Exception ex)
            {
                throw ex;
            }
        }
    }

我的方法是检查它是否是b64字符串

private static bool TryGetFromBase64String(string input, out byte[] output)
    {
        output = null;
        try
        {
            output = Convert.FromBase64String(input);
            return true;
        }
        catch (FormatException)
        {
            return false;
        }
    }

在我的加密方法中,如果我确认是否使用fOAEP,则生成 假设b64字符串,但如果我传递false,则检查失败,为什么?

如果重要,加密的base64字符串将作为GET参数

0 个答案:

没有答案