GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - madwizard-org/webauthn-server: WebAuthn Relying Party server library for PHP

BranchesTags
Open more actions menu

Latest commit

 

History

200 Commits
200 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
conformance
conformance
 
 
data
data
 
 
src
src
 
 
tests
tests
 
 
tools/php-cs-fixer
tools/php-cs-fixer
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.php-cs-fixer.dist.php
.php-cs-fixer.dist.php
 
 
.scrutinizer.yml
.scrutinizer.yml
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
composer.json
composer.json
 
 
credits.md
credits.md
 
 
phpstan.neon.dist
phpstan.neon.dist
 
 
phpunit.xml.dist
phpunit.xml.dist
 
 
spec.md
spec.md
 
 

Repository files navigation

WebAuthn Relying Party server library for PHP

Scrutinizer Code Quality Code Coverage Build Status License: MIT

Current state

Pretty stable but the API may still change slightly until the 1.0 release.

Goal

This library aims to implement the relying party server of the WebAuthn specification in PHP. Important goals are:

  • Implement the level 1 WebAuthn specification
  • Good quality, secure and maintainable code
  • Easy to use for the end-user

Installation

Installation via composer:

composer require madwizard/webauthn

Supported features

  • PHP 7.2

  • FIDO conformant library
  • Attestation types:
    • FIDO U2F
    • Packed
    • TPM
    • Android SafetyNet
    • Android Key
    • Apple
    • None
    • Optional 'unsupported' type to handle future types
  • Metadata service support
  • Validating metadata
  • Extensions:
    • appid

Usage

The library is still in development so documentation is limited. The general pattern to follow is:

  1. Implement CredentialStoreInterface (you will need UserCredential or your own implementation of UserCredentialInterface)
  2. Create an instance of RelyingParty and use the ServerBuilder class to build a server object:
$server = (new ServerBuilder())
    ->setRelyingParty($rp)
    ->setCredentialStore($store)
    ->build();
  1. Use startRegistration/finishRegistration to register credentials. Be sure to store the temporary AttestationContext server side!
  2. and startAuthentication/finishAuthentication to authenticate. Be sure to store the temporary AssertionContext server side!

Resources

WebAuthn specification

About

WebAuthn Relying Party server library for PHP

Topics

2fafidofido-u2ffido2phprelying-partytwo-factor-authenticationu2fwebauthn

Resources

Readme
MIT license
Activity
Custom properties

Stars

61 stars

Watchers

4 watching

Forks

14 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.