Clave pública y privada: ¿para qué sirven? Clave de cifrado pública y privada ¿Qué es una clave en criptografía?

Claves criptográficas

Se sabe que todos los algoritmos de cifrado, sin excepción, utilizan claves criptográficas. Por eso una de las tareas de la criptografía es la gestión de claves, es decir, su generación, acumulación y distribución. si en red informática Si hay n usuarios registrados y todos pueden contactar con todos, entonces es necesario tener n*(n-1)/2 claves diferentes. En este caso, a cada uno de los n usuarios se le debe proporcionar la clave (n-1), ya que la confiabilidad de la protección de la información confidencial depende en gran medida de su elección. Se da especial importancia a la elección de la clave para un criptosistema.

Además, dado que un atacante puede revelar casi cualquier clave criptográfica, es necesario utilizar ciertas reglas para seleccionarlas, generarlas, almacenarlas y actualizarlas durante las sesiones de intercambio de mensajes secretos, así como para su entrega. de una manera segura a los destinatarios. También se sabe que los criptosistemas de clave única requieren un canal de comunicación seguro para la gestión de claves. Para los criptosistemas de dos claves no es necesario dicho canal de comunicación.

El proceso de generación de claves debe ser aleatorio. Puedes usar generadores para esto. números aleatorios, así como su combinación con algún factor impredecible, por ejemplo, la elección de bits de las lecturas del temporizador. Cuando se acumulan, las claves no se pueden escribir explícitamente en los medios. Para aumentar la seguridad, la clave debe cifrarse con otra clave, otra con una tercera, etc. No es necesario cifrar la última clave de esta jerarquía, pero debe colocarse en una parte segura del hardware. Esta clave se llama clave maestra.

Las claves seleccionadas deben distribuirse de tal forma que no existan patrones en el cambio de claves de usuario a usuario. Además, es necesario prever cambios frecuentes de claves, y la frecuencia de sus cambios está determinada por dos factores: la duración de la validez y la cantidad de información que se cierra con su uso.

Las claves criptográficas varían en longitud y, por tanto, en fuerza: cuanto más larga es la clave, mayor es el número de combinaciones posibles. Digamos que si el programa de cifrado utiliza claves de 128 bits, entonces su clave particular será una de las 2128 combinaciones posibles de ceros y unos. Es más probable que un atacante gane la lotería que descifrar este nivel de cifrado usando fuerza bruta (es decir, probando sistemáticamente las claves hasta encontrar la correcta). A modo de comparación: retomar computadora estándar clave simétrica de 40 bits, un especialista en criptografía necesitará aproximadamente 6 horas. Incluso los cifrados con una clave de 128 bits son vulnerables hasta cierto punto, ya que los profesionales disponen de técnicas sofisticadas que les permiten descifrar incluso los códigos más complejos.



La confiabilidad de un criptosistema simétrico depende de la solidez del algoritmo criptográfico utilizado y de la longitud de la clave secreta. Supongamos que el algoritmo en sí es ideal: sólo puede descifrarse probando todas las claves posibles.

cuyo. Este tipo de ataque criptoanalítico se llama fuerza bruta. Para aplicar este método, el criptoanalista necesitará algo de texto cifrado y el texto sin formato correspondiente. Por ejemplo, en el caso de un cifrado en bloque, le basta con tener a su disposición un bloque de texto cifrado y el texto claro correspondiente. No es tan difícil de hacer.

Un criptoanalista puede conocer el contenido de un mensaje de antemano y luego interceptarlo cuando se transmite en forma cifrada. Según algunas señales, también puede adivinar que el mensaje enviado no es más que un archivo de texto preparado con un editor común, una imagen de computadora en un formato estándar, un directorio de subsistema de archivos o una base de datos. Lo importante para el criptoanalista es que en cada uno de estos casos se conocen varios bytes en el texto claro del mensaje cifrado interceptado, lo que le basta para lanzar un ataque.

Calcular la complejidad de un ataque de fuerza bruta es bastante sencillo. Si una clave tiene 64 bits de longitud, entonces una supercomputadora que puede probar 1 millón de claves en 1 segundo pasará más de 5.000 años probando todas las claves posibles. Si la longitud de la clave se aumenta a 128 bits, la misma supercomputadora necesitará 1025 años para enumerar todas las claves. Podemos decir que 1025 es un margen de seguridad bastante grande para quienes utilizan claves de 128 bits.

Sin embargo, antes de apresurarnos a inventar un criptosistema con una longitud de clave de, por ejemplo, 4000 bytes, debemos recordar la suposición anterior: el algoritmo de cifrado utilizado es ideal en el sentido de que sólo puede abrirse mediante fuerza bruta. Convencer de esto en la práctica no es tan fácil como podría parecer a primera vista.

