Hola a todos, he estado leyendo sobre criptografia en vb.net y tras un par de días he armado este proyecto. Siento que es mucho código para algo sencillo y quisiera una opinión de como lo optimizarían o que opciones le agregarían para mejorar el funcionamiento de la aplicación. Para este caso use el algoritmo Rijndael, ya que me parecio de los mas avanzados al utilizar encriptacion de 256 bits y un vector de inicializacion extra de 128 bits, ademas de que tambien es de lo mejor a la hora de encriptacion de dos vias (encrypt/decrypt) con el mismo algoritmo utilizando un hash.
Código fuente: http://www.mediafire.com/?8nve8g4j971a2h3
Solo ejecutable: http://www.mediafire.com/?0kbtgqozfxy4my2
Saludos
PD: El proyecto está compilado en visual studio 2010





Autor



En línea

, me gusta la iniciativa de que las personas practiquen sin necesidad de que sea una tarea o un proyecto que necesitan hacer. Un único detalle, si bien es cierto que Rijndael es un poderoso algoritmo de cifrado, que hasta ahora no tiene debilidades conocidas, realizar una mala practica lo debilita notablemente, me refiero al hecho de calcular el IV a partir de la Key, el IV no debe ser tomado como algo secreto ni como una segunda contraseña porque no lo es, deja que la clase Rijndael calcule el IV y guárdalo en el archivo, es más seguro y de mejor práctica. 
