Skip to content
This repository has been archived by the owner on Sep 2, 2024. It is now read-only.
/ u2f Public archive

U2F (FIDO Universal 2nd Factor) in OCaml

License

Notifications You must be signed in to change notification settings

robur-coop/u2f

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

U2F - Universal Second Factor

Deprecation

In 2022 Google Chrome announced they would deprecate and remove U2F support in their browser. Firefox followed suit and removed U2F support in 2023. Please take a look at our WebAuthn implementation (GitHub mirror). If you still need U2F please reach out to us with the contact details listed on https://robur.coop/Contact.

U2F is a FIDO standard for two-factor authentication using specialized USB or NFC devices, similar to smart cards. Challenge-response authentication with the device using public key cryptography is supported by various applications, i.e. web browsers and ssh.

This package implements the server side of the U2F protocol: requesting and finalizing both a registration and an authentication via json messages exchanged between the browser and the server. The implementation does not keep any state, instead the user of the API needs to persist the state (challenges, keyHandle, public keys, ...). A basic demonstration server is provided (bin/u2f_demo), running at u2f-demo.robur.coop.

Documentation

API documentation is available online.

Installation

opam install u2f will install this library.