J'essaie de crypter un corps d'e-mail à stocker dans la base de données, et cela pour éviter que la personne non autorisée ne le lise aussi pour éviter une attaque par injection SQL.Exception d'algorithme symétrique
1- Que pensez-vous du cryptage du courrier électronique?
2- Pourquoi cela ne fonctionne pas? Je veux apprendre à crypter un texte de toute façon.
SymmetricAlgorithm symAlgo = SymmetricAlgorithm.Create();
// I will not use the default keys, although I think they are random enough.
symAlgo.GenerateKey();
symAlgo.GenerateIV();
byte[] key = symAlgo.Key;
byte[] iv = symAlgo.Key;
ICryptoTransform crypto = symAlgo.CreateEncryptor();
byte[] block = UtilityMA.StringUtil.ConvertUTF16StringToByteArray(HTMLBody);
byte[] cipherText = new byte[block.Length + 32];
crypto.TransformBlock(block, 0, block.Length, cipherText, 0);
symAlgo.Clear();
crypto.Dispose();
feux de crypto.TransformBlock exception
System.ArgumentException était non gérée par le code utilisateur Message = "La valeur était non valide." Source = "mscorlib"
StackTrace: à System.Security.Cryptography.RijndaelManagedTransform.TransformBlock (Byte [] InputBuffer, Int32 inputOffset, Int32 inputCount, Byte [] OutputBuffer, Int32 outputOffset) à Demo.BLL.Contact .History.SendEmail (String HTMLBody, Int32 Record_Id) dans C: \ Documents and Settings \ Administrateur \ Mes documents \ Visual Studio 2008 \ Projects \ BLL \ BLL \ Contact \ History.cs: ligne 35 at _Default.BtnSend_Click (Expéditeur d'objet , EventArgs e) dans c: \ Documents and Settings \ Administrateur \ Mes documents \ Visual Studio 2008 \ Projects \ Demos \ ContactDemo \ Contact.aspx.cs: ligne 46 à System.Web.UI.WebControls.Button.OnClick (EventArgs e) à System.Web.UI.WebControls.Button.RaisePostBackEven t (String eventArgument) à System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent (String eventArgument) à System.Web.UI.Page.RaisePostBackEvent (IPostBackEventHandler SourceControl, String eventArgument) à System.Web.UI.Page.RaisePostBackEvent (NameValueCollection postData) à System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) InnerException: