[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FIDO-basierte SSH-Schluessel
[Thread Prev] | [Thread Next]
- Subject: Re: FIDO-basierte SSH-Schluessel
- From: Christian Weisgerber <naddy@xxxxxxxxxxxx>
- Date: Wed, 8 Jun 2022 20:01:53 -0000 (UTC)
- To: uugrn@xxxxxxxxx
On 2022-06-08, Marc Haber <mh+uugrn@xxxxxxxxxxxx> wrote: >> Wenn du die FIDO-Unterstützung von deinem YubiKey nicht verkonfiguriert >> hast, dann erzeugst du einfach einen Schlüssel >> >> $ ssh-keygen -t ecdsa-sk # auch ed25519-sk ab Firmware 5.2.3 > > Gefährdet das meinen PIV-Key auf demselben Yubi-Key oder ist das ein > anderer Key-Slot? Das ist harmlos. Erstens existieren laut Yubico zumindest für die 5er-Modelle getrennte Slots: | The YubiKey 5 Series provides applications for a wide variety of | authentication options: FIDO2, OATH, OpenPGP, OTP, Smart Card, | U2F. The applications are all separate from each other, with | separate storage for keys and credentials. https://docs.yubico.com/hardware/yubikey/yk-5/tech-manual/yk5-apps.html Zweitens wird bei obiger Schlüsselerzeugung überhaupt kein Slot belegt. Tatsächlich ist es üblich, dass FIDO-Geräte eine unbegrenzte(!) Anzahl Schlüssel unterstützen. Ich erklär's, aber man braucht das nicht zu wissen, um FIDO-basierte SSH-Schlüssel sinnvoll anzuwenden. Bei der Schlüsselerzeugung fallen nach FIDO-Abstraktion drei Teile an: 1. Der private Schlüssel, der das Gerät nie verlässt. 2. Der öffentliche Schlüssel, den die Gegenseite bekommt. 3. Der Keyhandle, dessen Format frei ist, der aber dem Gerät für jede Authentisierung übermittelt werden muss, damit es den passenden privaten Schlüssel zuordnen kann. Bei Webauthn bekommt die Gegenseite den Keyhandle, bei SSH wird er im privaten SSH-Schlüssel gespeichert. Eine gängige Implementierung ist nun, dass der zufällig erzeugte private FIDO-Schlüssel mit einem gerätespezifischen Schlüssel symmetrisch verschlüsselt ("wrapped") wird und dieses Chiffrat als Keyhandle ausgegeben wird. Yubico hat ein etwas anderes, aber gleichwertiges Verfahren: https://www.yubico.com/blog/yubicos-u2f-key-wrapping/ Das FIDO-Gerät speichert also in Wirklichkeit gar nichts, sondern bekommt mit dem Keyhandle jedes Mal alles Notwendige, um den privaten Schlüssel herzuleiten. FIDO2 hat zusätzlich Resident Keys eingeführt, wo der Keyhandle auf dem Gerät gespeichert wird, worauf sich die Slotzahl bezieht. Kann man mit OpenSSH auch erzeugen und benutzen, ist aber nicht von allgemeinem Interesse. -- Christian "naddy" Weisgerber naddy@xxxxxxxxxxxx -- Unix User Group Rhein-Neckar e.V. https://www.uugrn.org Archiv und An-/Abmeldeinformationen https://mail2.uugrn.org Veranstaltungen https://fixme.uugrn.org https://stammtisch.uugrn.org
Re: FIDO-basierte SSH-Schluessel | Ralph Mayer <rmayer@xxxxxxxxxxxxxxxx> |
Re: FIDO-basierte SSH-Schluessel | Marc Haber <mh+uugrn@xxxxxxxxxxxx> |
Re: FIDO-basierte SSH-Schluessel | Christian Weisgerber <naddy@xxxxxxxxxxxx> |
Re: Reboot shell.uugrn.org am 08. Mai | Christian Weisgerber <naddy@xxxxxxxxxxxx> |
FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai) | Marc Haber <mh+uugrn@xxxxxxxxxxxx> |
Re: FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai) | Christian Weisgerber <naddy@xxxxxxxxxxxx> |
Re: FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai) | Marc Haber <mh+uugrn@xxxxxxxxxxxx> |