¿Existe un chile constante en riesgo si un atacante conoce el valor y el hash?

0

Mi aplicación es un juego educativo para escuelas primarias, que no involucra dinero ni nada de valor, por lo que no me preocupa que los atacantes sofisticados tengan algún interés en esto. Sin embargo, me gustaría seguir las mejores prácticas en caso de que alguno de estos códigos termine protegiendo algo atractivo.

La seguridad consiste en valores de hash con un chile constante para producir un hash. En general, los valores son cosas como la identificación del usuario y otra información del estado, y el hash se usa para evitar la manipulación (es decir, por lo que no puede cambiar la identificación del usuario a un valor diferente y acceder a los datos de otra persona).

Por lo tanto, con el tiempo, el atacante tiene acceso a un gran conjunto de información de estado (el hash pre) y el hash, pero no la pimienta. El algoritmo hash también es del lado del servidor y es desconocido (aunque con posibilidades limitadas).

Con este conocimiento, ¿puede un atacante determinar el algoritmo de hash y hash y ser capaz de generar un hash adecuado para cualquier mensaje, rompiendo nuestra seguridad?

    
pregunta Joshua Frank 21.06.2018 - 16:15
fuente

1 respuesta

2

Este podría estar bien dependiendo de la implementación, pero también podría salir mal. Un atacante sería incapaz de recuperar la pimienta (suponiendo que tenga suficiente entropía), y no podría inculcar valores arbitrarios.

Sin embargo, es probable que tu hash salpicado sea vulnerable a un ataque de extensión de longitud . Si un atacante conoce algunos datos y su hash, esto les permitiría adjuntar datos y, al mismo tiempo, poder calcular el nuevo hash como si supieran el pimiento. Para evitar esto, en lugar de usar el secreto como un pimiento, úselo como la clave para un HMAC . Incluso si no está preocupado por los ataques de extensión, esto es deseable, ya que proporciona más propiedades de seguridad sin inconvenientes, y suena como un MAC es lo que realmente buscas.

    
respondido por el AndrolGenhald 21.06.2018 - 16:44
fuente

Lea otras preguntas en las etiquetas