Wie funktioniert die 2-Faktor-Authentifizierung?

Ich versuche gerade die Funktionsweiße von 2 Faktor Autorisierung zu verstehen.
Die Idee dahinter, das man einen weiteren Faktor nutzt um mehr Sicherheit zu haben ist klar.

Nur wie funktioniert das technisch im Hintergrund?

Wenn ich einen Hardware Token (Yubikey oder so) habe. Welches Geheimnis hat dieser und
woher weiß die Server Anwendung davon bzw. wie kann sie diese validieren?

Auf irgendeine weiße muss doch zuvor schon etwas ausgetauscht werden damit nachher klar ist
wie z.B. auf eine Challeng-Response anfrage geantwortet werden muss (oder hald
bei vergleichbaren verfahren.)

PS: Ich verstehe was der Unterschied zwischen Symetrischer/Asymetrischer
Verschlüsselung ist oder auch das Private-Public Key verfahren – wenn das beim
erklären hilft.

Was ist am Versand einer SMS als 2.Faktor als technischer Hintergrund interessant? Wer immer sich dazu anmeldet muss halt seine Telefonnummer hinterlegen, das ist alles.

Was ist der technische Hintergrund an einem TAN-Generator? Der liest halt den Chip einer EC-Karte aus und vergleicht dessen Antworten mit dem, was er über einen Barcode vom Bankenanbieter bekommt.

Mit Verschlüsselung hat das erstmal gar nichts zu tun. Es geht jedesmal nur darum, dass zwei Gegenstände/Geräte beteiligt sein müssen. Weil das schwerer zu klauen ist als einfach nur ein paar Daten/Zahlen/Wörter.

Hallo,

die Basis ist hier ein gemeinsamer, geheimer Schlüssel. Dieser wird mit der aktuellen Uhrzeit kombiniert und darüber ein Hash gebildet. So erhält man ein Einmalpasswort.

Gruß,
Steve

SMS ka ist auch einfach zu verstehen - war aber auch nicht das was ich meinte, sondern die HW basierten.

Wasfür ein TAN Generator macht das?
Wo ließt der bitte eine EC Karte aus, und wo kommt der Barcode daher und noch viel mehr WIE stimmen den jetzt plötzlich die beiden überein?

Was der Sinn ist verstehe ich aber was dahinter liegt nicht.

die Basis ist hier ein gemeinsamer, geheimer Schlüssel. Dieser wird mit
der aktuellen Uhrzeit kombiniert und darüber ein Hash gebildet. So
erhält man ein Einmalpasswort.

Und woher kommt dieser schlüssel?
Wenn ich einen Hardware Token habe muss der ja schon eingebaut sein.
Woher kennt den jetzt aber die Server Anwendung?
(OTP und Hashing ist mir klar)

Bei Hardware-Tokens ist der fest eingebaut.

Das bringt wieder neue Probleme:

Gruß,
Steve

Ja genau und weiter?

SecurID ist jetzt so ein Beispiel… Aus dem verlinkten Text:

Der SecurID-Token in Form eines Schlüsselanhängers generiert minütlich
einen Zahlencode, den der Server vorhersagen und somit prüfen kann.

Die Frage ist jetzt aber wie macht den der Server das?

Du teilst den Key mit dem Server auf einem sicheren Kanal.

Damit verfügen Token und Server über die selbe Datenbasis.
Wenn die Uhren synchron sind (das ist wichtig) liefert die Hash-Funktion auf beiden Seiten das gleiche Ergebnis und somit weiß der Server, das du den Token besitzt.

Gruß,
Steve

1 Like

Ich persönlich nutze das ChipTAN-Verfahren. Beschreibung, wie’s geht:
https://www.sparkassen-shop.de/home/detail/tan-optimus-comfort-schwarz---matt,4519/#attachment