Skip to content

reedy/webauthn-framework

 
 

Repository files navigation

Webauthn Framework

Scrutinizer Code Quality Coverage Status

Build Status

Latest Stable Version Total Downloads Latest Unstable Version License

Webauthn defines an API enabling the creation and use of strong, attested, scoped, public key-based credentials by web applications, for the purpose of strongly authenticating users.

This framework contains PHP libraries and Symfony bundle to allow developpers to integrate that authentication mechanism into their web applications.

Supported features

  • Attestation Types
    • basic attestation
    • self attestation
    • private CA attestation
    • elliptic curve direct anonymous attestation (optional)
  • Attestation Formats
    • FIDO U2F attestation
    • packed attestation
    • TPM attestation
    • Android key attestation (optional)
    • Android Safetynet attestation
  • Communication Channel Requirements
    • TokenBinding support (optional)
  • Extensions
    • registration and authentication support without extension
    • extension support
    • appid extension support (optional)
  • Cose Algorithms
    • RS1, RS256, RS384, RS512
    • PS256, PS384, PS512
    • ES256, ES256K, ES384, ES512
    • ED25519

Documentation

The Easy Way

If you want to quickly start a Webauthn Server, you should read how to use the Server class.

If you prefer to build integrate it into your application, you should directly use the library or the Symfony bundle.

Webauthn Library

With this library, you can add multi-factor authentication like FIDO U2F does or add passwordless authentication support for your application using the new FIDO2 Webauthn specification.

There are two steps to perform:

Install the library with Composer: composer require web-auth/webauthn-lib.

Symfony Bundles

This framework provides a Symfony bundle to store, load and verify the data from the authenticators.

This bundle also includes a firewall based on webauthn that will help you to protect the routes. You will be able to authenticate your users with their username and FIDO2 compatible authenticators.

Other libraries

Metadata Service

This library provides all tools and data structures to easily consume the Fido Metadata Service.

Please not that the service and the associated specification should be considered as experimental

The details for this library and the process are explained in this dedicated page.

Cose Key

TO BE WRITTEN

Support

I bring solutions to your problems and answer your questions.

If you really love that project and the work I have done or if you want I prioritize your issues, then you can help me out for a couple of 🍻 or more!

Become a Patreon

Contributing

Requests for new features, bug fixed and all other ideas to make this framework useful are welcome. If you feel comfortable writing code, you could try to fix opened issues where help is wanted or those that are easy to fix.

Do not forget to follow these best practices.

If you think you have found a security issue, DO NOT open an issue. You MUST submit your issue here.

Licence

This software is release under MIT licence.

About

FIDO-U2F / FIDO2 / Webauthn Framework

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • PHP 100.0%