Η αρχιτεκτονική των passkeys και οι κρυμμένες επιλογές

Τα passkeys ορίζονται από το πρότυπο WebAuthn της συμμαχίας FIDO. Παρέχουν ένα ευέλικτο σύνολο προαιρετικών χαρακτηριστικών: copyable έναντι non‑copyable, transferable έναντι non‑transferable, hardware‑backed έναντι software‑backed, user‑present έναντι user‑absent, user‑verified έναντι non‑user‑verified και attested έναντι unattested. Κάθε χαρακτηριστικό σημαίνεται από ένα authenticator data flag, επιτρέποντας σε μια υπηρεσία να δηλώνει ποιες παραλλαγές δέχεται. Αυτή η ευελιξία φαίνεται ισχυρή, αλλά στην πράξη οι υπηρεσίες μπορούν να επιλέξουν ένα υποσύνολο, περιορίζοντας σιγά σιγά τις επιλογές του χρήστη.

Πώς ο έλεγχος μεταφέρεται από τον χρήστη στις υπηρεσίες

Σε αντίθεση με τους κωδικούς πρόσβασης ή τους κωδικούς TOTP, οι χρήστες δεν μπορούν πλέον να αποφασίσουν πού να αποθηκεύσουν ή να μοιραστούν τα passkeys τους. Μια υπηρεσία μπορεί να απαιτήσει ένα passkey που είναι non‑copyable, hardware‑backed και user‑verified, αφήνοντας ελάχιστη ελευθερία για εναλλακτικές λύσεις. Η αρχιτεκτονική επιτρέπει στις υπηρεσίες να επιβάλουν αυτές τις επιλογές χωρίς διαφάνεια, καθιστώντας τα passkeys ένα εργαλείο για την επιβολή πολιτικών από την πλευρά του παρόχου.

Remote attestation: Το εργαλείο για επιβολή συμμόρφωσης

Η απομακρυσμένη πιστοποίηση (remote attestation) χρησιμοποιεί τον cryptoprocessor κάθε σύγχρονης συσκευής για να επαληθεύσει ότι το λογισμικό διαχείρισης κλειδιών είναι εγκεκριμένο. Εάν οποιαδήποτε συνιστώσα (cryptoprocessor, λογισμικό διαχείρισης κλειδιών, λειτουργικό σύστημα ή firmware) αποτύχει στην επαλήθευση, η υπηρεσία μπορεί να αρνηθεί την πρόσβαση. Αυτό σημαίνει ότι οι χρήστες δεν μπορούν να εγκαταστήσουν προσαρμοσμένα λειτουργικά συστήματα (π.χ. LineageOS) ή μη εγκεκριμένες εφαρμογές διαχείρισης κλειδιών χωρίς να χάσουν την πρόσβαση σε υπηρεσίες που βασίζονται σε passkeys.

Πρακτικές επιπτώσεις και συστάσεις για μηχανικούς

  • Αποφύγετε την εξάρτηση από τα passkeys για κρίσιμες λειτουργίες· συνεχίστε να χρησιμοποιείτε κωδικούς πρόσβασης ή TOTP όπου η αυτονομία του χρήστη είναι σημαντική.
  • Ελέγξτε τα authenticator data flags κατά την ενσωμάτωση του WebAuthn· απαιτήστε μόνο τα ελάχιστα χαρακτηριστικά που χρειάζεστε για να διατηρήσετε την ευελιξία των χρηστών.
  • Παρακολουθήστε τις εξελίξεις στην απομακρυσμένη πιστοποίηση· οι αυστηρότερες απαιτήσεις πιστοποίησης μπορεί να αποκλείσουν νόμιμες, ανοιχτές συσκευές.
  • Υποστηρίξτε ανοιχτά πρότυπα και διαλειτουργικότητα (interoperability) για να διατηρήσετε την ικανότητα των χρηστών να εκτελούν μη εγκεκριμένο λογισμικό και να διατηρούν τον έλεγχο των διαπιστευτηρίων τους.