Skip to content

Rsa加密、解密提供了默认的编码格式(hex),可以再提供一个可选的编码格式;或者直接接受、返回byte[];更灵活些。 #32

Closed
@FrankYao2018

Description

@FrankYao2018

类似如下的扩展方法:
public static string RSADecrypt(string privateKey, byte[] targetArray, RSAEncryptionPadding padding, bool isPemKey = false)
{
Check.Argument.IsNotEmpty(privateKey, nameof(privateKey));
Check.Argument.IsNotNull(targetArray, nameof(targetArray));
Check.Argument.IsNotNull(padding, nameof(padding));

        RSA rsa;
        if (isPemKey)
        {
            rsa = RsaProvider.FromPem(privateKey);
        }
        else
        {
            rsa = RSA.Create();
            rsa.FromJsonString(privateKey);
        }

        using (rsa)
        {
            byte[] decryptBytes = rsa.Decrypt(targetArray, padding);
            return Encoding.UTF8.GetString(decryptBytes);
        }
    }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions