Pregunta

crypt(text,"k7")

Lo busqué y aparentemente 'K7' es la sal, pero no tengo ni idea de lo que eso significa ni qué tipo de salida vendrá de eso, alguien sabe?

¿Fue útil?

Solución

Desde el cripta página hombre .

  

Descripción

     

crypt () es el cifrado de la contraseña   función. Se basa en los datos   Algoritmo de cifrado estándar con   variaciones destinados (entre otras   cosas) para desalentar el uso de hardware   implementaciones de una clave de búsqueda.

     

clave es contraseña escrita de un usuario.

     

sal es una cadena de dos caracteres elegido   del conjunto [a-zA-Z0-9./]. Esta   cadena se utiliza para perturbar el algoritmo en una de las 4096 maneras diferentes.

Otros consejos

Todas las otras respuestas son correctas, pero hasta ahora nadie ha explicado ¿Por qué es la sal de allí.

Wikipedia tiene una buena página en sales y noreferrer tablas de arco iris , que son la razón principal por la que tienen sales.

Sin sal, la cripta es básicamente una función hash unidireccional. Se necesitaría una contraseña y devolver una versión hash de la contraseña. tablas Rainbow proporcionan un método optimizado para derrotar al "unidireccional" naturaleza de este hash, y retrocediendo la contraseña original.

Si logran obtener las contraseñas hash (a través de alguna base de datos explotar, o el acceso a la /etc/passwd o archivo /etc/shadow), que teóricamente podría conocer una gran cantidad de contraseñas de las personas.

Una sal añade un factor "aleatorio" extra a la mezcla. Es necesario crear una sal al azar y la tienda que en algún lugar (con la contraseña es correcta, pero separado es mejor). Ahora bien, una serie de cuadros del arco iris no es suficiente, se necesita repentinamente 65.536 conjuntos de dichas tablas (en el caso de una sal de dos bytes). La sal también puede mantenerse independiente de la contraseña, la adición de un obstáculo adicional.

La sal también ayuda a prevenir a los usuarios con las mismas contraseñas que parece tener la misma contraseña; la sal se selecciona normalmente al azar, y si las sales son diferentes entonces las contraseñas hash será dramáticamente diferente.

También voy a señalar esta entrada del blog explicando algunos conceptos básicos de contraseña , que me pareció muy informativo.

Como Randolpho señala, es un proceso de hash unidireccional para el texto.

El uso estándar para crypt () es en el almacenamiento de contraseñas. Obviamente, el almacenamiento de la contraseña como serían muy poco aconsejables texto plano. En su lugar, crypt () se utiliza para generar un hash de la contraseña. Al escribir la contraseña, crypt () se aplica a eso, y luego los dos valores hash son comparados.

Esencialmente, la función de crypt () es traducir el texto en un nuevo texto, de la que nunca puede ser recuperado el original, pero que tiene una baja probabilidad de generar el mismo hash para dos claves diferentes.

Wikipedia FTW

En pocas palabras: es unidireccional hashes text

Manual C - Cripta

  

La función de encriptación toma una contraseña, llave, como una cadena, y una matriz de caracteres sal que se describe a continuación, y devuelve una cadena ASCII imprimible que se inicia con otra sal. Se cree que, dada la salida de la función, la mejor manera de encontrar una clave que producirá que la producción es adivinar los valores de clave hasta que se encuentre el valor original de la llave.

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