Kann ich einen Hash-Algorithmus basierend auf dem Anfangsschlüssel und dem Ausgabe-Hash identifizieren?

7

Wenn ich sowohl den Anfangsschlüssel als auch den erzeugten Hash habe, gibt es eine Möglichkeit zu bestimmen, welcher Hash-Algorithmus verwendet wurde?

Zum Beispiel:

  • Schlüssel : höher
  • Hash : df072c8afcf2385b8d34aab3362020d0
  • Algorithmus :?
Chrisc 18.09.2009, 03:11
quelle

5 Antworten

3

Nun, da es eine endliche Anzahl populärer Hash-Algorithmen gibt, ist vielleicht das, was Sie vorschlagen, nicht so lächerlich.

Aber angenommen, ich habe dich das gefragt:

  

Wenn ich einen Eingang und einen Ausgang habe, kann   Ich bestimme die Funktion?

Im Allgemeinen , nein, Sie können die inneren Funktionen einer Funktion nicht einfach dadurch ermitteln, dass Sie eine Eingabe und eine Ausgabe ohne zusätzliche Informationen kennen.

%Vor%     
Dan Tao 18.09.2009, 13:28
quelle
13

Wenn Sie die Länge betrachten, können Sie entscheiden, welche Algorithmen Sie ausprobieren möchten. MD5 und MD2 erzeugen 16-Byte-Digests. SHA-1 erzeugt 20 Bytes Ausgabe. Usw. Führen Sie dann jeden Hash auf der Eingabe aus und prüfen Sie, ob er mit der Ausgabe übereinstimmt. Wenn ja, das ist dein Algorithmus.

Natürlich, wenn mehr als der "Schlüssel" gehashed wurde, müssen Sie das auch wissen. Und abhängig von der Anwendung werden Hashes oft iterativ angewendet. Das heißt, die Ausgabe des Hash wird erneut gehasht, und diese Ausgabe wird ... oft tausende Male gehashed. Wenn Sie also im Voraus wissen, wie viele Iterationen durchgeführt wurden, kann das ebenfalls helfen.

Es gibt nichts außer der Länge in der Ausgabe eines kryptografischen Hashes, die helfen würde, den Algorithmus einzugrenzen, der es erzeugt hat.

    
erickson 18.09.2009 03:19
quelle
3
  1. Der Hash scheint nur hexadezimale Zeichen zu enthalten (jedes Zeichen steht für 4 Bits)

  2. Gesamtanzahl ist 32 Zeichen - & gt; Dies ist ein Hash mit 128 Bit Länge.

  3. Standard-Hashing-Algorithmen, die diesen Spezifikationen entsprechen, sind: haval, md2, md4, md5 und ripemd128.

  4. Höchste Wahrscheinlichkeit ist, dass MD5 verwendet wurde.

  5. md5 ("höher")! = df072c8afcf2385b8d34aab3362020d0

  6. Höchste Wahrscheinlichkeit ist, dass etwas Salz verwendet wurde.

  7. Höchste Wahrscheinlichkeit bleibt immer noch MD5.

Starbuck3000 18.09.2009 13:17
quelle
2

Entsprach keiner der gängigen Hash-Algorithmen :

  

Ссылка

Vielleicht wurde salt vor dem Hash-Vorgang hinzugefügt ...

    
Amro 18.09.2009 03:32
quelle
0

Nicht anders, als einen Haufen auszuprobieren, den Sie kennen, und zu sehen, ob ein Treffer gefunden wurde.

    
Sophie Alpert 18.09.2009 03:13
quelle

Tags und Links