logo

blog

My website can't be that messy, right? git clone https://anongit.hacktivis.me/git/blog.git/

webauthn-vs-interoperability.xml (2244B)


  1. <entry>
  2. <title>WebAuthn vs. Interoperability</title>
  3. <link rel="alternate" type="text/html" href="https://hacktivis.me/articles/webauthn-vs-interoperability"/>
  4. <id>https://hacktivis.me/articles/webauthn-vs-interoperability</id>
  5. <published>2025-10-29T16:43:16Z</published>
  6. <updated>2025-10-29T16:43:16Z</updated>
  7. <link rel="external replies" type="application/activity+json" href="https://queer.hacktivis.me/objects/ad12e048-a5a2-435f-85fa-100e7481b547" />
  8. <link rel="external replies" type="text/html" href="https://queer.hacktivis.me/objects/ad12e048-a5a2-435f-85fa-100e7481b547" />
  9. <content type="xhtml">
  10. <div xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="h-entry">
  11. <p>
  12. WebAuthn, also marketed as passkeys for a subset of it, is something
  13. that seems rather scary to me from an interoperability perspective.
  14. </p>
  15. <p>
  16. Not only it's a lock-in in terms of authenticators, it's also a lock-in to Chrome/Firefox/Safari.<br />
  17. Wanted to use an alternative browser? Nope.<br />
  18. And you can probably forget using it on embedded devices outside of Android/iOS.<br />
  19. Wanted to authenticate to a service on your e-reader? Nope.
  20. </p>
  21. <p>
  22. But there's also the issue of authenticating from non-browsers
  23. such as native applications, granted a lot of them use OAuth tokens
  24. or similar but there's a sort of bootstrapping problem in systems
  25. where you don't have a full-blown mainstream browser.<br />
  26. (And good luck copying the OAuth token from one device to another)
  27. </p>
  28. <p>
  29. And the design of WebAuthn means you can't copy
  30. the generated token into a text field, unlike
  31. <a href="https://en.wikipedia.org/wiki/Time-based_one-time_password">TOTP</a>
  32. (sometimes branded as things like Google Authenticator)
  33. which has none of those issues while still allowing to use hardware tokens.
  34. </p>
  35. <p>
  36. You could argue on usability, WebAuthn is likely friendlier
  37. to most when you follow the intended path thanks to browser-integration.
  38. But not due to the underlying WebAuthn properties which instead
  39. causes problems, and ones that you're likely to discover the hard way:
  40. Getting the authenticators you use revoked;
  41. Not being able to authenticate on some devices;
  42. Backups being harder;
  43. </p>
  44. </div>
  45. </content>
  46. </entry>