'OJO: primero establecemos un imports System.Security.Cryptography. 'Tanto el mensaje como los parametros para la encriptación deben estar ' en formato de Bytes por lo que convertimos Bytes el mensaje inicial Dim messageinicial As String messageinicial = "Santas hormonas Batman que secreto tan enigmático" Dim UE As New UnicodeEncoding()Dim message As Byte() = UE.GetBytes(messageinicial) 'La clase DESCryptoServiceProvider crea el mecanismo de encriptación 'y los paramentros que debemos guardar para poder desencriptar Dim objDES As New DESCryptoServiceProvider 'Si queremos una encriptación más segura simplemente: 'Dim objDES As New TripleDESCryptoServiceProvider 'En vez de depender de un sólo parametro o clave esta encriptación se basa en dos parametros'Una clave Key y un desplazamiento iv Dim iv As Byte() = objDES.IVDim key As Byte() = objDES.Key 'Ahora necesitamos un Buffer o Stream para almacenar la encriptación'Y un objeto ICryptoTransform que encripte los datos' con independencia del algoritmo que usemos pero basado en los parametros ' que hemos creado antes Dim objCrypto As ICryptoTransform = objDES.CreateEncryptor(key, iv)Dim cipherStream As New IO.MemoryStream 'Ahora encriptamos en memoria los datos Dim cryptoStream As New CryptoStream _ (cipherStream, objCrypto, CryptoStreamMode.Write) cryptoStream.Write(message, 0, message.Length) 'Ahora guardamos el mensaje ya encriptado en una variable 'Para desencriptarlo necesitariamos los dos parametros iv y key 'Y usar el mismo algoritmo de encriptado (aparte del mensaje a desencriptar claro está) Dim encryptedMessage As Byte()encryptedMessage = cipherStream.ToArray()
|