La criptografía requiere delicadeza y paciencia. Los nuevos criptosistemas altamente complejos, tras un examen más detenido, a menudo resultan muy inestables. Y realizar incluso pequeños cambios en un algoritmo criptográfico sólido puede reducir significativamente su solidez. Por lo tanto, debe utilizar únicamente cifrados probados que se conozcan desde hace muchos años y no tener miedo de mostrar sospechas morbosas hacia los últimos algoritmos de cifrado, independientemente de las declaraciones de sus autores sobre la absoluta confiabilidad de estos algoritmos.

También es importante no olvidar que la solidez de un algoritmo de cifrado debe estar determinada por la clave y no por los detalles del algoritmo en sí. Para estar seguro de la seguridad del cifrado utilizado, no basta con analizarlo, siempre que el enemigo esté completamente familiarizado con el algoritmo de cifrado. También debemos considerar un ataque a este algoritmo, en el que el enemigo puede obtener cualquier cantidad de texto cifrado y el texto sin formato correspondiente. Además, se debe suponer que el criptoanalista tiene la capacidad de montar un ataque con un texto claro elegido de longitud arbitraria.

Afortunadamente, en vida real La mayoría de las personas interesadas en el contenido de sus archivos cifrados no tienen las calificaciones de especialistas altamente calificados ni los recursos informáticos necesarios que están a disposición de los gobiernos de las superpotencias del mundo. Es poco probable que estos últimos gasten tiempo y dinero en leer su mensaje apasionado y puramente personal. Sin embargo, si planeas

Si se quiere derrocar a un “gobierno antipopular”, es necesario pensar seriamente en la solidez del algoritmo de cifrado utilizado.

Muchos algoritmos modernos de cifrado de clave pública se basan en la función unidireccional de factorizar un número que es producto de dos números grandes. numeros primos. Estos algoritmos también pueden estar sujetos a un ataque similar al ataque de fuerza bruta utilizado contra cifrados de claves secretas, con la única diferencia de que no es necesario probar todas las claves, solo poder factorizar un número grande.

Por supuesto, factorizar un número grande es una tarea difícil. Sin embargo, inmediatamente surge una pregunta razonable: ¿qué tan difícil es? Desafortunadamente para los criptógrafos, la solución se está volviendo más fácil y peor, a un ritmo mucho más rápido de lo esperado. Por ejemplo, a mediados de la década de 1970 se creía que se necesitarían decenas de billones de años para factorizar un número de 125 dígitos. Y apenas dos décadas después, con la ayuda de computadoras conectadas a Internet, fue posible factorizar rápidamente un número que consta de 129 dígitos. Este avance fue posible gracias al hecho de que en los últimos 20 años no sólo se propusieron métodos nuevos y más rápidos para factorizar números grandes, sino que también aumentó la productividad de las computadoras utilizadas.

Por lo tanto, un criptógrafo calificado debe ser muy cuidadoso y cauteloso al trabajar con una clave pública larga. Es necesario considerar qué tan valiosa es la información clasificada con su ayuda y cuánto tiempo debe permanecer en secreto para los extraños.

¿Por qué no adquirir una clave de 10.000 bits? Después de todo, entonces desaparecerán todas las preguntas relacionadas con la solidez de un algoritmo de cifrado de clave pública asimétrica basado en la factorización de un gran número. Pero el hecho es que garantizar una seguridad suficiente del cifrado no es la única preocupación del criptógrafo. Hay consideraciones adicionales que influyen en la elección de la longitud de la clave, y entre ellas se encuentran cuestiones relacionadas con la viabilidad práctica del algoritmo de cifrado con la longitud de clave seleccionada.

Para estimar la longitud de la clave pública, mediremos la potencia de cálculo disponible para el criptoanalista en los llamados años pug, es decir, el número de operaciones que realiza un ordenador capaz de operar a una velocidad de 1 millón de operaciones por segundo en un año. Digamos que un atacante tiene acceso a recursos informáticos con una potencia informática total de 1000 años-pug, una gran corporación - 107 años-pug y un gobierno - 109 años-pug. Estas son cifras bastante realistas, considerando que el proyecto de descomposición de números de 129 dígitos mencionado anteriormente involucró solo el 0,03% de la potencia informática de Internet, y no fue necesario tomar ninguna medida extraordinaria ni ir más allá de la ley para lograrlo. de la mesa 4.6 puedes ver cuánto tiempo lleva expandir números de diferentes longitudes.

Las suposiciones realizadas permiten estimar la longitud de una clave pública segura en función del período durante el cual es necesario mantener en secreto los datos cifrados con ella (Tabla 4.7). Cabe recordar que los algoritmos criptográficos de clave pública se suelen utilizar para proteger información muy valiosa durante un período de tiempo muy largo. Por ejemplo, en sistemas de tableros electrónicos.

