//using System.Security.Cryptography//Para poder desencriptar necesitamos los mismos parametros con //los que encriptamos//así como el mensaje encriptado//para este ejemplo los leemos de una variable de sesiónbyte[] Key = (byte[])Session["Key"];byte[] IV = (byte[])Session["IV"];byte[] cipherMessage = (byte[])Session["Message"];String mensajeDesencriptado; //La clase TripleDESCryptoServiceProvider crea el mecanismo //de encriptación //en este caso deberemos sobreescribir los parametros que nos crea TripleDES des = new TripleDESCryptoServiceProvider(); //Creamos un desencriptador en vez de un encriptador.//como parametros del constructor le pasamos los parametrosICryptoTransform Crypto = des.CreateDecryptor(Key, IV); //Creamos el buffer en memoria para poder desencriptar MemoryStream cipherStream = new MemoryStream(cipherMessage); //Ahora creamos un CryptoStream para desencriptar CryptoStream cStream = new CryptoStream(cipherStream, Crypto, CryptoStreamMode.Read); //guardamos el mensaje desencriptado en una variable String mensajeDesencriptado =new StreamReader(CryptoStream).ReadToEnd() ;cStream.Close();
|