2010-07-16 3 views
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); 
} 

그리고 난 시도하고 난 CMSEnveloped 개체에 파일 내용을 전달할 때이 오류가 BouncyCastle을 사용하여 파일을 해독 할 때 여기

IOException converting stream to byte array: Attempted to read past the end of the stream. 

어떤 아이디어 일이 뭐죠?

답변

관련 문제