Tabla 4.6. La relación entre la longitud de los números y el tiempo necesario para factorizarlos.

etiquetas o con notariado firma electrónica. La idea de pasar varios meses factorizando un número grande puede parecerle muy atractiva a alguien si esto le permite pagar sus compras con la tarjeta de crédito de otra persona.

Con los que figuran en la tabla. 4.7 No todos los criptógrafos están de acuerdo con estos datos. Algunos de ellos se niegan rotundamente a hacer previsiones a largo plazo, considerándola una tarea inútil, otros son demasiado optimistas y recomiendan que los sistemas firma digital la longitud de la clave pública es de sólo 512-1024 bits, lo que es completamente insuficiente para proporcionar una protección adecuada a largo plazo.

Un ataque criptoanalítico contra un algoritmo de cifrado suele estar dirigido al punto más débil del algoritmo. Para organizar la comunicación cifrada, a menudo se utilizan algoritmos criptográficos con una clave pública y secreta. Un criptosistema de este tipo se denomina híbrido. La potencia de cada uno de los algoritmos incluidos en el criptosistema híbrido debe ser suficiente para resistir con éxito los ataques. Por ejemplo, es una tontería utilizar un algoritmo simétrico con una longitud de clave de 128 bits con un algoritmo asimétrico en el que la longitud de la clave es de sólo 386 bits. Por el contrario, no tiene sentido utilizar un algoritmo simétrico con una longitud de clave de 56 bits junto con un algoritmo asimétrico con una longitud de clave de 1024 bits.

Tabla 4.8. Longitudes de clave para algoritmos simétricos y asimétricos

cifrado con la misma fuerza

en la mesa 4.8 enumera pares de longitudes de clave para un algoritmo criptográfico simétrico y asimétrico, en los que la fuerza de ambos algoritmos contra un ataque criptoanalítico de fuerza bruta es aproximadamente la misma. De estos datos se deduce que si se utiliza un algoritmo simétrico con una clave de 112 bits, entonces se debe utilizar junto con él un algoritmo asimétrico con una clave de 1792 bits. Sin embargo, en la práctica, la clave para un algoritmo de cifrado asimétrico suele elegirse más fuerte que para uno simétrico, ya que el primero protege volúmenes de información significativamente mayores y durante un período más largo.

Las claves criptográficas se utilizan como información secreta.

Una clave criptográfica es una secuencia de símbolos generados según ciertas reglas. Esta secuencia se utiliza en transformaciones de texto criptográfico. Cada algoritmo criptográfico tiene sus propios requisitos según las claves que se crean. Cada clave se crea para un algoritmo específico.

Para garantizar la irreproducibilidad de una firma electrónica y la imposibilidad de leer textos cifrados por parte de extraños, en criptografía se utilizan claves criptográficas.

Una clave criptográfica moderna es una secuencia de números de cierta longitud, creada de acuerdo con ciertas reglas basadas en una secuencia de números aleatorios. Para cada clave, se crea nuevamente una secuencia de números aleatorios; ninguna secuencia se utiliza más de una vez. Para generar secuencias de números aleatorios, se utilizan objetos de software especiales o dispositivos llamados sensores de números aleatorios.

Cada algoritmo tiene sus propios requisitos de clave, por lo que cualquier clave criptográfica se crea para un algoritmo específico y se utiliza únicamente con ese algoritmo.

Si la generación de una firma electrónica y su verificación, o el cifrado y descifrado de texto se realizan utilizando la misma clave, este enfoque se denomina criptografía simétrica(algoritmos simétricos y claves simétricas, respectivamente). Las operaciones de criptografía simétrica son rápidas y relativamente sencillas. Pero requieren que al menos dos personas conozcan la clave, lo que aumenta significativamente el riesgo de que se vean comprometidos (es decir, que personas no autorizadas accedan a ellos).

Por lo tanto, ahora se utiliza principalmente criptografía asimétrica. En la criptografía asimétrica, la generación de una firma electrónica o el cifrado se realiza en una clave y la verificación o descifrado de la firma se realiza en otra clave emparejada.



La criptografía asimétrica utiliza los llamados pares de claves. Cada uno de estos pares consta de dos claves interconectadas. Una de estas claves es una clave privada. Sólo lo conoce el propietario de la clave y bajo ninguna circunstancia debe ser accesible a nadie más. Otra clave es una clave pública, se puede acceder a ella.

cualquiera que lo desee.

Métodos de autenticación

La autenticación es la emisión de ciertos derechos de acceso al suscriptor en función del identificador que tiene. IEEE 802.11 proporciona dos métodos de autenticación:

1. Autenticación abierta Autenticación abierta):

La estación de trabajo realiza una solicitud de autenticación que contiene únicamente la dirección MAC del cliente. El punto de acceso responde con una denegación o una confirmación de autenticación. La decisión se toma en función del filtrado MAC, es decir. En esencia, se trata de una protección basada en restricciones de acceso, que no es segura.

