Ir al contenido

”Se acercan los certificados de 47 días! ¿EstÔs preparado?

ActĆŗa ahora →

Proteja los datos de su organización con estos algoritmos de cifrado.

La seguridad de los datos es esencial para una organización y puede lograrse mediante diversos métodos. La clave de cifrado desempeña un papel fundamental en el procesamiento general de datos. El cifrado de datos convierte el texto simple en un formato codificado (ilegible), al que solo las personas o partes autorizadas pueden acceder.

La seguridad de los datos es fundamental para cualquier organización y puede lograrse mediante diversos métodos. La clave de cifrado desempeña un papel crucial en el proceso general de gestión de datos. El cifrado convierte el texto plano en un formato codificado (ilegible), al que solo pueden acceder las personas o entidades autorizadas.

Existen numerosos algoritmos en el mercado para cifrar este tipo de datos. Si bien los datos cifrados han estado seguros durante un tiempo, nunca podemos confiar plenamente en su seguridad. Con el paso del tiempo, existe la posibilidad de que alguien los piratee.

algoritmo de cifrado simƩtrico
Fig.: Proceso de cifrado y descifrado

En este artículo, hemos analizado diversos algoritmos y técnicas de cifrado para mejorar la seguridad de los datos y la información. Se comparan los algoritmos de cifrado en función de su rendimiento, eficiencia en hardware y software, tamaño de la clave, disponibilidad, técnicas de implementación y velocidad.

Resumen de los algoritmos

Comparamos la velocidad medida de los algoritmos de cifrado con otros algoritmos estƔndar incluidos en Oracle JDK, utilizando el IDE Eclipse, y luego resumimos otras caracterƭsticas de dichos algoritmos. Los algoritmos de cifrado considerados son AES (con claves de 128 y 256 bits), DES, Triple DES, IDEA y Blowfish (con una clave de 256 bits).

Rendimiento de los algoritmos

La siguiente figura muestra el tiempo que lleva cifrar varios bloques de datos de 16 bytes utilizando los algoritmos mencionados anteriormente.

Es fundamental tener claro desde el principio que, mƔs allƔ de ciertos lƭmites, no vale la pena sacrificar velocidad por seguridad. Sin embargo, las mediciones obtenidas nos ayudarƔn a tomar decisiones informadas.

CaracterĆ­sticas de los algoritmos

GrƔfico de rendimiento de CBC

La Tabla 1 resume las características principales de cada algoritmo de cifrado, ofreciendo lo que consideramos una visión general justa del estado de seguridad actual del algoritmo.

factoresRSADES3DESAES
Creado porEn 1978 por Ron Rivest, Adi Shamir y Leonard AdlemanEn 1975 por IBMEn 1978 por IBMEn 2001 por Vincent Rijmen y Joan Daemen
Longitud claveDepende del número de bits en módulo n, donde n = p*q56 bits de168 bits (k1, k2 y k3)
112 bits (k1 y k2)
128, 192 o 256 bits
rondas11648Clave de 10-128 bits,
Clave de 12-192 bits,
clave de 14-256 bits
TamaƱo de bloqueVariable64 bits de64 bits de128 bits de
Tipo de cifradoCifrado de bloque asimƩtricoCifrado de bloque simƩtricoCifrado de bloque simƩtricoCifrado de bloque simƩtrico
VelocidadEl mƔs lentoLentaMuy lentoRƔpido
SeguridadMenos seguroNo es lo suficientemente seguroSeguridad adecuadaExcelente seguridad

Tabla 1: Caracterƭsticas de los algoritmos de cifrado mƔs utilizados

Comparación

Las técnicas se han comparado en función de cuÔnto:

  • Velocidad de procesamiento de la CPU para cifrar y descifrar datos.
  • Tasa de generación de claves.
  • TamaƱo de la clave.
  • Consideración de seguridad.
  • Eficiente tanto en hardware como en software en el caso de la implementación.
  • La cantidad de memoria necesaria para almacenar los datos en el proceso de cifrado.
  • NĆŗmero de usuarios acomodados por el modelo.
  • Tiempo que necesita el modelo para recuperar los datos en caso de fallo de la clave.
  • Tiempo disponible para que el hacker produzca distintos tipos de ataques.
  • La complejidad de la tĆ©cnica del algoritmo.
Comparación de algoritmos de cifrado basada en el porcentaje de eficiencia
Figura: Comparación de algoritmos de cifrado basada en el porcentaje de eficiencia.

Servicios de cifrado personalizados

Evaluamos, elaboramos estrategias e implementamos soluciones y estrategias de cifrado.

Formulación y estudio de caso

Casos de Ʃxito

Los cifrados simétricos utilizan la misma clave para cifrar y descifrar, por lo que tanto el emisor como el receptor deben conocer y usar la misma clave secreta. Se considera que todas las longitudes de clave son suficientes para proteger la información clasificada hasta el nivel "Secreto", mientras que la información "Alto Secreto" requiere claves de 192 o 256 bits. Hay 10 rondas para claves de 128 bits, 12 rondas para claves de 192 bits y 14 rondas para claves de 256 bits. Cada ronda consta de varios pasos de procesamiento que incluyen la sustitución, transposición y mezcla del texto plano de entrada, transformÔndolo en el texto cifrado final.

