Seguridad en Documentos Electrónicos: Firmas Digitales y Criptografía


Comprendiendo la Firma Digital y Electrónica

La firma digital de un documento se genera aplicando un algoritmo matemático al contenido del mismo, seguido de la aplicación de un algoritmo de firma que utiliza una clave privada. Este proceso produce la firma del documento electrónico. El software de firma digital debe realizar diversas validaciones, entre las que se incluyen:

  • Vigencia del certificado digital del firmante.
  • Revocación del certificado digital del firmante.
  • Inclusión de sello de tiempo.

Por otro lado, la firma electrónica es un concepto más amplio que la firma digital. Mientras que la firma digital se enfoca en métodos criptográficos, la firma electrónica tiene una naturaleza fundamentalmente legal, otorgando un marco normativo que le confiere validez jurídica. Firmar electrónicamente aporta tres características esenciales en la comunicación por Internet:

  • Identificación del firmante.
  • Integridad de los datos.
  • Aseguramiento del no repudio.

Algunos ejemplos de operaciones que se benefician de la firma electrónica son:

  • Realización de la declaración de la renta a través de Internet.
  • Solicitudes en registros electrónicos administrativos.
  • Petición de la vida laboral.
  • Recepción de notificaciones electrónicas.
  • Firma de correos electrónicos.
  • Firma de facturas electrónicas.

(Nota: Los siguientes párrafos parecen contener texto cifrado o ilegible y no se han modificado.)

VIGENERE FINAL    LL UONRWMTU PR OJTTFXRFAA OY ERUGVTU FVSFE OIE HPACLWUBBWS,

FHM RB WL AIXVUGNZ XQ OOLECCMF M DA DYSHBVA PH ENB XRLHOVGUO

CESAR FINAL    XX GAZDIYFG BD AVFFRJDRMM AK QDGSHFG RHERQ AUQ TBMOXIGNNIE, RTY DN IX MUJHGSZL JC AAXQOOYR Y PM PKETNHM BT QZN JDXTAHSGA

Fundamentos de la Criptología

Sistemas de Transposición

Los sistemas de transposición, como su nombre indica, consisten en descolocar el orden de las letras, sílabas o conjuntos de letras. Se clasifican según el número de transposiciones aplicadas:

  • Sistemas de transposición simple: El texto en claro se somete a una única transposición.
  • Sistemas de transposición doble o múltiple: Se aplica una segunda transposición (o más) sobre el texto ya cifrado mediante transposición simple, logrando una mayor seguridad.

La transposición, por sí sola, no dificulta extraordinariamente el criptoanálisis, pero puede combinarse con otras operaciones para añadir complejidad a los algoritmos de cifrado. El producto de cifras, o la combinación en cascada de distintas transformaciones criptográficas, es una técnica muy efectiva para implementar algoritmos seguros de forma sencilla. Por ejemplo, muchos algoritmos de cifrado en bloque se basan en iteraciones de productos de sustitución-transposición.

Dos propiedades deseables en un algoritmo criptográfico son la confusión y la difusión:

  • Confusión: Busca esconder la relación entre la clave y las propiedades estadísticas del texto cifrado. Un cambio de un solo bit en la clave debe afectar a muchos bits del texto cifrado.
  • Difusión: Propaga la redundancia del texto en claro a lo largo del texto cifrado para que no sea fácilmente reconocible. El cambio de un solo bit en el texto en claro debe afectar a muchos bits del texto cifrado.

Sistemas de Sustitución

Los sistemas de sustitución reemplazan letras del alfabeto por otras letras o por conjuntos de ellas, según el método empleado. Se clasifican según el tipo de sustitución:

  • Literal: Se sustituyen letras por letras.
  • Numéricas: Se sustituyen letras por números.
  • Esteganográficas: Se sustituyen por signos o se oculta el mensaje tras una imagen, sonido, etc.

Claves Simétricas

En los sistemas de clave simétrica, las dos partes que se comunican deben acordar de antemano la clave a utilizar. La seguridad de estos sistemas reside en la clave, no en el algoritmo. Una clave debe ser difícil de adivinar y provenir de un amplio espacio de posibilidades (considerando longitud y conjunto de caracteres).

