Leicht zu merkende Fingerabdrücke für Daten?

8

Ich muss Fingerabdrücke für RSA-Schlüssel erstellen, die sich die Benutzer merken oder zumindest leicht erkennen können. Folgende Ideen sind mir in den Sinn gekommen:

  • Brechen Sie den SHA1-Hash in Teile von, sagen wir, 4 Bits und verwenden Sie diese als Koordinaten für Bezier-Splines. Zeichnen Sie die Splines und verwenden Sie dieses Bild als Fingerabdruck.
  • Verwenden Sie den SHA1-Hash als Eingabe für einen fraktalen Algorithmus. Das Ergebnis müsste für eine gegebene Eingabe eindeutig sein, d. H. Die Ausgabe kann die Hälfte der Zeit kein ausgefülltes Quadrat sein.
  • Ordnen Sie den SHA1-Hash den Einträgen in einer Wortliste zu (wie sie in Rechtschreibprüfungen oder Passwortlisten verwendet werden). Dies würde eine Passphrase aus echten Wörtern erstellen.
  • Anstelle einer Wortliste verwenden Sie einen anderen großen Datensatz wie Google Maps (ordnen Sie den SHA1-Hash zu, um Koordinaten zu kartografieren und die Kartenregion (en) als Fingerabdruck zu verwenden)

Irgendwelche anderen Ideen? Ich bin mir sicher, dass dies in der einen oder anderen Form implementiert wurde.

    
ApplesOranges 27.08.2010, 19:37
quelle

4 Antworten

5

OpenSSH enthält so etwas unter dem Namen "Visual Host Key". Versuchen Sie Folgendes:

%Vor%

wobei somesshhost eine Maschine ist, auf der ein SSH-Server läuft. Es wird einen "Fingerabdruck" des Serverschlüssels sowohl in hexadezimaler als auch als ASCII-Art-Bild ausgedruckt, das wie folgt aussehen kann:

%Vor%

Oder so:

%Vor%

Anscheinend ist dies von Techniken inspiriert, die in diesem Artikel beschrieben sind. OpenSSH ist Opensource mit einer BSD-ähnlichen Lizenz. Es ist daher wahrscheinlich, dass Sie den Code einfach wiederverwenden können (er scheint in der key.c Datei, Funktion key_fingerprint_randomart() ).

    
Thomas Pornin 30.08.2010 14:30
quelle
2

Zu Element 3 ( Einträge in einer Wortliste ) siehe RFC-1751 - Eine Konvention für menschenlesbare 128-Bit Schlüssel , die das festhält

  

Die Autoren von S / Key haben ein System entwickelt, um das 64-Bit einmalig zu machen   Passwort einfach für die Menschen zu betreten.

     

Ihre Idee war es, das Passwort in eine kleine Zeichenfolge umzuwandeln   Englische Wörter. Englische Wörter sind für Menschen wesentlich einfacher   beide erinnern sich und tippen. Die Autoren von S / Key begannen mit einem   Wörterbuch von 2048 englischen Wörtern, in der Länge von eins bis vier   Figuren. Der von einem 64-Bit-Schlüssel (2 ^ 64) abgedeckte Speicherplatz könnte abgedeckt werden   um sechs Wörter aus diesem Wörterbuch (2 ^ 66) mit Raum für bleiben   Parität. Zum Beispiel ein S / Key-Einmalpasswort mit Hexadezimalwert:

%Vor%      

würde die folgenden sechs englischen Wörter werden:

%Vor%

Sie können auch einen zusammengesetzten Fingerabdruck verwenden, um die Einprägsamkeit zu verbessern, wie englische Wörter, denen ein oder mehrere schlüsselabhängige Bilder folgen (oder vorangehen).

Um das Bild zu generieren, könnten Sie Dinge wie Identicon , Wavatar , MonsterID oder Robo Hash .

Beispiel:

  

     

     

TIDE ITCH SLOW

     

REIN REGELMOTOR

    
Elifarley 22.06.2015 22:28
quelle
0

Ich habe etwas gefunden, das zufällige Kunst genannt wird und aus einem Hash ein Bild generiert. Es gibt eine Python-Implementierung zum Download: Ссылка

Es gibt auch eine Veröffentlichung über die Verwendung von Zufallskunst für die Authentifizierung: Ссылка

Es ist von 1999; Ich weiß nicht, ob diesbezüglich weitere Untersuchungen durchgeführt wurden.

    
ApplesOranges 12.09.2010 00:34
quelle
0

Ihr erster Vorschlag (Zeichnen Sie den Pfad der Splines für alle vier Bytes und füllen Sie sie dann mit der Füllregel ungleich Null aus ) ist genau das, was ich für die Visualisierung in hashblot verwende.

    
Stuart P. Bentley 16.05.2013 06:45
quelle

Tags und Links