PHP Software Libraries (FIDO2)

SafeTech has created multiple libraries to enable web developers to integrate FIDO compatibility into their websites and start providing SafeKey support with ease.

For details of the source libraries see:

Example

SAFETECHio PHP FIDO2 / WebAuthn Example

Getting Started

If you don't have access to a running configured php server no problem you can use the docker container provided.

Open a new terminal window and navigate to the root director of this repo on your machine and enter

Open another separate terminal and enter the following commands

After the installation of the packages dependencies has been completed navigate to the following URL

Browser Compatibility

To get the latest details of which version of which browsers offer support for WebAuthn please visit Can I Use WebAuthn. As of writing (2019-06-28) the following browsers have support:

Microsoft Edge

Edge has support in version 18 and higher. However Edge is not updated independently of the operating system, this means that in order to update your version of Edge you will need to update your version of Windows 10.

Updating Windows 10 to the latest version may require a few steps, first check your computer has all pending updates installed by following the instructions here.

If after all available updates have been installed and your version of Edge is still lower than 17 you will need to manually update your OS. The latest update for Windows 10 can be found here.

This process may take a long time, so it may be easier to use a more popular browser that does support the latest in web security ;).

Server Side FIDO2/WebAuthn PHP Library

WebAuthn

For more detailed example of the library please see the dedicated repo.

WebAuthn Initialize

WebAuthn Register User

WebAuthn Begin Registration

WebAuthn Complete Registration

WebAuthn Authenticate User

WebAuthn Begin Authentication

WebAuthn Complete Authentication

Docker

To get set up with docker.

In a separate terminal

Client Side FIDO2/WebAuthn JS Library

For more advanced details of how to use this library please see the php full stack example.

Installation

npm install SAFETECHio/FIDO2_CLIENT_Libraries

Example Use

The JS

The HTML

Last updated

Was this helpful?