public string Decrypt(byte [] timi)
{
try
{
int i = 0;
string Apotelesma;
byte[] fromEcrypt;
if (timi != null)
{
CryptoStream DecryptStream = null;
RijndaelManaged rijndael = new RijndaelManaged();
ICryptoTransform rijndaelDEncrypt = null;
MemoryStream memStream = new MemoryStream(timi);
rijndael.IV = this._IV;
rijndael.Key = this.Kleidi;
rijndaelDEncrypt = rijndael.CreateDecryptor();
DecryptStream = new CryptoStream(memStream , rijndaelDEncrypt, CryptoStreamMode.Read);
fromEcrypt= new byte[timi.Length];
DecryptStream.Read(fromEcrypt, 0, Convert.ToInt32(timi.Length));
Apotelesma = Convert.ToString(fromEcrypt);
return Apotelesma;
}
else
{
return "";
}
}
catch (Exception e)
{
bclass.xeirismossfalmatwn(e);
return "";
}
}Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παραπανω τμημα ετσι ωστε να δουλευει; εχω προβλημα με αυτη την γραμμη DecryptStream.Read(fromEcrypt, 0, Convert.ToInt32(timi.Length));
οτι κι αν ακολυθησα απο το msdn μου εκανε τα ιδια χαλια...
βγαζει αυτο το σφάλμα
System.Security.Cryptography.CryptographicException: Length of the data to decrypt is invalid.
at System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
at System.Security.Cryptography.CryptoStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at Hydrobase.Hydrobase_rijndael.Decrypt(Byte[] timi) in D:\Τα_Προγραμματά_μου\.Net\Hydrobase\Hydrobase\Cryptography.cs:line 162
Υδροβάση(Hydrobase)profiles :
codeplexsourceforgegoogle codeΥλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου