arget
Desconectado
Mensajes: 44
|
El MD5 se considera hoy en día critpográficamente roto, no se debe seguir usando. SHA-1 todavía no está del todo rota, no se ha demostrado en la práctica, solo teóricamente, aún así, sigue siendo totalmente desaconsejable usarlo. El mínimo sería SHA-256, sin embargo con los avances en velocidad de cálculo, tampoco se recomienda, para tener la máxima seguridad: SHA-512. Otros algoritmos son BLAKE-512, WHIRLPOOL y el nuevo SHA-3, todos ellos recomendables.
El cifrado del César no se debe usar, tampoco, de todas formas, son dos tipos de cifrados distintos. Existen tres tipos de cifrado. Simétrico, asimétrico y de hash (que no sé si puede considerarse cifrado, pues no suele usar clave a no ser que sea de MAC). En el simétrico cifras y descifras con la misma clave, un ejemplo es el del César, que es enormemente inseguro, uno seguro es el AES (Rijndael), el estándar del gobierno estadounidense para cifrado de informacion clasificada como Secret y Top secret, también está el DES, predecesor de AES, que también se considera inseguro, es preferible la variante que hicieron más adelante, el 3DES, pero sigue siendo notablemente más seguro el AES; en el asimétrico cada parte comunicada consta de dos claves, una pública que distribuye, y una privada que guarda de manera segura, cuando alguien desea enviarle un mensaje lo cifra con la clave pública, cuando el receptor recibe el mensaje cifrado lo descifra con su clave privada, el algoritmo más usado y seguro es RSA, otro sería ElGamal, un protocolo ampliamente usado que permite compatibilidad entre los distintos algoritmos es PGP (patentado en EEUU), o GPG (el mismo pero software libre); por último, las de hash, estas son unidireccionales, es decir, permiten cifrar, pero no puedes descifrarlo -al menos de manera matemática o algorítmica-, tienen el efecto avalancha consistente en la gran diferencia de salidas entre entradas con diferencias de apenas 1 bit, son deterministas, es decir, una entrada siempre tendrá la misma salida en el mismo algoritmo, y su salida es de longitud fija, es decir, dando igual la longitud de la entrada, la salida siempre medirá lo mismo, por ejemplo, MD5 tiene una longitud de 128 bits, aunque le metamos un libro entero, la salida medirá 128 bits. Los algoritmos que te indicaba al comienzo del texto son de hash. Las de hash se utilizan para verificar la integridad de un mensaje o archivo, así para almacenar contraseñas, por ejemplo, google no guarda tu contraseña en texto plano, sino que lo cifra mediante una función hash, cuando te loggeas cifra la contraseña que le entregas y compara el nuevo hash y el que tenía guardado.
¿Alguien podría resolverme la duda de si a una función hash se la puede considerar cifrado? Gracias de antebrazo ;)
|