Pythonic WebAuthn
Project description
py_webauthn
A Python3 implementation of the WebAuthn API focused on making it easy to leverage the power of WebAuthn.
This library supports all FIDO2-compliant authenticators, including security keys, Touch ID, Face ID, Windows Hello, Android biometrics...and pretty much everything else.
Installation
This module is available on PyPI:
pip install webauthn
Requirements
- Python 3.8 and up
Usage
The library exposes just a few core methods on the root webauthn
module:
generate_registration_options()
verify_registration_response()
generate_authentication_options()
verify_authentication_response()
Two additional helper methods are also exposed:
options_to_json()
base64url_to_bytes()
Registration
See examples/registration.py for practical examples of using generate_registration_options()
and verify_registration_response()
.
You can also run these examples with the following:
# See "Development" below for venv setup instructions
venv $> python -m examples.registration
Authentication
See examples/authentication.py for practical examples of using generate_authentication_options()
and verify_authentication_response()
.
You can also run these examples with the following:
# See "Development" below for venv setup instructions
venv $> python -m examples.authentication
Development
Installation
Set up a virtual environment, and then install the project's requirements:
$> python3 -m venv venv
$> source venv/bin/activate
venv $> pip install -r requirements.txt
Testing
Python's unittest module can be used to execute everything in the tests/ directory:
venv $> python -m unittest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for webauthn-1.0.0b2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e33e6c430a906b1875dc8d40f032a2f3538125ff3949596e5ed17fde81110595 |
|
MD5 | 1038a6165fbcc6421737fdd1672dad4c |
|
BLAKE2b-256 | 130e132a1d7bea10764de483436c135cae7f5dd0bde9a56e9ced3f1c22d3ec56 |