DiseƱo AES

diseƱo aes

rondas

El relleno es el método de añadir datos ficticios adicionales. Durante el proceso de cifrado de un mensaje, si la longitud del mensaje no es divisible por la longitud del bloque, se utiliza relleno. Por ejemplo, si el mensaje consta de 426 bytes, se necesitan siete bytes adicionales de relleno para que el mensaje tenga una longitud de 432 bytes, ya que 432 es divisible por 16. En AES se pueden usar tres tamaños de clave, y dependiendo del tamaño de la clave, cambia el número de rondas. El tamaño de clave estÔndar en AES es de 128 bits, y el número de rondas es de 10. Para el cifrado AES, se generan dos subclaves y en la primera ronda se añade una clave de ronda.

No.Tamaño claveNúmero de rondas
1128 bits de10
2192 bits de12
3256 bits de14

Para 128 bits, se utiliza texto plano y una clave de 128 bits, y se realizan 10 rondas para obtener el texto cifrado. En el primer paso, se generan 10 claves de ronda, una para cada ronda, y existe una clave de ronda independiente. Sin embargo, en la primera ronda, se añade una clave de ronda adicional, la clave de ronda inicial, y luego se inicia la transformación. La transformación consta de cuatro pasos.

  1. Sustituir bytes
  2. Cambiar filas
  3. Mezclar columnas
  4. Agregar clave redonda

La siguiente figura explica todas las etapas del cifrado desde el texto simple hasta el texto cifrado.

texto sin formato para
Fig.: Muestra las etapas de cada ronda.

Servicios de cifrado personalizados

Evaluamos, elaboramos estrategias e implementamos soluciones y estrategias de cifrado.

Cifrado con AES

La fase de cifrado AES se divide en tres etapas: la ronda inicial, las rondas principales y la ronda final. Todas las etapas utilizan las mismas suboperaciones en diferentes combinaciones, como se indica a continuación:

  1. Ronda inicialAgregar clave redonda
  2. Ronda principal
    • Subbytes
    • Cambiar filas
    • Mezclar columnas
    • Agregar clave redonda
  3. Ronda final:
    • Subbytes
    • Cambiar filas
    • Agregar clave redonda
  4. Agregar clave redonda

    Esta es la única fase del cifrado AES que opera directamente sobre la clave de ronda AES. En esta operación, la entrada a la ronda es exclusiva (o con la clave de ronda).

  5. Subbytes

    Implica dividir la entrada en bytes y pasar cada uno a través de una caja de sustitución o S-Box. A diferencia de DES, AES utiliza la misma S-Box para todos los bytes. La S-Box de AES implementa la multiplicación inversa en el Campo de Galois 2.

  6. Cambiar filas

    Cada fila del estado interno de 128 bits del cifrado se desplaza. En esta etapa, las filas corresponden a la representación estĆ”ndar del estado interno en AES, que es una matriz de 4Ɨ4 donde cada celda contiene un byte. Los bytes del estado interno se colocan en la matriz de izquierda a derecha, fila por fila, y columna por columna.

  7. Mezclar columnas

    Proporciona difusión mediante la redistribución de la entrada. A diferencia de Desplazar Filas, Mezclar Columnas realiza operaciones dividiendo la matriz por columnas en lugar de por filas. A diferencia de la multiplicación de matrices estÔndar, Mezclar Columnas realiza la multiplicación de matrices sobre el Campo de Galois 2.

Descifrado con AES

Para descifrar un texto cifrado con AES, es necesario deshacer cada etapa de la operación de cifrado en el orden inverso al que se aplicaron. Las tres etapas del descifrado son las siguientes:

  1. Ronda final inversa
    • Agregar clave redonda
    • Cambiar filas
    • Subbytes
  2. Ronda principal inversa
    • Agregar clave redonda
    • Mezclar columnas
    • Cambiar filas
    • Subbytes
  3. Ronda inicial inversa
    • Agregar clave redonda

Conclusión

El estudio de diversos algoritmos muestra que la robustez del modelo depende de la gestión de claves , el tipo de criptografía , el número de claves y el número de bits utilizados en una clave. Todas las claves se basan en propiedades matemÔticas. Las claves con mayor número de bits requieren mÔs tiempo de cÔlculo, lo que indica que el sistema tarda mÔs en cifrar los datos. El cifrado de datos AES es un algoritmo criptogrÔfico mÔs eficiente y elegante desde el punto de vista matemÔtico, pero su principal ventaja reside en la posibilidad de elegir entre diferentes longitudes de clave. AES permite seleccionar una clave de 128, 192 o 256 bits, lo que lo hace exponencialmente mÔs robusto. AES utiliza la permutación-sustitución, que implica una serie de pasos de sustitución y permutación para crear el bloque cifrado.

Referencias