Ir al contenido

Webinar: Regístrese para nuestro próximo seminario web

Regístrate 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 una de las partes esenciales de una organización; se puede lograr utilizando diversos métodos. cifrado La clave desempeña un papel fundamental en el procesamiento general de datos. El cifrado de datos convierte el texto plano en una forma codificada (ilegible), a la 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 disponibles de forma estándar en Oracle JDK, utilizando el IDE Eclipse, y luego resumimos otras características de dichos algoritmos. Los algoritmos de cifrado considerados aquí son: AES (con claves de 128 y 256 bits), DES, Triple DES, IDEA y Pez globo (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

Tabla 1 resume las características principales de cada algoritmo de cifrado, con lo que creemos que es una descripció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
Speed (Rapidez)El 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 utilizar la misma clave secreta. Todas las longitudes de clave se consideran suficientes para proteger la información clasificada hasta el nivel "Secreto", mientras que la información "Alto Secreto" requiere longitudes de clave 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, la transposición y la mezcla del texto sin formato de entrada para transformarlo en el resultado final. texto cifrado.

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 solidez del modelo depende de gestión de claves, tipo de criptografíaEl número de claves y el número de bits utilizados en una clave son factores importantes. Todas las claves se basan en propiedades matemáticas. Las claves con mayor número de bits requieren más tiempo de computación, lo que indica que el sistema tarda más en cifrar los datos. El cifrado de datos AES es un algoritmo criptográfico matemáticamente más eficiente y elegante, pero su principal ventaja radica en la posibilidad de utilizar distintas longitudes de clave. AES permite elegir una clave de 128, 192 o 256 bits, lo que aumenta exponencialmente su seguridad. AES utiliza el método de permutación-sustitución, que implica una serie de pasos de sustitución y permutación para crear el bloque cifrado.

Referencias