C# OpenSSL RSA 私钥加密
本文关键字:加密 私钥 RSA OpenSSL | 更新日期: 2023-09-27 18:35:26
我在使用OpenSSL库的.Net包装器来计算一组字节的RSA私钥加密时遇到了一些问题。
目前,我在包含我要使用的私钥的 .pem 文件中读取到 BIO 对象中。
public byte[] ComputeRSAEncryption(byte[] dataBlock, BIO privateKey)
{
RSA rsa = RSA.FromPrivateKey(privateKey);
return rsa.PrivateEncryption(dataBlock, RSA.Padding.None);
}
我使用的是大小为 64 字节、数据块大小为 64 字节的 RSA 密钥。调用上述方法时,我收到错误:
数据对于模量来说太大
但是,如果我使用大小为 64 字节的数据块,其中所有字节都设置为0x00该方法可以正常工作。
我错过了什么吗?
谢谢。
我终于解决了这个问题。对于其他任何感兴趣的人,数据块的最低有效字节必须具有0x00值。通过强制实施此条件,RSA 加密和解密就像一个魅力。