Pregunta

¿Cuáles son las diferencias entre SHA1 y RSA? ¿Son sólo diferentes algoritmos o son fundamentalmente (es decir, usado para diferentes cosas) diferente en algún nivel.

¿Fue útil?

Solución

fundamentalmente diferente.

SHA1 es un algoritmo de hash, la cual es una función unidireccional, convirtiendo una entrada de cualquier tamaño en una salida de longitud fija (160 bits en este caso). Una función hash criptográfica es aquél para el que no debería ser posible encontrar dos entradas que da la misma salida, excepto por la fuerza bruta (por ejemplo, con una función de 128 bits que debe necesitar intentar, en promedio, el mensaje 2 ^ 64 para encontrar tal "colisión", debido a algo que se llama la paradoja del cumpleaños -. Google por más)

De hecho, para SHA1 esto ya no es el caso - el algoritmo es (en términos criptográficos al menos) roto ahora, con un ataque de colisión descrito por Xiaoyun Wang y otros que late un ataque de cumpleaños clásico. La familia SHA2 no está roto, y un proceso está en marcha por el NIST para acordar un algoritmo SHA3 o familia de algoritmos.

Editar -. Google ahora han generado y publicado una colisión real SHA1

RSA es un algoritmo de cifrado asimétrico, el cifrado de una entrada en una salida que luego puede ser descifrado (contrastar un algoritmo de hash que no puede ser invertido). Se utiliza una clave diferente para el cifrado (el público) que para el descifrado (la privada). Por lo tanto, esto puede ser utilizado para recibir mensajes cifrados de otros -. puede publicar su clave pública, pero sólo usted con la clave privada puede entonces descifrar los mensajes que han sido cifrados con ella

Si invierte las claves de RSA, que puede ser utilizado para generar una firma digital - cifrando algo con su clave privada, cualquier persona puede descifrar con la clave pública y, si están seguros de la clave pública pertenece a usted, entonces tienen confianza en que usted fue el que cifró el original. Esto se hace normalmente en conjunción con una función hash - que hash de su entrada, entonces cifrar que con su clave privada, dando una firma digital de una longitud fija para su mensaje de entrada

.

Otros consejos

Las respuestas antes de que ya son suficientes explicaciones. Pero creo que esta pregunta sólo porque SHA y RSA menudo salen together.So permítanme explicar por qué.

En primer lugar, tener en cuenta que

RSA no es eficiente, pero es SHA.

Supongamos que descargar Windows 7, y quiere asegurarse de si es original de Windows 7 de Microsoft. Si Microsoft Windows 7 simplemente encripta por RSA, se tarda un tiempo muy largo para hacer eso no es posible estar en absoluto. Por lo que Microsoft utiliza SHA1 en Windows 7 y genera un largo de 128 bits de datos. Y luego Microsoft encripta esta 128 bits de datos a largo con RSA (usar su clave privada).

A continuación, todo lo que necesita hacer es objetivo de que la clave pública es de Microsoft. Y luego usar SHA1 para generar unos 128 bits de datos largos también. Y luego usar la clave pública de RSA para descifrar la firma de Microsoft. A continuación, sólo comparar las dos 128 bits de datos a largo para ver si coinciden.

SHA1 es un algoritmo hash (Documento y firma certificación) mientras RSA es un algoritmo de cifrado / descifrado (Comunicaciones seguras).

Como han comentado otros, son cosas fundamentalmente diferentes que sirven diferentes funciones. RSA se utiliza para codificar la información en una forma aparentemente aleatoria, mientras se utiliza SHA1 para asegurar la integridad del mensaje (es decir, ninguno de los bits han cambiado). En una aplicación de seguridad, que va a utilizar uno o ambos, dependiendo de qué funcionalidad que necesita.

SHA1 es una función hash criptográfica, mientras que RSA es un algoritmo para el cifrado.

Una función hash toma un pedazo de datos y devuelve una cadena de longitud fija. En una función hash criptográfica todas las cadenas de retorno tienen la misma probabilidad. Teniendo en cuenta sólo el número de hash no puede determinar la entrada, ni se puede encontrar otra entrada que da el mismo hash (excpetion con una probabilidad muy pequeña). SHA1 tiene algunos fallos de seguridad.

Un algoritmo para el cifrado da toma un pedazo de datos, pero la salida no es de longitud fija - el cifrado. Dada la salida (el cifrado) puede (si tiene las teclas de la derecha) determinar la entrada.

El Algoritmo (SHA) algoritmo de hash seguro toma un mensaje de menos de 264 bits de longitud y produce un mensaje de 160 bits. El algoritmo es ligeramente más lento que MD5, pero el mensaje más amplio compendio hace que sea más seguro contra la fuerza bruta y ataques de colisión de inversión. El algoritmo especificado en el Secure Hash Standard (SHS, FIPS 180), fue desarrollado por NIST. SHA-1 es una revisión a SHA que fue publicado en 1994; la revisión corrige un defecto inédita en SHA. Su diseño es muy similar a la familia de funciones de hash MD4 desarrollados por Rivest. SHA-1 también se describe en el estándar ANSI X9.30.

RSA es un algoritmo de cifrado de clave pública. Es el primer algoritmo conocido que sea adecuado para su firma, así como el cifrado, y uno de los primeros grandes avances en la criptografía de clave pública. RSA se utiliza ampliamente en protocolos de comercio electrónico, y se cree que es seguras teclas suficientemente largos dadas y el uso de implementaciones-up-hasta la fecha.

La diferencia más notable es que SHA es un algoritmo de cifrado RSA, mientras que es a la vez un cifrado así como algoritmo de firma.

El 8/16/2005 se anunció que es posible encontrar una colisión en el SHA-1 en 2 ^ 63 operaciones. Este resultado se debe a la investigación Profesor Xiaoyun Wang, de la Universidad de Tsinghua en Beijing, junto con los profesores Andrew Yao Yao y Frances. Se extiende el trabajo de Wang, Yin, y Yu, lo que demuestra que la colisión se podía encontrar en 2 ^ 69 operaciones. Lo que esto significa es que es más fácil para una colisión que se produzca en el SCS que en RSA -., Pero sobre todo, no hay dos claves similares nunca se ha encontrado que chocó

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top