public ActionResult Edit(Encriptacao.Models.UsuarioModel usuarioModel) { Models.UsuarioModel usuario = db.Usuarios.Find(usuarioModel.Id); usuarioModel.Senha = usuario.Senha; usuarioModel.ConfirmaSenha = usuario.Senha; db.Entry(usuario).State = EntityState.Detached; AesCryptoServiceProvider aes = new AesCryptoServiceProvider(); aes.BlockSize = 128; aes.KeySize = 256; aes.IV = Encoding.UTF8.GetBytes(AesIV256BD); aes.Key = Encoding.UTF8.GetBytes(AesKey256BD); aes.Mode = CipherMode.CBC; aes.Padding = PaddingMode.PKCS7; byte[] src = Encoding.Unicode.GetBytes(usuarioModel.Email); using (ICryptoTransform encrypt = aes.CreateEncryptor()) { byte[] dest = encrypt.TransformFinalBlock(src, 0, src.Length); usuarioModel.Email = Convert.ToBase64String(dest); } db.Entry(usuarioModel).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Encriptacao.Models.UsuarioModel usuarioModel = db.Usuarios.Find(id); if (usuarioModel == null) { return(HttpNotFound()); } AesCryptoServiceProvider aes = new AesCryptoServiceProvider(); aes.BlockSize = 128; aes.KeySize = 256; aes.IV = Encoding.UTF8.GetBytes(AesIV256BD); aes.Key = Encoding.UTF8.GetBytes(AesKey256BD); aes.Mode = CipherMode.CBC; aes.Padding = PaddingMode.PKCS7; byte[] src = Convert.FromBase64String(usuarioModel.Email); using (ICryptoTransform decrypt = aes.CreateDecryptor()) { byte[] dest = decrypt.TransformFinalBlock(src, 0, src.Length); usuarioModel.Email = Encoding.Unicode.GetString(dest); } return(View(usuarioModel)); }