2. Autenticación de clave compartida Autenticación de clave compartida):

Debe configurar una clave de cifrado WEP estática. Privacidad equivalente por cable). El cliente realiza una solicitud de autenticación al punto de acceso, para lo cual recibe una confirmación que contiene 128 bytes de información aleatoria. La estación cifra los datos recibidos con el algoritmo WEP (sumación bit a bit en módulo 2 de los datos del mensaje con la secuencia de claves) y envía el texto cifrado junto con la solicitud de asociación. El punto de acceso descifra el texto y lo compara con los datos originales. Si hay una coincidencia, se envía una confirmación de asociación y se considera que el cliente está conectado a la red.
El esquema de autenticación de clave compartida es vulnerable a ataques Man in the middle. Algoritmo cifrado WEP es un XOR simple de la secuencia de teclas con información útil Por tanto, escuchando el tráfico entre la estación y el punto de acceso, podrás recuperar parte de la clave.
IEEE comenzó a desarrollar un nuevo estándar, IEEE 802.11i, pero debido a dificultades de aprobación, la organización WECA (ing. Alianza Wi-Fi) junto con IEEE anunció el estándar WPA (ing. Acceso Wi-Fi Protegido). WPA utiliza TKIP. Protocolo de integridad de clave temporal, un protocolo de integridad de claves), que utiliza un método avanzado de administración de claves y cambios de claves cuadro por cuadro.

WPA también utiliza dos métodos de autenticación:

1. Autenticación mediante una clave WPA-PSK preestablecida. Clave previamente compartida) (Autenticación empresarial);

2. Autenticación mediante un servidor RADIUS Servicio de usuario de acceso telefónico remoto)

Tipos de cifrado

Cifrado- un método para convertir información abierta en información cerrada y viceversa. Utilizado para almacenamiento información importante en fuentes no confiables o transmitiéndolos a través de canales de comunicación no seguros. El cifrado se divide en el proceso de cifrar y descifrar.

Dependiendo del algoritmo de conversión de datos, los métodos de cifrado se dividen en seguridad criptográfica garantizada o temporal.

Dependiendo de la estructura de las claves utilizadas, los métodos de cifrado se dividen en

§ cifrado simétrico: personas no autorizadas pueden conocer el algoritmo de cifrado, pero se desconoce una pequeña parte de la información secreta: la clave, que es la misma para el remitente y el destinatario del mensaje;

§ cifrado asimétrico: los extraños pueden conocer el algoritmo de cifrado, y posiblemente la clave pública, pero no la clave privada, que sólo conoce el destinatario.

Existen las siguientes primitivas criptográficas:

§ Sin llave

1. Funciones hash

2. Permutaciones unilaterales

3. Generadores números pseudoaleatorios

§ Circuitos simétricos

1. Cifrados (bloque, flujo)

2. Funciones hash

4. Generadores de números pseudoaleatorios

5. Primitivas de identificación

§ Circuitos asimétricos

3. Primitivas de identificación

Cifrar datos en disco
El sistema Zserver es un medio para proteger la información confidencial almacenada y procesada en servidores corporativos mediante el cifrado de datos en el disco. Zserver funciona según el principio de cifrado de partición "transparente" discos duros. El sistema automáticamente, en línea, cifra la información cuando la escribe en el disco y la descifra cuando la lee. Esto garantiza que los datos se almacenen en el disco en forma cifrada y no se puedan utilizar sin la clave de cifrado, incluso si se elimina el servidor o el medio. El sistema Zserver proporciona cifrado de archivos y carpetas en el disco, así como de todo información oficial- tablas de ubicación de archivos, etc. Por lo tanto, el sistema Zserver no solo protege de manera confiable los datos confidenciales, sino que también oculta el hecho mismo de su presencia a los extraños. La información de las unidades protegidas se almacena en forma cifrada y solo se puede acceder a ella cuando el administrador de la red otorga al usuario los permisos adecuados. Los derechos de acceso a los discos protegidos se establecen mediante el sistema operativo. El cifrado de archivos y carpetas en el disco lo realiza el controlador del software. Las claves de cifrado del disco se ingresan cuando el servidor arranca desde una tarjeta inteligente protegida con PIN. Sin conocer el código PIN, no podrá utilizar la tarjeta inteligente. Tres intentos entrada incorrecta El código PIN bloqueará la tarjeta. Una tarjeta inteligente solo es necesaria cuando se conectan medios seguros y no es necesaria durante el funcionamiento. Si reinicia el servidor sin una tarjeta inteligente, no se podrá acceder a los discos protegidos. El sistema Zserver brinda la capacidad de ingresar claves de cifrado de forma remota y administrar el sistema desde cualquier puesto de trabajo red local, o a través de Internet.

Actualmente se han desarrollado sistemas Zserver que ejecutan lo siguiente: sistemas operativos.

: Windows 2000/XP/2003/2008 (32 y 64 bits); Linux con kernel 2.6.x.

Parámetros del algoritmo

Existen muchos (al menos dos docenas) de algoritmos de cifrado simétrico, cuyos parámetros esenciales son:

§ durabilidad

§ longitud de la clave

§ número de rondas

§ longitud del bloque procesado

§ complejidad de la implementación de hardware/software

§ complejidad de la conversión

[Algoritmos comunes

§ AES Estándar de cifrado avanzado) - Estándar de cifrado estadounidense

§ GOST 28147-89 - estándar nacional de cifrado de datos

§DES Estándar de cifrado de datos) - estándar de cifrado de datos en EE. UU. hasta AES

§ 3DES (Triple-DES, triple DES)

§ RC6 (Cifrado Rivest)

§ IDEA Algoritmo de cifrado de datos internacional)

§ SEED: estándar coreano de cifrado de datos

clave pública, señaló que este requisito niega toda la esencia de la criptografía, es decir, la capacidad de mantener el secreto universal en las comunicaciones.

La segunda tarea es la necesidad de crear mecanismos que hagan imposible reemplazar a cualquiera de los participantes, es decir necesario firma digital. Cuando las comunicaciones se utilizan para una amplia gama de fines, como fines comerciales y privados, los mensajes y documentos electrónicos deben tener el equivalente a una firma contenida en documentos en papel. Es necesario crear un método en el que todos los participantes estén convencidos de que mensaje de correo electrónico fue enviado por un participante específico. Este es un requisito más estricto que la autenticación.

Diffie y Hellman lograron resultados significativos al proponer una forma de resolver ambos problemas que es radicalmente diferente de todos los enfoques anteriores del cifrado.

Consideremos primero características comunes algoritmos de cifrado con una clave pública y requisitos para estos algoritmos. Determinemos los requisitos que debe cumplir un algoritmo que utiliza una clave para el cifrado y otra clave para el descifrado, y es computacionalmente imposible determinar la clave de descifrado conociendo sólo el algoritmo de cifrado y la clave de cifrado.

Además, algunos algoritmos, como RSA, tienen la siguiente característica: cada una de las dos claves se puede utilizar tanto para cifrar como para descifrar.

Primero consideraremos algoritmos que tienen ambas características y luego pasaremos a algoritmos de clave pública que no tienen la segunda propiedad.

Al describir cifrado simétrico y cifrado de clave pública utilizaremos la siguiente terminología. Clave utilizada en cifrado simétrico, llamaremos clave secreta. Las dos claves utilizadas en el cifrado de clave pública se llamarán clave pública Y clave privada. La clave privada se mantiene secreta, pero la llamaremos clave privada en lugar de clave secreta para evitar confusión con la clave utilizada en cifrado simétrico. La clave privada se indicará con KR y la clave pública con KU.

Supondremos que todos los participantes tienen acceso a las claves públicas de los demás y que cada participante crea localmente las claves privadas y, por lo tanto, no deben distribuirse.

En cualquier momento, un participante puede cambiar su clave privada y publicar la clave pública del par, reemplazando la antigua clave pública.

Diffie y Hellman describen los requisitos que se deben cumplir algoritmo de cifrado con una clave pública.

  1. Es computacionalmente fácil crear un par (clave pública KU, clave privada KR).
  2. Es computacionalmente fácil, dada una clave pública y un mensaje no cifrado M, crear un mensaje cifrado correspondiente:
  3. Es computacionalmente fácil descifrar un mensaje usando la clave privada:

    M = D KR [C] = D KR ]

  4. Es computacionalmente imposible, conociendo la clave pública KU, determinar la clave privada KR.
  5. Es computacionalmente imposible, conociendo la clave pública KU y el mensaje cifrado C, restaurar el mensaje original M.

    Se puede añadir un sexto requisito, aunque no se aplica a todos los algoritmos de clave pública:

  6. Las funciones de cifrado y descifrado se pueden utilizar en cualquier orden:

    M = E KU]

Estos son requisitos bastante fuertes que introducen el concepto. Función unidireccional es una función en la que cada argumento tiene un único valor inverso, mientras que la función en sí es fácil de calcular, pero la función inversa es difícil de calcular.

