Q: I face the following big problem :
from time to another i find the following exception:
Invalid length for a Base-64 char array
I use encryption and decryption:
public static string Encrypt(string text)
{
try
{
key = Encoding.UTF8.GetBytes(stringKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
Byte[] byteArray = Encoding.UTF8.GetBytes(text);
MemoryStream memoryStream = new MemoryStream();
CryptoStream cryptoStream = new CryptoStream(memoryStream,des.CreateEncryptor(key, IV), CryptoStreamMode.Write);
cryptoStream.Write(byteArray, 0, byteArray.Length);
cryptoStream.FlushFinalBlock();
return Convert.ToBase64String(memoryStream.ToArray());
}
catch (Exception ex)
{
string message = ex.Message;
}
return string.Empty;
}
public static string Decrypt(string text)
{
try
{
key = Encoding.UTF8.GetBytes(stringKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
text = text.Replace(" ", "+")
Byte[] byteArray = Convert.FromBase64String(text);
MemoryStream memoryStream = new MemoryStream();
CryptoStream cryptoStream = new CryptoStream(memoryStream,
des.CreateDecryptor(key, IV), CryptoStreamMode.Write);
cryptoStream.Write(byteArray, 0, byteArray.Length);
cryptoStream.FlushFinalBlock();
return Encoding.UTF8.GetString(memoryStream.ToArray());
}
catch (Exception ex)
{
string message = ex.Message;
}
i read many articles about the problem
some posts talking about the solution is:
text = text.Replace(" ", "+")
and this not fixes my problem at all
my string is :3DZF/NZpp0yuQ=3D
please i need help to fix this problem.
EDIT
- If there are any modifications or
enhancements to this class to make it
work better or more secure or avoid
any possible problems like this , i
will be grateful.
- If there are alternating classes instead of this,more
secure and doesn't make these
problems , I will be grateful.
- I use this class in a small
application used to verifying mails.
EDIT:
Decoding the querystring values is done already when it's parsed into the Request.
https://stackoverflow.com/a/10879400/418343
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…