803 Shares 3903 views

RSA-cifrado. Descripción y aplicación del algoritmo RSA

RSA-cifrado es uno de los primeros sistemas de cifrado de clave pública prácticos que se utiliza ampliamente para la transmisión segura de datos. Su principal diferencia con respecto a los servicios similares es que la clave de cifrado está abierto y diferente de la clave de descifrado, que se mantiene en secreto. La tecnología RSA , esta asimetría se basa en la dificultad práctica de factorizar la reproducción de dos números primos grandes (el problema de la factorización).

Historia de la creación

RSA El nombre se compone de las letras iniciales de los apellidos Rivest, Shamir y Adleman – los científicos que describió por primera vez públicamente estos algoritmos de cifrado en 1977. Klifford Koks, un matemático Inglés, que trabajaba para los servicios de inteligencia británicos, los primeros en desarrollar un sistema equivalente en el año 1973, pero no fue desclasificado hasta 1997

RSA usuario crea y publica la clave pública basado en dos números primos grandes junto con el valor auxiliar. Los números primos deben ser mantenidos en secreto. Cualquiera puede usar la clave pública para cifrar un mensaje, pero si es lo suficientemente grande, entonces sólo alguien con el conocimiento de los números primos puede descodificar el mensaje. divulgación de cifrado RSA es conocido como el principal problema hoy en día es una discusión abierta acerca de cómo un mecanismo fiable.

algoritmo RSA es relativamente lento, por lo que no es tan ampliamente utilizado para directamente cifrar el usuario. En la mayoría de los casos, este método se utiliza para la transmisión en la clave compartida cifrada para una clave de cifrado simétrica, que a su vez puede llevar a cabo operaciones de cifrado y descifrado a granel a una velocidad mucho mayor.

Cuando había un sistema de cifrado en su forma actual?

La idea de la clave criptográfica asimétrica atribuye a Diffie y Hellman, que publicó el concepto en 1976, la introducción de la firma digital, y tratando de aplicar la teoría de los números. Su formulación utiliza una clave secreta compartida generada a partir de un cierto número de exponenciación módulo un número primo. Sin embargo, dejaron abierta la cuestión de la realización de esta función, ya que los principios de la factorización no se entienden bien en el momento.

Rivest, Adi Shamir y Adleman en el MIT han hecho varios intentos en los últimos años para crear una función de un solo sentido que es difícil de descifrar. Rivest y Shamir (como los informáticos) han propuesto muchas funciones potenciales, mientras que Adleman (como las matemáticas) para buscar "puntos débiles" del algoritmo. Ellos utilizan una gran cantidad de enfoques y, finalmente, desarrollar un sistema final, ahora conocido como RSA en abril de 1977.

firma electrónica y la clave pública

firma digital o firma electrónica, es una parte integral de los tipos de documentos electrónicos. Se forma en un cierto cambios de datos criptográficos. Con este atributo posible comprobar la integridad del documento, su confidencialidad, así como para determinar quién es el propietario. De hecho, una alternativa a la firma estándar común.

Este sistema de cifrado (RSA-encriptado) ofrece la clave pública, a diferencia simétrica. Su principio de funcionamiento es que se utilizan las dos llaves diferentes – cerrado (cifrada) y al aire libre. El primero se utiliza para generar la firma digital y luego ser capaz de descifrar el texto. En segundo lugar – para el cifrado real y la firma electrónica.

El uso de firmas para comprender mejor el cifrado RSA, un ejemplo de que se puede reducir como un secreto normal "cerrado de miradas indiscretas," el documento.

¿Cuál es el algoritmo?

algoritmo RSA consiste en cuatro pasos: la generación de claves, distribución, cifrado y descifrado. Como ya se ha mencionado, RSA-cifrado incluye una clave pública y una clave privada. Al aire libre puede ser conocida por todos y se utiliza para cifrar mensajes. Su esencia radica en el hecho de que los mensajes cifrados con la clave pública sólo pueden ser descifrados en un período determinado de tiempo usando una clave secreta.

Por razones de seguridad, los números enteros a ser elegidos al azar y sean idénticos en tamaño, pero difieren en longitud por unos números para hacer la factorización más difícil. mismo número misma se puede encontrar de manera efectiva mediante una prueba en su simplicidad, por lo que el cifrado de la información debe necesariamente ser complicado.

La clave pública consiste en el módulo y exponente público. unidad interior y consiste en una figura privada, que debe mantenerse en secreto.

cifrado RSA de archivos y debilidades