Normalmente, "fácil" significa que el problema se puede resolver en un tiempo polinómico de la longitud de la entrada. Por lo tanto, si la longitud de entrada es n bits, entonces el tiempo de cálculo de la función es proporcional a n a, donde a es una constante fija. Por tanto, se dice que el algoritmo pertenece a la clase de algoritmos polinomiales P. El término "duro" significa un concepto más complejo. En general, asumiremos que el problema no se puede resolver si el esfuerzo para resolverlo es mayor que el tiempo polinómico del valor de entrada. Por ejemplo, si la longitud de entrada es n bits y el tiempo de cálculo de la función es proporcional a 2n, entonces se considera un problema computacionalmente imposible. Desafortunadamente, es difícil determinar si un algoritmo particular presenta tal complejidad. Además, las visiones tradicionales de la complejidad computacional se centran en la complejidad del peor de los casos o del caso promedio de un algoritmo. Esto es inaceptable para la criptografía, que requiere la imposibilidad de invertir una función para todos o casi todos los valores de entrada.

Volvamos a la definición. función unilateral con trampilla, que, como función unidireccional, es fácil de calcular en una dirección y difícil de calcular en la dirección opuesta hasta que algún información adicional. Con esta información adicional se puede calcular la inversión en tiempo polinómico. De este modo, función unidireccional con trampilla pertenece a la familia funciones unidireccionales fk tal que

Vemos que el desarrollo de un algoritmo de clave pública particular depende del descubrimiento de la correspondiente función unilateral con trampilla.

Criptoanálisis de algoritmos de clave pública.

Como en el caso cifrado simétrico, algoritmo de cifrado con una clave pública es vulnerable a un ataque frontal. La contramedida es estándar: utilice teclas grandes.

Un criptosistema de clave pública utiliza ciertos valores no invertibles. funciones matemáticas. La complejidad de calcular tales funciones no es lineal con el número de bits de la clave, sino que aumenta más rápido que la clave. Por lo tanto, el tamaño de la clave debe ser lo suficientemente grande como para que un ataque de fuerza bruta sea poco práctico, pero lo suficientemente pequeño como para permitir un cifrado práctico. En la práctica, el tamaño de la clave es tal que un ataque de fuerza bruta no es práctico, pero la velocidad de cifrado resultante es lo suficientemente lenta como para que el algoritmo se utilice con fines generales. Por lo tanto, el cifrado de clave pública actualmente se limita principalmente a aplicaciones de firma y administración de claves que requieren el cifrado de un pequeño bloque de datos.

Otra forma de ataque es encontrar una manera de calcular la clave privada conociendo la clave pública. Es imposible demostrar matemáticamente que este formulario Los ataques están excluidos para un algoritmo de clave pública específico. Por lo tanto, cualquier algoritmo, incluido el ampliamente utilizado algoritmo RSA, es sospechoso.

Finalmente, existe una forma de ataque específica de la forma en que se utilizan los sistemas de clave pública. Este es un probable ataque de mensaje. Por ejemplo, supongamos que el mensaje que se envía consta únicamente de una clave de sesión de 56 bits para un algoritmo de cifrado simétrico. Un adversario puede cifrar todas las claves posibles utilizando la clave pública y puede descifrar cualquier mensaje que coincida con el texto cifrado transmitido. Por lo tanto, independientemente del tamaño de la clave del esquema de clave pública, el ataque equivale a un ataque de fuerza bruta en el sistema de 56 bits. clave simétrica. La defensa contra tal ataque es agregar una cierta cantidad de bits aleatorios a mensajes simples.

Usos básicos de los algoritmos de clave pública

Los principales usos de los algoritmos de clave pública son el cifrado/descifrado, la creación y verificación de firmas y el intercambio de claves.

Cifrado con una clave pública consta de los siguientes pasos:


Arroz. 7.1.

  1. El usuario B crea un par de claves KU by KR b que se utilizan para cifrar y descifrar los mensajes transmitidos.
  2. El usuario B pone a disposición su clave de cifrado de alguna manera confiable, es decir, clave pública KU b . La clave privada emparejada KR b se mantiene en secreto.
  3. Si A quiere enviar un mensaje a B, lo cifra utilizando la clave pública KU b de B.
  4. Cuando B recibe el mensaje, lo descifra utilizando su clave privada KR b. Nadie más podrá descifrar el mensaje, ya que sólo B conoce esta clave privada.

Si el usuario (sistema final) almacena de forma segura su clave privada, nadie podrá espiar los mensajes transmitidos.

Crear y verificar una firma consta de los siguientes pasos:


Arroz. 7.2.
  1. El usuario A crea un par de claves KR A y KU A, que se utilizan para crear y verificar la firma de los mensajes transmitidos.
  2. El usuario A hace que su clave de verificación esté disponible de alguna manera confiable, es decir,

(IMPERMEABLE). Cuando se utiliza el mismo algoritmo, el resultado del cifrado depende de la clave. Para los algoritmos criptográficos modernos y potentes, la pérdida de una clave hace prácticamente imposible descifrar la información.

