Skip to content

[BUG] Passkey format seems not interoperable with desktop application (passless) #996

Description

@trap000d

Describe the bug

I'm giving a try to passkey feature introduced in Android-Password-Store 2.0.
There is a site which allows to test passkeys https://webauthn.io/

Mobile device: Android 16, Firefox, APS 2.0
Desktop: Arch Linux, passless (AUR)

Seems passkeys generated by desktop utility passless are incompatible with ones created by Android-Password-Store.

Steps to reproduce

Steps to reproduce the behavior:

  1. Install and configure passless on desktop
  2. Start desktop browser
  3. Navigate to https://webauthn.io/
  4. Pick some user name, then generate passkey.
  5. Synchronise password-store repo with mobile device
  6. Open browser on mobile device, navigate to the same site
  7. Try to authenticate with credentials above
  8. See error: Failed to parse /fido2/webauth.io/[some long id] The file does not appear to contain valid passkey data
  9. Repeat it in reverse order: create credentials on mobile, then try to authenticate on desktop
  10. See error: "The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission"

Expected behavior

I assume the same passkey, once exported, should be accepted on any device with properly configured pass/passless, and/or APS

Screenshots

No response

Device information

  • Device: Android phone
  • OS: Android 16
  • App version: 2.0

Additional context

I've dumped both keys created on desktop and Android. They look absolutely different:

trap000d@zinc:~$ pass fido2/webauthn.io/b0ba420ee0e2c2a30fdcea508ffb7623ba1c0681c85ca99e380043279097818c
�bid� �����B�������������P�����v�#���������\�����8�C�'��������brp�bidkwebauthn.iodname�duser�bid��w�e�b�a�u�t�h�n�i�o�-�t�r�a�p�0�0�0�ednamehtrap000eldisplay_name�jsign_countcalg'kprivate_key� �X�m����C�~�?�����������2�x������@���|�Z�f���"�:���5���~�_gcreated�jiu
ldiscoverable�jex

trap000d@zinc:~$ pass fido2/webauthn.io/2abc2d69acda9b65a10e1d29cb7f1625042ed34bb0f7b0e555835572a9cb1b0c
qGJpZJggGCoYvBgtGGkYrBjaGJsYZRihDhgdGCkYyxh_FhglBBguGNMYSxiwGPcYsBjlGFUYgxhVGHIYqRjLGBsMYnJwomJpZGt3ZWJhdXRobi5pb2RuYW1la3dlYmF1dGhuLmlvZHVzZXKkYmlkkxh3GGUYYhhhGHUYdBhoGG4YaRhvGC0YdBhyGGEYcBgwGDAYMBhmZG5hbWVodHJhcDAwMGZsZGlzcGxheV9uYW1laHRyYXAwMDBma3JldmVhbF9uYW1l9WpzaWduX2NvdW50AGNhbGcna3ByaXZhdGVfa2V5mCAYWhh4AxhOGPQYehhOGIEYHxgvGNEYPBjzGO0YTxgyGPEYxxioGHIYuhh_GE4YhRh7GC8YxBicBBirGFMYNWdjcmVhdGVkGmppeNhkem9uZXBQYWNpZmljL0F1Y2tsYW5k

I've also have given a try to https://github.com/pando85/Android-Password-Store fork, however this one has UI bugs so I couldn't even generate credentials at all. I assume it should be another issue.

P.S. Or you might consider to synchronise code bases?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions