2- Distintos Métodos de Encriptación
Autor: Javier Gómez ("javier.mil")
Última actualización: 2 / Mayo / 2019
Este es un resumen muy básico de los distintos métodos populares criptográficos.
Según el diccionario criptografía viene del griego kryptos (ocultar) y grafos (escribir), literalmente “escritura oculta”.
La criptografía es el arte o ciencia de cifrar y descifrar información utilizando técnicas matemáticas que hagan posible el intercambio de mensajes de manera que sólo puedan ser leídos por las personas a quienes van dirigidos.
La información ha sido, desde siempre, una de las más preciadas posesiones para el hombre y, por ello, desde muy antiguo, todas aquellas personas que poseían informaciones privilegiadas han utilizado métodos y mecanismos para salvaguardarlas de posibles ataques.
Con la introducción de las computadoras en el mundo de la criptografía ha supuesto una revolución en los métodos de cifrado, por lo que ha marcado un punto de inflexión en la historia de esta ciencia, que ha pasado a dividirse en criptografía clásica y moderna.
La criptografía clásica abarca todos los periodos anteriores a la aparición de las computadoras. A ella pertenecen algoritmos de cifrado como el César, el cifrado de Vigenere o el método de Beaufort.
La criptografía moderna nace con la introducción de las computadoras. Se basa en los mismas ideas que la criptografía clásica pero, mientras que en la criptografía clásica se utilizaban algoritmos muy sencillos y se confiaba en el tamaño de la clave para otorgar seguridad, en la criptografía moderna se han perfeccionado los algoritmos para lograr una mayor seguridad y se basa en la fortaleza de un cifrado en la calidad del cifrado en sí, no en el tamaño de la clave de cifrado. En resumen: La criptografía es el arte de transformar un mensaje legible en otro ilegible. A este proceso se le llama «cifrado», mientras que el contrario, la recomposición del mensaje en un formato legible, es el «descifrado». En la actualidad contamos con tres tipos principales de criptografía:
• Hashing.
• Criptografía simétrica o convencional.
• Criptografía asimétrica o de clave pública.
He hecho una pequeña selección de los distintos algoritmos más populares de encriptaciones (métodos de codificación y descodificación de datos) llamados como “fuertes”. Ninguno de los siguientes algoritmos esta patentado y su código pertenece al dominio público. (No están todos los que son). Según Bruce Schneier: "Hay dos clases de criptografía: la criptografía que impedirá que tu hermana pequeña lea tus archivos y la criptografía que impedirá a los principales gobiernos del mundo leer tus archivos”
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
3DES (Triple Data Encryption Standard = Estándar de cifrado de datos triples) 3DES es el estándar mundial de encriptación entre instituciones bancarias
El 3DES adaptado como estándar por el sector bancario utiliza tres ejecuciones en serie del DES bajo la modalidad EDE (encrypt-decrypt-encrypt) y utiliza dos llaves diferentes para un total de 112 bits.
Este algoritmo admite variantes básicamente consistentes en aplicar el conocido algoritmo de bloques DES tres veces consecutivas utilizando tres claves (o subclaves) diferentes. Se demuestra que esto no es equivalente a utilizar una sola vez DES con una clave diferente y por tanto mejora la resistencia a los ataques de fuerza bruta.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
La fortaleza del método estibaba en que era uno de los primeros en unir transposición y sustitución dos procesos que producen, en la terminología actual, difusión y confusión.
Según explica Simon Singh en "Los códigos secretos", fue descifrado por primera vez por un francés, Georges Painvin, que trabajo día y noche perdiendo quince kilos en el proceso.
Se empieza disponiendo las 26 letras del alfabeto anglosajón y los diez dígitos en una cuadrícula 6x6. Las líneas y las columnas van encabezados por las letras A D F G V X. El modo de ordenar letras y números en la cuadrícula forma parte de la clave y necesita ser comunicada al receptor del mensaje.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
La manera de trabajar de este sistema, la codificación, es que cada 3 bloques de 8 bits son guardados en 4 caracteres de 6 bits, donde los caracteres se encuentran en el rango [A-Z][a-z][0-9][+/]. Como no se alinean correctamente, los caracteres de [=] se usan al final.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Ha sido aprobado para el gobierno Canadiense por el establecimiento de la seguridad de las tele-comunicaciones. El algoritmo fue creado en 1996 por Carlisle Adams y Stafford Tavares.
Se trata de un algoritmo de cifrado simétrico que hasta la fecha sólo ha podido ser atacado con éxito mediante la fuerza bruta.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
DES es un sistema de clave privada tanto de cifrado como de descifrado; posee una clave de entrada con una longitud de 64 bits, produciendo una salida también de 64 bits, con una clave de 56 bits (el octavo bit de cada byte es de paridad), llamada clave externa, en la que reside toda la seguridad del criptosistema ya que el algoritmo es de dominio público.
Aunque no ha sido posible demostrar rigurosamente la debilidad del criptosistema DES, y actualmente es uno de los más utilizados en el mundo entero, parece claro que con las actuales computadoras y su elevada potencia de cálculo una clave de 56 bits , es fácilmente vulnerable frente a un ataque exhaustivo.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Solo para comparar: una clave ECC de 256 bits ofrece la misma seguridad que una clave de 3072 bits.
Como la clave es más corta, se necesita menos potencia informática para obtener conexiones más rápidas y seguras, ideales para dispositivos portátiles como smartphones y tabletas. Además, pese a su novedad, Symantec incorpora los certificados raíz ECC desde hace más de 5 años, así que el certificado ECC funcionará en todo su sistema. Cómo no, el ECC cuenta con el certificado FIPS, como el DSA, y está respaldado por la National Security Agency estadounidense.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
las claves se distribuían a diario en forma de libros de códigos, utilizando un aparato con cinco discos. Cambiaban las claves con frecuencia por lo que los Aliados tenían grandes dificultades para poder descifrar la comunicación interceptada hasta que se apoderaron de un aparato Enigma y sus (posibles) posiciones iniciales.
Con la ayuda de una pequeña maquina, desarrollado en ese momento en el más estricto secreto para poder descifrar los códigos utilizados por el enemigo, se podían probar todas las claves posibles en relativamente poco tiempo.
Después de la Guerra, los norteamericanos vendieron aparatos Enigma a países del ‘Tercer Mundo’ pero olvidaron de advertirles de que el sistema ya había sido descifrado. En el caso del Enigma, la posesión del aparato y, con ello, el conocimiento del algoritmo fue de gran importancia para poder descodificar.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
El algoritmo IDEA está siendo ampliamente aceptado en diversas aplicaciones informáticas orientadas a la seguridad de los datos; numerosos programas destinados a trabajar en red utilizan ya este algoritmo como el principal de cifrado.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
A pesar de su amplia difusión actual, la sucesión de problemas de seguridad detectados desde que, en 1996, Hans Dobbertin anunciase una colisión de hash plantea una serie de dudas acerca de su uso futuro.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
El PGP es un sistema de codificación asimétrico (sistema de codificación de llave pública) porque utiliza una llave (la llave pública) para codificar un archivo (o texto o mensaje) y una llave diferente (la llave privada) para decodificarlo.
PGP utiliza el sistema de codificación de llave pública RSA y emplea también un sistema de codificación llamado IDEA.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Utilizado por el Reino Unido en la Primera Guerra Mundial, este sistema consiste en separar el texto en claro en diagramas y proceder a su cifrado de acuerdo a una matriz alfabética de dimensiones 5 X 5 en la cual se encuentran representadas las 26 letras del alfabeto ingles, El (No reconoce la letra Ñ y representa igual la I que la J.) , para una mayor seguridad se puede agregar una palabra clave.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Access , Word y Excel utilizan el cifrado RC4 con una longitud de clave de hasta 128 bits para encriptar sus documentos. RC4 es un algoritmo de cifrado de flujo que utiliza CryptoAPI de Microsoft®, una interfase para programación de aplicaciones (API).
El algoritmo de encriptación utilizado es RC4 con claves, según el estándar, de 64 bits. Estos 64 bits están formados por 24 bits correspondientes al vector de inicialización más 40 bits de la clave secreta.
En Julio de 2001, los reputados criptógrafos Scott Fluhrer, Itsik Mantin y Adi Shamir publicaron un artículo describiendo una vulnerabilidad en el algoritmo de cifrado RC4. Según ellos, se puede recuperar la clave empleada si la inicialización del algoritmo cumple determinadas premisas, muy comunes, y se interceptan el suficiente número de mensajes.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Ronald Rivest del MIT,
Adi Shamir del Instituto Weizmann en Israel,
Leonard Adelman de la USC.
Es llamado "RSA" por las iniciales de sus apellidos de estas tres personas. Presenta todas las ventajas de los sistemas asimétricos, incluyendo la firma digital, aunque resulta más útil a la hora de implementar la confidencialidad el uso de sistemas simétricos, por ser más rápidos. Se suele usar también en los sistemas mixtos para encriptar y enviar la clave simétrica que se usará posteriormente en la comunicación cifrada.
Su algoritmo esta basado en la exponenciación modular donde las claves son pares de números (e,n) formados por un exponente e y un módulo n que es el producto de dos grandísimos números primos p y q tales que mcd(e,fi(n))=1 (donde fi(n) es el número de enteros menores que n y primos con él)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
En 1997, NIST (National Institute for Standards and Technology) anunció una competencia internacional para la definición del algoritmo de encriptación estándar del próximo siglo, denominado AES (Advanced Encryption Standard).
AES es un bloque cipher diseñado por Joan Daemen y Vincent Rijmen. El nombre Rijndael está compuesto por dos partes de los apellidos de los autores (RIJ más DAE). El diseño de Rijndael estuvo fuertemente influido por el diseño del bloque cipher Square. Rijndael es altamente seguro y ha pasado por procesos de análisis de códigos extensivos. A noviembre de 2002, no se había encontrado ninguna debilidad de este método.
Rijndael, que ha sido seleccionado por el NIST (National Institute of Standards and Technology), a partir de ahora, como el nuevo estándar de cifrado del siglo XXI (por lo menos hasta el año 2060), sustituyendo así a su predecesor, el DES (Data Encryption Standard), que había ostentando dicho título desde principios de los años 70.
Su nivel de seguridad y su resistencia frente a los principales ataques criptográficos conocidos, lo convierten en unos de los algoritmos mas seguros en la actualidad.
- También puedes ver la DEM0 33
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
Serpent fue seleccionado como uno de los cinco finalistas en el concurso AES en que se seleccionó a Rijndael como el estándar AES. Serpent es más rápido que DES y utiliza un algoritmo más sencillo y más seguro.
No se tiene información de ataques que hayan sido exitosos en “quebrar” este algoritmo.
Lo utilizan en gobiernos como (UK, Israel y Noruega).
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
TEA, es simple en su diseño e implementación. Su tamaño de bloque de 64 bits es más que suficiente para evitar ataques "codebook" sencillos. Su clave tiene una longitud de 128 bits. No requiere de memoria temporal o tablas.
Es muy rápido y eficiente en CPUs de 32 bits. Más rápido que muchos algoritmos de hash.
El algoritmo no sufre cambios en máquinas "big-endian" y "little-endian". Se trata de un algoritmo público, sin patente, y de uso no restringido y No se le conocen ataques prácticos relevantes.
![punto rojo animado](../imagenes_iconos/bola_ani.gif)
El diseño se basó al de "Blowfish" un algoritmo muy popular. Twofish usa tablas internas de datos variables que dependen de la clave y sus diseñadores hicieron un gran esfuerzo en comprobar que cada variante es fuerte.
La velocidad del algoritmo es más que veloz es realmente impresionante: dos ciclos del procesador para cada bit encriptado. En otras palabras en un Pentium de 300 MHz se pueden encriptar 18 MBytes por segundo.