Para los algoritmos simétricos modernos (AES, CAST5, IDEA, Blowfish, Twofish), la principal característica de la solidez criptográfica es la longitud de la clave. Se considera cifrado con claves de 128 bits o superiores fuerte, ya que descifrar información sin clave requiere años de potentes supercomputadoras. Para algoritmos asimétricos basados ​​en problemas de teoría de números (problema de factorización - RSA, problema de logaritmo discreto - Elgamal), debido a sus características, la longitud mínima de clave confiable es actualmente de 1024 bits. Para algoritmos asimétricos basados ​​en el uso de la teoría de la curva elíptica (ECDSA, GOST R 34.10-2001, DSTU 4145-2002), la longitud mínima de clave confiable es 163 bits, pero se recomiendan longitudes de 191 bits o más.

Clasificación clave

Las claves criptográficas varían según los algoritmos en los que se utilizan.

  • Claves secretas (simétricas)- claves utilizadas en algoritmos simétricos (cifrado, generación de códigos de autenticidad). La propiedad principal de las claves simétricas: para realizar transformaciones criptográficas directas e inversas (cifrado/descifrado, cálculo MAC/verificación MAC), debe utilizar la misma clave (o la clave para la transformación inversa se puede calcular fácilmente a partir de la clave para la transformación directa y viceversa). Por un lado, esto garantiza una mayor confidencialidad de los mensajes, por otro lado, crea problemas de distribución de claves en sistemas con un gran número usuarios.
  • Teclas asimétricas- claves utilizadas en algoritmos asimétricos (cifrado, firma digital); en términos generales, son par de claves, ya que constan de dos claves:
    • clave privada(es:Clave privada): una clave que sólo conoce su propietario. Sólo el hecho de que el usuario mantenga en secreto su clave privada garantiza que un atacante no pueda falsificar un documento y una firma digital en nombre del certificador.
    • Clave pública(es:Clave pública): una clave que se puede publicar y se utiliza para verificar la autenticidad de un documento firmado, así como para evitar el fraude por parte del certificador al negarse a firmar el documento. La clave pública de la firma se calcula como el valor de alguna función de la clave privada, pero el conocimiento de la clave pública no permite determinar la clave privada.

La propiedad principal de un par de claves es que la clave pública se puede calcular fácilmente utilizando la clave secreta, pero utilizando una clave pública conocida es casi imposible calcular la clave secreta. En algoritmos firma EDS generalmente se coloca en la clave privada del usuario y se verifica en la clave pública. De esta manera, cualquiera puede comprobar si un usuario determinado realmente firmó una firma determinada. Así, los algoritmos asimétricos garantizan no sólo la integridad de la información, sino también su autenticidad. Con el cifrado, por el contrario, los mensajes se cifran mediante una clave pública y se descifran mediante una clave secreta. Por tanto, sólo el destinatario y nadie más (incluido el remitente) puede descifrar el mensaje. El uso de algoritmos asimétricos elimina el problema de distribuir las claves de usuario en el sistema, pero plantea nuevos problemas: la fiabilidad de las claves recibidas. Estos problemas se resuelven con mayor o menor éxito en el marco de una infraestructura de clave pública (PKI).

  • Claves de sesión (sesión)- claves generadas entre dos usuarios, generalmente para proteger un canal de comunicación. Normalmente la clave de sesión es secreto compartido- información que se genera en base a la clave secreta de una parte y la clave pública de la otra parte. Existen varios protocolos para generar claves de sesión y secretos compartidos, entre ellos, en particular, el algoritmo Diffie-Hellman.
  • Conectar- información de clave generada durante el funcionamiento de un algoritmo criptográfico basado en una clave. A menudo, las subclaves se generan basándose en un procedimiento especial de expansión de claves.

Ver también


Fundación Wikimedia.

