[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FIDO-basierte SSH-Schluessel


On Thu, Jun 09, 2022 at 07:37:05AM +0200, Ralph Mayer wrote:
> > 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.
> > 
> 
> Kurze Definitionsfrage: Gerät? Meinst Du damit den Rechner auf dem der Key erzeugt wird oder den Yubi-Key? (Ich vermute letzteres)
> 
> Anders gefragt, kann ich den Key so erzeugen, den Yubi von Rechner A abziehen, in Rechner B stecken und hab dann dort den SSH-Key?

Wenn ich das richtig verstanden habe, kann man FIDO2 in zwei
Betriebsarten betreiben:

(1) mit Resident Keys
Dabei ist der Key komplett auf dem Key gespeichert und der Key macht die
Kryptographie wie bei einem normalen Crypto-Device, damit braucht man
nur den Key und eventuelle Sicherheitsmaßnahmen wie eine PIN (wenn es
das bei dem Key gibt) um die Authentifikation auslösen zu können.

(2) ohne Resident Keys
Dabei ist auf dem Rechner ein "Seed" gespeichert, der beim
Authentifkationssversuch an den Key übermittelt wird. Der Key nutzt dann
diesen Seed und seinen (einen!) internen Schlüssel, um den (mit identischem
seed immer identischen) private Key für die FIDO2-Authentifikation zu
errechnen und diesen dann für die Authentifikation zu verwenden.

In beiden Fällen ist der Key notwendig, das auf dem Key abgelegte
geheime Material verlässt den Key nicht. Im Fall 2 ist zusätzlich noch
der Seed notwendig (wobei ich nicht weiß wie groß dieser ist, ich hoffe
er ist groß und die Verfahren sind sicher genug, dass man den internen
Schlüssel des Keys nicht deduzieren kann wenn man den Key nur genug mit
verschiedenen Seeds bewirft).

Wenn ich jetzt davon ausgehe, dass der Seed bei der normalen Anwendung
der FIDO-Mechanismen für jede Webseite, an der man sich authentifizieren
möchte, anders ist, ist das ein wenig unsicherer als die
Web-Authentifizierung, weil hier "nur" für die Erzeugung des ssh-Keys
ein eigener Seed verwendet wird.

Ich habe mir das unter anderem von
https://www.stavros.io/posts/u2f-fido2-with-ssh/ zusammengereimt und
hoffe dass die Information dort korrekt und aktuell ist.

Wenn ich richtig verstanden habe, kann man mit FIDO2-SSH nur elliptische
Kurven verwenden, und zwar ed25519-sk und ecdsa-sk, wobei ed25519 der
Vorzug zu geben ist. Entspricht das dem Stand von Technik und Forschung
oder möchte man aktuell ein anderes Verfahren verwenden? Hat man bei
ed25519-sk Kryptografie mit FIDO2 die Qual der Wahl verschiedener
Schlüssellängen, welche sind sinnvoll, welche werden unterstützt, und
welche will man haben?

Ich weiß dass die Antwort auf diese Fragen üblicherweise "kommt darauf
an" lautet, aber ich bin noch nicht einmal so weit dass ich weiß WORAUF
es ankommt...

Grüße
Marc

P.S.: Sorry, ich muss das fragen: Bist Du der Ralph Mayer mit Firewalls
und T*f*n?


-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421

-- 
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

Follow-Ups:
Re: FIDO-basierte SSH-SchluesselJakob Haufe <sur5r@xxxxxxxxx>
Re: FIDO-basierte SSH-SchluesselChristian Weisgerber <naddy@xxxxxxxxxxxx>
References:
Re: Reboot shell.uugrn.org am 08. MaiChristian 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>
Re: FIDO-basierte SSH-SchluesselChristian Weisgerber <naddy@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-SchluesselRalph Mayer <rmayer@xxxxxxxxxxxxxxxx>