Skip to content

Add Credential Manager support and improve WebAuthnLinux authenticator functionality#3

Open
Karloss1234 wants to merge 3 commits into
samveen:mainfrom
Karloss1234:webauthn-credential-manager
Open

Add Credential Manager support and improve WebAuthnLinux authenticator functionality#3
Karloss1234 wants to merge 3 commits into
samveen:mainfrom
Karloss1234:webauthn-credential-manager

Conversation

@Karloss1234

Copy link
Copy Markdown

Core authenticator improvements (webauthn-authenticator.js)

Major improvements have been made to the WebAuthn authenticator implementation. It is now a functional Linux software Passkey authenticator with built-in credential management capabilities.

Summary

This PR improves WebAuthnLinux by adding Credential Manager functionality, improving credential persistence, and strengthening browser/native messaging integration.

The main areas changed are:

  • Credential management and storage (view, rename, and delete credentials)
  • Authenticator state handling
  • WebAuthn metadata improvements
  • Firefox and Chrome compatibility improvements
  • Native messaging installation improvements
  • Extensive testing on Kubuntu and Fedora with Firefox and Chrome

Testing has successfully verified Passkey registration and login with:

  • Google
  • Microsoft
  • GitHub
  • Government tax reporting websites
  • webauthn.io

Specific changes

Credential management

  • Added improved credential storage handling and persistence.
  • Improved loading and saving of system_credentials through browser storage.
  • Added reliable credential retrieval after extension restart.
  • Improved handling of stored credential metadata.
  • Added credential management operations including renaming and deleting credentials.

Authenticator reliability

  • Improved authenticator initialisation and state handling.
  • Improved asynchronous storage operations using modern Promise/async patterns.
  • Reduced the risk of credential storage inconsistencies.
  • Improved handling of authenticator state across browser sessions.

WebAuthn compatibility

  • Improved authenticator metadata handling, including AAGUID management.
  • Improved compatibility with browser WebAuthn flows.
  • Maintained compatibility with existing WebAuthn registration and authentication processes.

Native messaging installation improvements

  • Simplified native host installation.
  • Removed the need for users to manually create the native messaging manifest.
  • Added support for different Firefox configuration paths used by distributions such as Fedora.
  • Improved installer verification output.

Debugging and development

  • Added additional logging around credential operations and storage events.
  • Improved visibility of authenticator state transitions during testing.

Breaking changes

None expected. Existing registered credentials remain usable.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant