Ich möchte mich eingehender mit Passkey beschäftigen, zumal seit längerem auch hier im Forum diese Form der Anmeldung angeboten wird. Bei meiner Recherche im Internet stieß ich auf folgenden Artikel: Link zum Artikel Der ist aus dem Dezember 2023. Deshalb frage ich mich, ob dieser Artikel noch aktuell ist. Ich arbeite mit Debian und Graphene OS.
Unter GOS sind passkeys nur nutzbar mit sandboxed play services. Hier ein Guide, den du wahrscheinlich kennst: https://discuss.grapheneos.org/d/12019-passkeys-as-mfa-on-grapheneos-a-guide
Unter Linux klappt es mit Firefox. (Es kann aber sein, dass ich ihn unter Windows registrieren musste. Och weiß es nicht mehr genau.) Ich nutze selbstgehostetes Bitwarden zum speichern der passkeys)
Ich mache mir aber natürlich so meine Gedanken. Wenn passkeys nur unter Microsoft und Google funktionieren (Ich lasse Apple mal außen vor), was das für die Sicherheit bedeutet. Vielleicht sind sie doch nicht so grandios, wie von genau diesen Firmen beworben?
Update: habe soeben unter Linux in Librewolf (klappt also auch mit Firefox) ein passkey erstellt und mit der Bitwarden Browser extension gespeichert. Geht also.
Man braucht einen Passwort Manager, der passkeys unterstützt.
Das ist mein momentaner Wissensstand.
Ich verwende Passkeys mit KeePassXC als Authenticator App und der KeePassXC Browsererweiterung als WebAuthn API in Firefox, Chrome und Vivaldi. Alle Komponenten sind für Mac, Linux und Windows verfügbar. Das Konzept ist somit plattformunabhängig.
Ich habe dazu auch mal zwei Artikel geschrieben. Einmal Passkey theoretisch beschrieben [1] und einmal in der Praxis am Beispiel meiner Wordpress Instanzen [2], die ich mit Passkey abgesichert habe. Ansonsten nutze ich mittlerweile Passkey so ziemlich überall, wo es angeboten wird und mir wichtig erscheint. Paypal, Amazon, Google etc.
[1] https://kb.prontosystems.de/knowledge-base/passkey-authentication/
[2] https://kb.prontosystems.de/knowledge-base/passkey-fuer-wordpress-und-keepassxc/
HTH CD
Vielen Dank für die schnellen Antworten. In meiner Vorstellung ging ich davon aus, dass es so funktioniert wie es @dirksche beschrieb. Durch den von mir erwähnten Artikel glaubte ich nun, dass da noch Betriebssysteminterna für die Funktion eine Rolle spielen. Ja und Google, Microsoft usw. sollen ohnehin außen vor bleiben.
Dank auch an @Cyberduck , die beiden Artikel hatte ich bei meiner Recherche bereits gelesen.
Ich hoffe, sie konnten das Konzept verständlich machen. Es ist nicht immer einfach, die Informationstiefe auf dem gewünschten Niveau zu halten. Vor allem dann nicht, wenn man sich selbst erst in die Materie einarbeitet.
Btw: Die Überlegungen von @dirksche bezüglich der Sicherheit von Passkeys mit Microsoft oder Google kann ich allerdings nicht nachvollziehen. Das Schlüsselkonzept von Passkeys ist, dass der private Schlüssel nur auf dem Gerät (Authenticator) liegt und bei der Authentisierung das Gerät nicht verlässt. Google oder Microsoft ändern daran nichts.
Fehlen noch die mobilen Apps, die mit in KeepassXC abgelegten Passkeys zusammenspielen. Strongbox für iOS war vergleichsweise früh dran (10/2023), Keepassium hat 12/2024 nachgezogen (ebenfalls iOS).
KeepassDX für Android scheint AFAIK hinterherzuhinken, doch vielleicht gibt es alternative Apps. Wer mit XC arbeitet (und nicht mit Googles Passkeys) hätte die auch gerne für GOS, nehme ich an.
Ich benutze die Passkeys auch mit KeepassXC und Browser-Addon unter Firefox. Leider akzeptieren einige Anbieter keine Passkey in Kombination mit der Nutzung von Firefox und/oder ohne die Google und Apple Passkey-Verwaltung…
Daher benutze ich die Passkeys dort, wo es mit KeepassXC geht, alle anderen bleiben bei 30 stelligem Passwort und TOTP mit ReiserSCT Authenticator… leider.
(Als Hinweis: Es funktionierte bei Paypal und Ebay nicht. Die anderen habe ich bisher noch nicht getestet. Eventuell geht es mit Chromium.)
Funktioniert Dein Setup gut? — Ich nutze auch Linux (openSUSE Leap) sowie Mozilla Firefox ESR und KeePassXC, bisher allerdings ohne KeePassXC-Browser, da ich bisher noch gar keine PassKeys im Einsatz habe.
Aber ich würde gerne einmal anfangen…
Bisher ist die Liste an möglichen Anbietern, die dies unterstützen, auf meiner Seite noch sehr überschaubar — das meiste muss ich regulär mit KeePassXC lösen:
- Amazon
- Deutsche Telekom
- GitHub
- PayPal
- und eben dieses Forum
Du schreibst, bei obigem Setup gibt es bei PayPal Probleme…? Sind Dir oder wem anderen noch weitere bekannt?
Den REINER SCT Authenticator für reguläres 2FA (TOTP) nutze ich übrigens auch. Bzw. ich habe bei KeePassXC eine weitere Datenbank (getrennte Quellen!) mit den TOTP-Codes (die kann man dort auch einbinden).
Ja, die Funktion TOTP in KeepassXC zu nutzen kenne ich auch. Hatte ich auch eine zeitlang benutzt, wollte es dann aber sauber trennen. War aber nur eine subjektive Entscheidung.
Bei Paypal stand halt (wenn ich mich noch recht erinnere) dass nur gewisse Browser (ich glaube es waren nur chromium-basierte Browser) unterstützt werden, sowie nur die Google oder Apple Wallets für die Schlüssel.
Mit Discourse hatte ich bisher gar keine Probleme.
Amazon habe ich auch umgestellt, wobei bei mir hier eine Seltsamkeit auftrat:
Um die Passkey-Auswahl zum Anmelden zu erhalten, muss ich erst meinen Benutzernamen angeben. Danach kommt dann die Seite, wo normalerweise ein Passwort käme.
Unter dem Passwortfeld ist dann die Passkey-Anmeldung.
Wenn du jedoch wie ich bei Amazon ein TOTP eingerichtet hast, wird dass dann nach dem Passkey trotzdem noch abgefragt, wie beim „normalen“ Anmelden mit Benutzername und Passwort.
Bei deinen anderen genannten Diensten kann ich dir leider keine Auskunft geben, da ich die nicht nutze.
Es ist momentan ein Ausprobieren. Wenn sich jedoch durchsetzen sollte, dass nur gewisse Browser und Google/Apple-Wallets dafür nötig sind, dann ist das in meinen Augen langfristig sogar schlechter als klassische Passwörter und TOTP.
Nicht wegen der Sicherheit, sondern weil man dann mal wieder gezwungen wird, mit diesen beiden Unternehmen „zusammen zu arbeiten“, sowie nur offiziell akzeptierte Browser/ROMs usw. zu nutzen…
Ja, den REINER SCT Authenticator als explizit unabhängiges Gerät finde ich schon ziemlich toll! — Aber aus Gründen der Bequemlichkeit nutze ich meist auch für TOTP den KeePassXC, aber mit einer getrennten Datenbank. So sind die Passwörter und TOTPs jeweils unabhängig (und im Zweifel würde nicht alles auf einmal abgegriffen…).
Was mich bisher stört:
- PassKey wird längst noch nicht flächendeckend angeboten. In meinem Fall (Vergleich mit meiner KeePassXC-Datenbank) sind es nur ca. 1/10 der Anbieter, dies es unterstützen. Und offensichtlich ist auch der allgemeine Betrieb nicht immer ganz einfach (siehe weiter oben). Ich würde gerne damit bei mir anfangen, aber unter diesen Umständen werde ich noch weiter warten. Wenn es wirklich ab und an technische Probleme mit Firefox oder dem KeePassXC Browser Add-on gibt… Jedenfalls wäre ein Zwang zu Chrome oder Google/Apple ein Ausschlusskriterium für mich!
- Selbst 2FA (TOTP) wird nicht flächendeckend angeboten. Wenigstens dies sollte mittlerweile einigermaßen Standard sein. Die Quote muss ja nicht unbedingt 100% sein — aber (nicht repräsentativ) im Vergleich mit meiner KeePassXC-Datenbank sind es nur ca. 1/2 der Fälle. … Wenn man es tatsächlich ernst nimmt, sollte man für die Passwörter und TOTPs verschiedene Kanäle verwenden (also z.B. zwei getrennte KeePassXC-Datenbanken, oder zusätzlich ein REINER SCT Authenticator, oder zusätzlich ein Smartphone mit Aegis Authenticator (aber eben nicht Passwort-Verwaltung/Nutzung UND TOTP-Verwaltung/Nutzung auf demselben Smartphone!!)
- zu starke künstliche Beschränkungen bei der Passwort-Generierung. I.d.R. benutze ich einen 32 Zeichen langen String aus [a-z], [A-Z], [0-9] und KEINE Sonderzeichen (ich habe da schon mehrmals schlechte Erfahrungen gemacht) bzw. wenn Sonderzeichen gefordert sind dann {-, _ }. Allgemein wichtiger als ein spezifischer Zeichenvorrat ist die Länge des Strings! Die Stärke des Passworts (Entropie) wächst schneller mit der Länge des Strings als mit der Größe des Zeichenvorrats. … Dass ein String nicht unbegrenzt lang sein darf, ist schon klar. Aber manchmal nur 6, 8, 12, 16, 20 Zeichen? WTF! Und wenn Sonderzeichen vorgeschrieben werden, dann sind manchmal so harmlose wie {-, _ } nicht dabei, aber teilweise {@ , #}, WTF! Dass man sich bei der Verwedung von Sonderzeichen nicht mal auf einen „harmlosen“ Standard einigen kann. (Anekdote: ich hatte früher mal bei irgendeinem Dienst ein Passwort mit Sonderzeichen (war gefordert) generiert. Und dabei waren offensichtlich auch nicht „harmlose“. Die Erstellung funktionierte noch. Aber der eigentliche Login funktionierte nicht. Als ich dann auf „harmlose“ gewechselt habe, funktioniert auch der Login. WTF! Und was ist bitte an {-, _ } so schlimm, als dass man das nicht immer allgemein akzeptieren könnte? Ich hatte mal einen Anbieter, da war eins der beiden Zeichen (ich weiß nicht mehr welches) verboten. Aber z.B. {@, #, .} waren erlaubt…
Werden aber 99% der User so machen (natürlich nicht welche, die in diesem Forum angemeldet sind ).
Eine separate Datenbank für TOTP-Seeds in XC nutze ich auch, aber die dient eigentlich als Backup für meine Authenticator-App auf dem Handy, also nicht für den Produktiveinsatz.
Und ich stimme zu: Die Unsitte, alles auf einem Haufen zu speichern, nimmt bedenklich zu (TOTP in der Passwortdatenbank von XC oder auch Bitwarden und Proton Pass mit derselben Option).
Hatte ich zum Glück noch nie. Aber auch ich ersetze mal eine Tilde oder sonstwas, das mir XC so generiert, durch einen simplen Bindestrich. „#“ halte ich für unverfänglich, aber Dein Bericht macht mich schon nachdenklich, wenn man sich auf diese Weise potenziell selbst aussperrt.
Ich habe bei KeePassXC aktiviert: [a-z], [A-Z], [0-9], keine(!) der vorgeschlagenen Sonderzeichengruppen, sondern manuell angegeben {-, _ } sowie Option aktiviert „mind. 1 Zeichen aus jeder Gruppe“ (auch wenn dies theoretisch die allgemeine Entropie senkt!! — aber so erfülle ich jedoch in den meisten Fällen die geforderten Generierungsrichtlinien…).