Sin embargo, hay una serie de simples mecanismos RSA piratería. Al cifrar con valores bajos y pequeños de números de código se puede abrir fácilmente, si el texto cifrado raíz de la selección sobre los números enteros.

Dado que el RSA-cifrado es un algoritmo determinista (es decir, no tiene componente aleatorio), un atacante puede lanzar con éxito el texto ataque abierto seleccionado contra el criptosistema mediante la encriptación de textos planos probables bajo la clave pública y los controles de si son iguales texto cifrado. Semánticamente sistema criptográfico seguro es llamado en el caso de que un atacante no puede distinguir entre los dos cifrado entre sí, incluso si él conoce los textos pertinentes en la forma expandida. Como se describió anteriormente, RSA otros servicios sin relleno no es semánticamente seguro.

algoritmos adicionales para el cifrado y la protección

Para evitar los problemas anteriores, en la aplicación práctica de RSA son por lo general se inserta en algún tipo de relleno estructurado, aleatorizado antes del cifrado. Esto asegura que el contenido no se encuentra dentro de la gama de textos planos inseguros, y que este mensaje no puede ser resuelto por la selección al azar.

Criptosistema RSA Security y el cifrado basado en dos problemas matemáticos: el problema de factorizar números grandes y el problema real RSA. La revelación completa del texto cifrado y firma en el RSA se considera inadmisible en el supuesto de que ambos de estos problemas no se pueden resolver de manera colectiva.

Sin embargo, con la posibilidad de recuperar los factores primos, un atacante puede calcular el exponente secreto de la clave pública y luego descifrar el texto utilizando el procedimiento estándar. A pesar de que hoy en día ningún método existente para factorizar enteros grandes en un equipo clásico no se puede encontrar, no se ha demostrado que no existe.

automatización

La herramienta, llamada Yafu, se puede utilizar para optimizar el proceso. Automatización en YAFU es una función avanzada que combina algoritmos de factorización en la metodología intelectual y adaptativo que reduce al mínimo el tiempo para encontrar los factores de ingreso de números arbitrarios. La mayoría de las implementaciones de multiproceso algoritmo que permite Yafu pleno uso de multi o muchos procesadores de múltiples núcleos (incluyendo SNFS, SIQS y ECM). En primer lugar, se controla mediante la herramienta de línea de comandos. El tiempo de búsqueda de factor de Yafu cifrado usando un ordenador convencional, puede reducirse a segundos 103.1746. La herramienta procesa el binario capacidad de 320 bits o más. Este es un software muy complejo que requiere una cierta cantidad de conocimientos técnicos para instalar y configurar. Por lo tanto, RSA-cifrado puede ser vulnerable C.

Los intentos de hacking en los últimos tiempos

En 2009, Bendzhamin Mudi utilizando la clave RSA-512 bits estaba trabajando en descifrar kriptoteksta durante 73 días, utilizando el software sólo es bien conocido (GGNFS) y el promedio de escritorio (de doble núcleo Athlon 64 a 1900 MHz). Como se muestra por la experiencia, se requiere un poco menos de 5 GB de disco y alrededor de 2,5 gigabytes de memoria para el proceso de "tamizar."

A partir de 2010, el número más grande se factoriza RSA 768 bits de largo (232 dígitos decimales, o RSA-768). Su divulgación duró dos años en varios cientos de ordenadores a la vez.

En la práctica, las claves RSA son largos – por lo general de 1024 a 4096 bits. Algunos expertos creen que las claves de 1024 bits puede no ser fiable en un futuro próximo o incluso más tiempo puede ser violada atacantes muy bien financiados. Sin embargo, pocos podrían argumentar que las claves de 4096 bits también pueden ser revelados en un futuro próximo.

perspectivas

Por lo tanto, por regla general, se asume que RSA es seguro si los números son lo suficientemente grandes. Si el número de la base de 300 bits o más corto, y la firma digital de texto cifrado se puede descomponer en unas pocas horas en un ordenador personal utilizando el software ya está disponible en el dominio público. Una clave de longitud 512 bits, como se muestra, se pueden abrir ya en 1999, con el uso de unos pocos cientos de ordenadores. Hoy en día es posible en unas pocas semanas utilizando un hardware disponible públicamente. Así, es posible que en buduschembudet fácilmente revelada RSA-encriptada en los dedos, y el sistema se convertirá irremediablemente obsoleto.

Oficialmente en 2003, fue puesto en duda la seguridad de las claves de 1024 bits. Actualmente, se recomienda tener una longitud mínima de 2048 bits.