¿Qué es SHA??
- Definición corta:
-
El algoritmo hash seguro (SHA) es una función hash criptográfica que toma datos de entrada y produce un resumen o valor hash de tamaño fijo. Está diseñado para ser una función unidireccional., lo que significa que es computacionalmente inviable aplicar ingeniería inversa a los datos de entrada originales del valor hash. Se usa comúnmente en varias aplicaciones de seguridad., incluida la verificación de la integridad de los datos, almacenamiento de contraseña, y firmas digitales.
El termino “SHA” se refiere a un algoritmo hash seguro. Es una versión modificada de MD5 y se utiliza con el fin de codificar datos y certificados.. Los algoritmos hash están diseñados para transformar los datos de entrada en un formato condensado mediante operaciones bit a bit., adiciones modulares, y funciones de compresión. A diferencia de cifrado, que se puede revertir, hash es un proceso unidireccional, lo que significa que una vez que los datos son hash, el resumen de hash resultante no se puede descifrar, excepto a través de métodos exhaustivos de fuerza bruta.
- Definición extendida:
- SHA-1. El algoritmo SHA-1 fue desarrollado en 1995 y produce un resumen hash de 160 bits. Fue ampliamente utilizado durante muchos años, pero ahora se considera débil debido a las vulnerabilidades en su resistencia a colisiones.. Como resultado, su uso está obsoleto en la mayoría de las aplicaciones de seguridad.
- SHA-2. La familia SHA-2 consta de SHA-224, SHA-256, SHA-384, y SHA-512. Estos algoritmos, desarrollado en 2001, proporcionar resúmenes de hash de diferentes tamaños: 224, 256, 384, y 512 pedacitos, respectivamente. SHA-256, en particular, es ampliamente utilizado y considerado seguro para la mayoría de las aplicaciones.
- SHA-3. SHA-3 es la última incorporación a la familia SHA, diseñado como una competencia para seleccionar un nuevo estándar. El algoritmo seleccionado, Keccak, se convirtió en SHA-3 en 2015. Ofrece resúmenes de hash de varios tamaños., incluso 224, 256, 384, y 512 pedacitos. SHA-3 se considera seguro y proporciona una opción alternativa a SHA-2.
El algoritmo hash seguro (SHA) es una familia de funciones hash criptográficas desarrolladas por la Agencia de Seguridad Nacional (NSA) en los Estados Unidos. El objetivo principal de SHA es proporcionar integridad y seguridad de datos generando una salida de tamaño fijo, conocido como valor hash o resumen, de cualquier dato de entrada dado. El valor hash es único para los datos de entrada., lo que significa que incluso un ligero cambio en la entrada dará como resultado una salida significativamente diferente.
Cómo funcionan los algoritmos hash seguros?
Cuando el mensaje inicial se somete a hash SHA-1, el resumen de hash resultante es “06b73bd57b3b938786daed820cb9fa4561bf0e8e.” Si un segundo mensaje, parecido al primero, es hash con SHA-1, el resumen de hash aparecerá como “66da9f3b8d9d83f34770a14c38276a69433a535b.” Este fenómeno se conoce como efecto avalancha., que tiene importancia en la criptografía. Implica que incluso la más mínima alteración en el mensaje de entrada transformará por completo la salida., evitar que los atacantes comprendan el contenido original del resumen hash y determinar si el mensaje fue manipulado durante la transmisión.
También se debe mencionar que los SHA juegan un papel crucial en la detección de modificaciones en el mensaje original.. Al comparar el resumen de hash con el valor de referencia, un usuario puede identificar incluso un cambio de una sola letra, ya que los resúmenes de hash resultantes serán completamente diferentes. Otra característica esencial es su determinismo.. Esto significa que dado el conocimiento de la función hash empleada, cualquier computadora o usuario puede reproducir el mismo resumen hash. La naturaleza determinista de los algoritmos hash es una de las razones por las que todos los certificados SSL en Internet deben ser hash utilizando una función SHA-2..
¿Cuáles son los tipos de algoritmos SHA??
Hay varios tipos de algoritmo hash seguro que se han desarrollado para proporcionar diferentes funciones hash con diferentes tamaños de resumen hash. Estos son los algoritmos SHA comúnmente reconocidos:
Cómo elegir el tipo correcto de algoritmo hash seguro?
La elección de qué algoritmo utilizar depende de los requisitos específicos de la aplicación., como el tamaño de resumen de hash deseado y el nivel de seguridad necesario. En general, se recomienda utilizar algoritmos SHA-2 o SHA-3 para nuevas implementaciones., mientras que SHA-1 se desaconseja debido a sus vulnerabilidades. Se ha fomentado la transición de SHA-1 a SHA-256 en varias industrias y estándares, como Certificados SSL/TLS, para mejorar la seguridad.
Para más definiciones, echa un vistazo a nuestro dedicado Lista de definiciones.