Hashing, luego encriptando los datos combinados con el hash, usando el hash como la clave [cerrado]

-4

Tengo la siguiente idea para un algoritmo hash:

  • Toma una cadena llamada string .
  • Hash y obtén hash .
  • Inserte (¿uniformemente? ¿aleatoriamente? en un patrón basado en algún valor del hash en sí mismo? ¿algo más complicado de lo que no puedo pensar?) los caracteres de string en hash y obtienen string+hash .
  • Cifre string+hash usando hash como clave

En otras palabras:
encrypt(hash(string), hash(string) + string)

No tengo idea de si esto funciona, o si realmente logra algo en términos de seguridad adicional. De hecho, podría comprometer la seguridad, no lo sé.

¿Es esto algo menos reversible / menos propenso a crear colisiones / mejor de alguna manera que simplemente hash y dejarlo solo?

Todavía debería ser fácil avanzar, porque todas las entradas del usuario son de texto sin formato si lo entiendo correctamente. Pero al insertar los datos reales y luego cifrarlos, ¿no hace eso más difícil extrapolar algo útil del hash descifrado + el lío de la cadena?

¿O utilizar el hash como clave compromete los datos? O (como es probable que sea mucho más probable si esto es válidamente útil), ¿ya existe?

    
pregunta i'm extremely new to this 31.10.2017 - 23:20
fuente

1 respuesta

1

Realmente no sé a qué te refieres con el tercer punto de tu publicación.

Todo lo que haría sería tomarse más tiempo para enredar esencialmente la cadena de una manera complicada. También tomaría más tiempo para que alguien encuentre la cadena del hash a través de la fuerza bruta, pero de nuevo puede lograr el mismo efecto mediante la combinación de una cadena varias veces o simplemente utilizando una función de hash que requiere muchos recursos.

    
respondido por el lolircbot 01.11.2017 - 12:05
fuente

Lea otras preguntas en las etiquetas