Longitud de frase de contraseña codificada en UTF8 mínima SHA256'd no almacenada en ningún lugar

1

Para una frase de contraseña codificada en UTF8 y luego SHA256'd, ¿cuál es la longitud mínima para lograr un resultado prácticamente sin colisiones?

La implementación es para una semilla criptomoneda ed25519 de 32 bytes, por lo tanto, no será almacenada en ningún lugar por la implementación.

    
pregunta 09.04.2014 - 20:12
fuente

1 respuesta

1

Por supuesto que me estremezco ante la idea de un simple hashing sobre una frase de contraseña, pero supongamos que en realidad está bien en tu configuración.

La respuesta directa a su pregunta es simple: prácticamente , no hay colisiones en SHA-256, independientemente de la longitud de entrada. Si ingresa dos secuencias distintas de bytes (por ejemplo, dos frases de contraseña), obtendrá dos salidas distintas. Matemáticamente, sabemos que las colisiones DEBEN existir (el espacio de entrada SHA-256 es más grande que el espacio de salida), pero no encontramos ninguna todavía, y los mejores métodos conocidos para encontrar colisiones tienen un costo promedio 2 128 , es decir, mucho más de lo que es posible con la tecnología existente.

La longitud de entrada y la codificación no tienen nada que ver con el tema. Cómo imaginó que la longitud de entrada, además la longitud de entrada mínima , o la codificación, tuvo un impacto en las colisiones, es un misterio para mí, así que debo asumir que no se preocupa por SHA -256 colisiones. En su lugar, ¿quizás te preocupa la probabilidad de que dos personas distintas salgan de la (mala) suerte con la misma frase de contraseña? (SHA-256 está allí una pista falsa).

Si esa es su pregunta real, entonces depende del proceso mediante el cual se generan las frases de contraseña, que tiene una relación muy lejana con la longitud de la frase de contraseña. Consulte esta respuesta para detalles sobre cómo calcular la entropía (porque una entropía de " n bits" se traduce aproximadamente en una probabilidad de colisión de aproximadamente t 2 / n , según el problema de cumpleaños ).

    
respondido por el Thomas Pornin 09.04.2014 - 20:44
fuente

Lea otras preguntas en las etiquetas