Re: Encryption Error "Length of the data to decrypt is invalid"
From: DalePres (don-t-spa-m-me_at_lea-ve-me-a-lone--.com)
Date: 03/15/05
- Next message: web1110: "Re: Control question"
- Previous message: Mark: "Asset management software"
- In reply to: Jimski: "Encryption Error "Length of the data to decrypt is invalid""
- Next in thread: Jimski: "Re: Encryption Error "Length of the data to decrypt is invalid""
- Reply: Jimski: "Re: Encryption Error "Length of the data to decrypt is invalid""
- Messages sorted by: [ date ] [ thread ]
Date: Mon, 14 Mar 2005 20:11:56 -0600
Here's a sample that can should help:
http://www.dalepreston.com/Blog/Archives/2005_02_20_Archive.html
DalePres
MCAD, MCDBA, MCSE
"Jimski" <jimski.brock@gmail.com> wrote in message
news:1110818078.312470.128830@f14g2000cwb.googlegroups.com...
> Hello all,
>
>
> I am having a problem where I get an error message when I call
> FlushFinalBlock when decrypting my encrypted text. I am using the
> Rijndael algorithm.
>
> The error message is "Length of the data to decrypt is invalid" and
> occurs on the csDecrypt.FlushFinalBlock.
>
> Please find below the two routines I use to encrypt my text and decrypt
> the text. I have used the two routines in a very simple app that takes
> a string from a label and then calls EncryptString and displays it on
> another label. I then call DecryptString and pass it the contents of
> the encrypted label text property.
>
> The CryptKey is byte[32] and is set on creation of the object
> containing these methods.
>
> Could somebody please enlighten me as to what I am doing wrong!
>
>
> Thanks in advance
>
> Jimski
>
>
>
> public string EncryptString(string pText)
> {
> string strResult = "";
>
> try
> {
> // Create the rijndael encryptor
> ICryptoTransform encryptor =
> _RijndaelEncryptor.CreateEncryptor();
>
> // Encrypt the data to the memory stream
> MemoryStream msEncrypt = new MemoryStream(pText.Length);
> CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor,
> CryptoStreamMode.Write);
>
> // Convert the string to a byte array.
> byte[] beforeEncrypt = Encoding.UTF8.GetBytes(pText);
>
> // Write all the data to the crypto stream and flush it to the
> MemoryStream.
> csEncrypt.Write(beforeEncrypt, 0, beforeEncrypt.Length);
> csEncrypt.FlushFinalBlock();
>
> // Read encrypted array of bytes from the MemoryStream
> byte[] afterEncrypt = new byte[msEncrypt.Length];
> msEncrypt.Position = 0;
> msEncrypt.Read(afterEncrypt, 0, afterEncrypt.Length);
>
> csEncrypt.Close();
>
> // Returns the encrypted text as a string
> strResult = Encoding.UTF8.GetString(afterEncrypt);
> }
> catch (Exception ex)
> {
> // An error occurred during encryption
> }
> return strResult;
> }
>
>
> public string DecryptString(string pEncryptedText)
> {
> string strResult = "";
>
> try
> {
> // Convert the string to a byte array.
> byte[] beforeDecrypt = Encoding.UTF8.GetBytes(pEncryptedText);
>
> // Create the rijndael decryptor
> ICryptoTransform decryptor =
> _RijndaelEncryptor.CreateDecryptor();
>
> // decrypt the data to the memory stream
> MemoryStream msDecrypt = new
> MemoryStream(beforeDecrypt.Length);
> CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor,
> CryptoStreamMode.Write);
>
> // Write all the data to the crypto stream and flush it.
> csDecrypt.Write(beforeDecrypt, 0, beforeDecrypt.Length);
> // ERROR occurs in this next line.
> csDecrypt.FlushFinalBlock();
>
> // Read decrypted array of bytes from the MemoryStream
> byte[] afterDecrypt = new byte[msDecrypt.Length];
> msDecrypt.Position = 0;
> msDecrypt.Read(afterDecrypt, 0, afterDecrypt.Length);
>
> csDecrypt.Close();
>
> // Returns the decrypted text as a string
> strResult = Encoding.UTF8.GetString(afterDecrypt);
> }
> catch (Exception ex)
> {
> // Show error - which in this case is "Length of the data to
> decrypt is invalid"
> }
>
> return strResult;
> }
>
- Next message: web1110: "Re: Control question"
- Previous message: Mark: "Asset management software"
- In reply to: Jimski: "Encryption Error "Length of the data to decrypt is invalid""
- Next in thread: Jimski: "Re: Encryption Error "Length of the data to decrypt is invalid""
- Reply: Jimski: "Re: Encryption Error "Length of the data to decrypt is invalid""
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|