Criptografía

Artículos relacionados con la criptografía.


Almacenes de certificados digitales en .NET

.NET nos permite tratar los certificados del mismo modo que implementa otras librerías con algoritmos criptográficos. Las clases para el acceso a los certificados se encuentran en el espacio de nombres System.Security.Cryptography.X509Certificates que implementa los métodos del estándar X.509 v3 (estándar de infraestructura de clave pública PKI – Public Key Infrastructure).

En este espacio de nombres existen diferentes clases que permiten operaciones para el mantenimiento de almacenes así como la importación, exportación, borrado, enumeración y recuperación de la información de los certificados.

Leer más...

Introducción a los certificados digitales

Uno de los problemas de la comunicación mediante procesos electrónicos es la imposibilidad de verificar que el emisor de la comunicación es realmente quien dice ser. En el Mundo Real ™ para verificar la identidad de una persona u organización se utilizan documentos como el pasaporte, el DNI, el CIF o similares acompañados de una firma o una fotografía que identifica a la persona.

Para imitar este proceso utilizando métodos digitales se usan los certificados digitales (también conocidos como certificados de clave pública).

Leer más...

Métodos criptográficos de clave pública

La criptografía de clave pública, también conocida como asimétrica, se basa en la utilización de un par de claves.

De esta pareja de claves una se utiliza para cifrar y la otra para descifrar. La primera de ellas se conoce como clave pública y la otra como clave privada.

Leer más...

Encriptación utilizando WDP con C#

Windows Data Protection (WDP) es un sistema de encriptación que proporciona el propio sistema operativo utilizando una clave generada automáticamente a partir de la contraseña del usuario que ha iniciado la sesión. Por ejemplo, este es el sistema empleado cuando se utilizan los métodos del espacio de nombres System.IO.File.Encrypt sobre un archivo.

Si deseamos utilizar el mismo sistema desde nuestras aplicaciones podemos utilizar la clase ProtectedData del espacio de nombres System.Security.Cryptography . Esta clase permite también utilizar una clave global para todos los usuarios de una máquina.

Leer más...

Encriptar cadenas utilizando Triple DES

DES es un algoritmo de encriptación en bloque de clave simétrica, es decir, se utiliza la misma clave para encriptar y desencriptar un mensaje.

Encriptar un mensaje utilizando DES con las librerías de.NET ( System.Security.Cryptography ) es bastante sencillo, prácticamente se reduce a seleccionar el proveedor específico y llamar a los métodos adecuados.

Leer más...

Firma digital de archivos XML en C#

Cuando se trabaja con archivos XML, en ocasiones nos solicitan que este archivo se firme digitalmente utilizando una clave privada.

XmlDSignature es un protocolo estándar para la firma de cadenas XML y define una serie de nodos que se añaden a un archivo XML para firmarlo. La buena noticia es que.NET tiene una librería específica para el tratamiento de este tipo de archivos bajo el espacio de nombres System.Security.Cryptography.Xml .

Leer más...