lunes, 6 de abril de 2009

Creación de llaves públicas y privadas del algoritmo asimétrico RSA como archivos XML en C#

En esta entrada les mostraré la forma en que podemos generar nuestras propias llaves tanto públicas y privadas del algoritmo de encriptación asimétrico RSA (llamado así por sus creadores), las llaves son generadas como archivos XML, esto con la finalidad de poder distribuir la llave pública para los fines que sean necesarios y el ejemplo está hecho en C# para aplicaciones de escritorio. El ejemplo esta hecho en VS 2008 express edition.

Si todo esto de la encriptación y las llaves públicas y privadas se te dificulta un poco, te recomiendo que consultes esta información.

Todo el proceso es realmente sencillo y se hace con el namespace System.Security.Cryptography.

Para este ejemplo y para ilustrar el contenido que tendrán los archivos, se tienen 2 cuadros de texto, en el primero se tiene el contenido de la llave privada (y pública tambien), mientras que en el segundo se tiene únicamente el contenido de la llave pública.

Tambien se tienen 3 botones, con un botón se generan las llaves y con otros botones se exporta el contenido de los cuadros de texto a archivos XML.

 En el evento Load del formulario tenemos la siguiente instrucción:
algoritmoRSA = new System.Security.Cryptography.RSACryptoServiceProvider(2048);
la variable algoritmoRSA fue previamente declarada.

En el evento clic del boton generar tenemos lo siguiente:
textBox1.Text = algoritmoRSA.ToXmlString(true);
textBox2.Text = algoritmoRSA.ToXmlString(false);
El sistema provee la funcionalidad necesaria para poder obtener las llaves mediante el método ToXmlString(bool indicador); el valor que acepta este método lo utlizamos para indicar si es la llave privada (con true) o si es la llave pública (con false).

En los botones que nos permiten exportar el contenido de los cuadros de texto tenemos un código como este:
SaveFileDialog sfd = new SaveFileDialog();
            sfd.Filter = "archivos xml |*.xml";
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                System.IO.StreamWriter sw = new System.IO.StreamWriter(sfd.FileName);
                sw.Write(this.textBox1.Text);
                sw.Close();
                  
            }
esto nos permite guardar los archivos xml.

 

domingo, 5 de abril de 2009

Windows 7 Beta - imagenes.


como parte de los premios entregados por elsegundo concurso BlogIt de Micrsosoft se encuentra un disco de Windows 7 (beta). Les dejo unas imágenes (que seguramente varios han visto) para que puedan apreciar que el sistema tiene algunos cambios interesantes.












Cabe aclarar que esto no es una reseña de Windows 7, es tan solo una muestra de lo que ustedes pueden observar a primera vista con el Windows 7 (beta)

sábado, 4 de abril de 2009

Entrega de los premios del segundo concurso de Microsoft Blog it

Aquí les dejo algunas imágenes de los productos que mandaron de parte de Microsoft por la participación de este blog en el segundo concurso "blog it".

Los premios son:
-Libro de Microsoft Press: "Windows Vista step by step, deluxe edition"
-DVD de entrenamiento Technet
-DVD de Windows Vista 7 Beta

posteriormente llego una playera de IE8, supongo que es parte de los premios.




La verdad es que la calidad de la playera no es muy buena, pero seguramente encontraré la ocasión para darle un buen uso.
En cuanto a los demás productos, son realmente buenos.








Sin duda, esta es una gran iniciativa por parte de Microsoft, ya que promueve el intercambio de conocimiento entre usuarios de sus productos.

Por mi parte, la recomendación que les puedo hacer es que participen con su blog, puede ser un buen incentivo para no dejar de publicar.