package u2f

  1. Overview
  2. Docs
Universal Second Factor (U2F) implementation in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

u2f-v0.1.1.tbz
sha256=e122725cdcd6245301e5c28d7cf5bc013e0e8e01c7f34767d135e33a6a57fe98
sha512=e563a61ecb5748fc6409f227b2dec5ecd0181cc2676ee59e765b59b23453c8cc08fe1f917e9b28b2c8465b7f2c0cb2745a389bef752ca2707449344bd616163d

Description

A server-side implementation of the two-factor authentication standard Universal Second Factor (U2F). With special (USB, NFC) devices, a challenge-response authentication using public key cryptography is done.

Published: 30 Jun 2021

README

U2F - Universal Second Factor

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 auhentication 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.

Dependencies (9)

  1. cstruct < "6.1.0"
  2. base64 >= "3.1.0"
  3. x509 >= "0.13.0" & < "0.15.1"
  4. mirage-crypto-rng
  5. mirage-crypto-ec
  6. ppx_deriving_yojson
  7. yojson
  8. dune >= "2.7"
  9. ocaml >= "4.08.0"

Dev Dependencies (5)

  1. lwt dev
  2. logs dev
  3. cmdliner dev
  4. ppx_blob dev
  5. dream dev

Used by

None

Conflicts

None