2010.

    Vea qué es “Clave (criptografía)” en otros diccionarios:

    Clave: Wikcionario tiene un artículo "clave" Clave, manantial un lugar donde el agua subterránea fluye hacia la superficie de la tierra ... Wikipedia

    La llave es una herramienta para abrir una cerradura. Llave, llave ajustable, herramienta para desatornillar uniones atornilladas. Información clave (criptografía) utilizada por un algoritmo para transformar un mensaje al cifrar o descifrar. Clave... ... Wikipedia

    Este término tiene otros significados, ver Clave (significados). Llave en el ojo de la cerradura B... Wikipedia - (del griego, de kryptos secret y grapho escribo). Escritura en signos convencionales (cifrados), conocidos sólo por aquellas personas que reciben una clave especial para su lectura. Diccionario de palabras extranjeras incluidas en el idioma ruso. Chudinov A.N., 1910. CRIPTOGRAFÍA... ...

    Diccionario de palabras extranjeras de la lengua rusa.

    Artículo principal: Historia de la criptografía Fotocopia del telegrama de Zimmerman Durante la Primera Guerra Mundial, la criptografía y, en particular, el criptoanálisis, se convirtieron en una de las herramientas de guerra. Hechos conocidos... Wikipedia

    Contenido 1 Imperio Ruso 1.1 Ejército 1.2 Armada 2 Imperio Británico 3 F ... Wikipedia

    CRIPTOGRAFÍA- (del griego “cryptos” secreto, oculto) el arte de escribir códigos secretos y su descifrado. De ahí proviene el concepto de “criptograma”, es decir, algo escrito en un código o en otra forma que sólo es comprensible para quienes tienen la clave de lo que está escrito. EN… … Símbolos, signos, emblemas. Enciclopedia

    Criptografía de clave pública/CRIPTOGRAFÍA DE CLAVE PÚBLICA- desarrollado por Whitfielf Diffi. Utiliza un par de claves y cada par tiene las siguientes propiedades: cualquier cosa cifrada por una de ellas se puede descifrar con la otra; tener una clave de un par, llamada pública... Diccionario Por sociedad de la información y la nueva economía

    Este término tiene otros significados, ver Clave. La llave está en el ojo de la cerradura... Wikipedia

El objetivo principal del uso de certificados SSL es cifrar los datos transmitidos al servidor desde el cliente y al cliente desde el servidor. Para garantizar la seguridad de dicha conexión navegadores modernos utilice el algoritmo TLS basado en certificados X.509. Este algoritmo utiliza cifrado asimétrico para crear una clave de sesión para cifrado simétrico. Este último se utiliza directamente para la transferencia de datos después de establecer una conexión segura.

¿Qué es una clave en criptografía?

Una clave en criptografía es información secreta, que se utiliza en criptografía para cifrar y decodificar mensajes, colocar una firma digital y verificarla, calcular códigos de autenticidad de mensajes, etc. La fiabilidad de una clave está determinada por la llamada longitud de la clave, que se mide en bits. La longitud de clave estándar para los certificados SSL es de 128 o 256 bits. La longitud de la clave del certificado raíz no debe ser inferior a 4096 bits. Todas las autoridades de certificación con las que cooperamos proporcionan certificados SSL con una clave que cumple totalmente con los estándares modernos:

Clave pública y privada en cifrado asimétrico.

Usos del cifrado asimétrico par de llaves: abierto (clave pública) Y cerrado, también llamado secreto (clave privada). Las claves pública y privada en este caso permiten que el algoritmo criptográfico cifre y descifre el mensaje. En este caso, los mensajes cifrados con una clave pública sólo se pueden descifrar utilizando la clave privada. La clave pública se publica en el certificado del propietario y está disponible para el cliente que se conecta, y la clave privada la almacena el propietario del certificado. Las claves pública y privada están interconectadas por dependencias matemáticas, por lo que es imposible seleccionar una clave pública o privada en un corto tiempo (el período de validez del certificado). Es por eso que el período máximo de validez de los certificados SSL con mayor nivel de protección es siempre menor. Por lo tanto, puedes realizar pedidos por un máximo de 2 años. Al mismo tiempo, al solicitar un nuevo certificado SSL o renovar uno antiguo, es importante generar una nueva solicitud CSR, ya que su clave privada está vinculada a ella y al emitir un nuevo certificado SSL, es mejor actualizarlo. El cliente interactúa con el servidor de la siguiente manera:
  1. el navegador cifra la solicitud según la clave pública y la envía al servidor;
  2. el servidor, utilizando la clave privada, descifra el mensaje recibido;
  3. el servidor cifra su identificador digital con una clave privada y la transmite al cliente;
  4. el cliente comprueba el identificador del servidor y transmite el suyo;
  5. después de la autenticación mutua, el cliente cifra la clave de sesión futura con una clave pública y la transmite al servidor;
  6. Todos los mensajes posteriores que se transmiten entre el cliente y el servidor se firman con la clave de sesión y se cifran mediante una clave pública y privada.
Esto garantiza varios puntos de seguridad:
  • se elimina la posibilidad de fuga de información: si se intercepta, no se puede descifrar;
  • el servidor confirma su dirección e identificador, se elimina la posibilidad de redirección a otro sitio (phishing);
  • al cliente se le asigna una sesión individual, lo que le permite distinguirse de otros clientes de forma más fiable;
  • Una vez que se establece una sesión segura, todos los mensajes se cifran utilizando la ID del cliente y no pueden pasar desapercibidos ni modificarse.

En general, el cifrado de clave pública-privada puede considerarse como un caso en el que se utilizan dos claves: una sólo puede cerrarse y la otra sólo puede abrirse. Si el caso se cerró con la primera llave, sólo la segunda podrá abrirlo; si se cerró con la segunda, será necesaria la primera para abrirlo; Esto se puede ver claramente en el diagrama de arriba.

gastrogurú 2017