0
我正在尝试使用BouncyCastle来使用PKCS 7文件标准来加密文件。这是我输出一个p7m文件的代码。当我去解密文件时(使用Entrust),系统提示我输入密钥存储密码,所以它知道使用AES 128为我加密了文件,但它无法解密文件正文。加密时必须出错。BouncyCastle创建PKCS 7加密文件? C#
byte[] fileContent = readFile(filename);
FileStream outStream = null;
Stream cryptoStream = null;
BinaryWriter binWriter = null;
try
{
CmsEnvelopedDataStreamGenerator dataGenerator = new CmsEnvelopedDataStreamGenerator();
dataGenerator.AddKeyTransRecipient(cert); //cert is the user's x509cert that i am encrypting for
outStream = new FileStream(filename + ".p7m", FileMode.Create);
cryptoStream = dataGenerator.Open(outStream, CmsEnvelopedGenerator.Aes128Cbc);
binWriter = new BinaryWriter(cryptoStream);
binWriter.Write(fileContent);
}
,当我尝试使用BouncyCastle的当我通过文件内容到CMSEnveloped对象我得到这个错误解密文件:
IOException converting stream to byte array: Attempted to read past the end of the stream.
任何想法,这里发生了什么?