Problemas principales de los sistemas de cifrado simétrico:

  • Intercambio de claves: ¿Qué canal de comunicación seguro se ha utilizado para transmitir las claves?
  • Número de claves necesarias: Para que n personas se comuniquen entre sí, se requieren n*(n-1)/2 claves diferentes para cada par de personas.

Claves Asimétricas

En los sistemas asimétricos, cada usuario posee un par de claves:

  • Clave privada: Custodiada por el propietario y nunca se comparte.
  • Clave pública: Conocida por todos los usuarios.

Estas claves forman un par complementario: lo que cifra una, solo puede ser descifrado por la otra, y viceversa. Se basan en funciones Resumen o Hash de un solo sentido, donde la computación es fácil, pero su inversión es extremadamente difícil.

Ejemplo: Es fácil multiplicar dos números primos, pero muy difícil factorizar un número compuesto en sus dos componentes primos.

Algoritmos comunes: Funciones resumen o hash como MD5 y SHA.

Usos de las claves asimétricas:

  1. Cifrado de contraseñas de usuario (ej. en el archivo `/etc/shadow` de GNU/Linux).
  2. Generación de resúmenes de archivos para verificar su autenticidad (útil contra descargas falsificadas o malware).
  3. Firma digital de archivos y correos electrónicos.

Algoritmos Criptográficos y sus Características

Algoritmos Simétricos

  1. Algoritmo: DES
    Clave: 64 bits (efectivos 56 bits)
    Comentario: 16 iteraciones. Bloques de mensaje de entrada de 64 bits. Basado en el cifrado Lucifer de IBM.
  2. Algoritmo: 3DES
    Clave: 168 bits
    Comentario: Aplica DES tres veces. Bloques de mensaje de entrada de 64 bits.
  3. Algoritmo: IDEA
    Clave: 128 bits
    Comentario: Se basa en Confusión y Difusión. Utiliza operaciones XOR, suma y producto módulo 216. Bloques de 64 bits.
  4. Algoritmo: Rijndael (AES)
    Clave: 128, 192 o 256 bits
    Comentario: Utiliza algoritmos de flujo, algoritmos de bloque, funciones Resumen (Hash) y generadores de números pseudoaleatorios.
  5. Algoritmo: RC5
    Clave: Variable (mayor a 56 bits)
    Comentario: Prohibido exportarlo fuera de EE. UU.

Algoritmos Asimétricos

  1. Algoritmo: RSA
    Clave: Variable (1024, 2048, 4096 bits)
    Comentario: Basado en la factorización entera. Su robustez reside en el tamaño del número n (clave pública). n se descompone en p y q (clave privada). Claves de 1024 bits para actividades personales, 2048 para comerciales, y 4096 para autoridades de certificación.
  2. Algoritmo: RW (Rabin Williams)
    Comentario: Basado en la factorización entera.
  3. Algoritmo: Diffie-Hellman
    Clave: Variable
    Comentario: Basado en el logaritmo discreto.
  4. Algoritmo: DSA (Digital Signature Algorithm)
    Comentario: Desarrollado por David Kravitz. Basado en el logaritmo discreto. DSS (Digital Standard Signature) es el estándar del NIST que utiliza DSA.
  5. Algoritmo: DH Elíptico
    Clave: Basada en logaritmos discretos elípticos.
    Comentario: Ofrece la misma seguridad con claves de menor número de bits. Idóneo para implementaciones en entornos con recursos limitados (ej. SmartCards).
  6. Algoritmo: DSA Elíptico
    Comentario: Mismo que el DH Elíptico.

Funciones Hash

  1. Algoritmo: SHA-1
    Clave: 160 bits
  2. Algoritmo: SHA-2
    Clave: 224, 256, 384, 512 bits
  3. Algoritmo: RIPEMD-160
    Clave: 160 bits
  4. Algoritmo: MD5 y SHA-0
    Clave: 128 bits
    Comentario: Considerados insuficientes y rompibles por fuerza bruta.

Dejar un Comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *