1Password open-sources its internal library for Passkey Authentication and Public-Suffix library
1Password is making its internal library for passkey authentication open source. The library, still in active development, allows website authentication using passkeys stored in user vaults. Developers can use the passkey crate, version 0.1.0, to build WebAuthn clients and authenticators with modules such as passkey-authenticator, passkey-client, passkey-transports, and passkey-types.
In addition to the passkey library, 1Password is also open-sourcing their public-suffix library, which is derived from the Go standard library. Both libraries, currently at version 0.1, are being further developed to support Android 14's credentials library and Apple's updated Authentication Services APIs. Future updates may result in breaking changes as new features are added and the API is refined.
The decision to develop a custom library for passkey authentication was driven by compatibility issues with Typeshare, WASM, and CTAP2 support, which made webauthn-rs an unsuitable choice. Similar concerns over WASM compatibility and performance influenced the decision not to use the public suffix list (psl) library. Developers can add the necessary sublibraries to their project's Cargo.toml for integration. The source code for these libraries is available on GitHub, and developers are encouraged to collaborate by creating issues or pull requests on the repository. You can read the full statement here.
