Necesito implementar cifrado/descifrado AES 256 y no he podido encontrar un ejemplo que funcione correctamente.C# Ejemplo de encriptación AES256 usando System.Security.Cryptography.Aes
MSDN sugiere que deba usar la clase AES.
La clase Rijndael es la predecesora del algoritmo Aes. Deberías usar el algoritmo Aes en lugar de Rijndael. Para obtener más información, consulte la entrada The Differences Between Rijndael and AES en el blog de seguridad de .NET.
¿Alguien podría indicarme un buen ejemplo utilizando la clase AES para AES256?
Para añadir un poco más de claridad:
Tengo un archivo cifrado que contiene la clave compartida y una cadena de texto cifrado. Necesito descifrar el texto y luego validarlo.
Todos los ejemplos que he visto esperan al menos 2 parámetros para realizar el cifrado/descifrado.
¿Debo ser capaz de inferir el vector de Inicialización y la clave del texto en el archivo de cifrado?
Este es un ejemplo del texto que tuvo lugar en mi archivo cifrado:
EUA ± IRA ƒ @ † ²; A; öDWnªóª ©© ¨|L
La documentación, tanto para el [AesManaged] (http://msdn.microsoft.com/en-us/library/system.security.cryptography.aesmanaged .aspx) y la clase [AesCryptoServiceProvider] (http://msdn.microsoft.com/en-us/library/system.security.cryptography.aescryptoserviceprovider.aspx) proporciona ejemplos elaborados. Si los ejemplos no funcionan de la manera que espera, publique un programa breve pero completo que demuestre el problema. – dtb
@dtb Gracias. No había visto el ejemplo en AesManaged, ya que solo está disponible para .Net 4 y actualmente estoy usando 3.5, pero el ejemplo parece sencillo. – TeamWild
Para decodificar los datos, necesitará saber en qué modalidad de transmisión de cifrado se cifró inicialmente (normalmente CBC o ECB). ECB no tiene vector de inicialización. Si se usó CBC, los primeros bytes de los datos cifrados podrían ser IV. Proporcione toda la información que tenga y publique una muestra válida completa (kez y datos encriptados). Dado que los datos cifrados son binarios, deberá publicarlos codificados en Base 64 o en una representación hexadecimal. – Codo