Biometric Authentication System for FastAPI applications
Project description
BMAuth
Biometric Authentication System for FastAPI applications, providing the most secure authentication system to any developer.
This system leverages WebAuthn/FIDO2 Principles in building lots of secure layers, while being a smooth experience for users.
Registering
- User types in email (identifier in the server)
- User provides biometric (establishes device's private key) and sends public key to the server
- Server registers user and asks to verify email via Email PIN
- User enters the PIN and is brought to the application
- Email is marked as verified
Authenticating
- User provides email (sent to server), server verifies user trying to sign in on the same device, server sends back a random challenge to the user
- User gives device biometrics to solve the challenge (private key creates a digital signature), sends the response to the server
- Server verifies the signature with the public key, and brings the user to the application
Different Device Authentication
Adding a new device via Cross-Verification
- Device B initiates login
- Verify on Device A
- Phone/Tablet: QR Code to verify biometrically will come from Laptop/Computer
- Laptop/Computer: Sign into the application, scan the QR Code “Scan this with your new device to approve the sign-in”, then laptop/computer biometric verification
- The phone/tablet will say “To sign in, go to yourapp.com/link on your already-registered computer”, and then open up the camera view to scan for the QR Code
- Note: Requires developer to input the link to their app when creating their authentication
- Device B is verified (Creates a private key and sends public key to the server)
- Device B is now registered
Account Recovery
- Device B would click on “Lost my device” or “Can’t approve?”
- Server sends an Email PIN to device B
- Device B is verified (Creates a private key and sends public key to the server)
- Device B is registered
- User is prompted to de-authorize the lost Device A for security purposes
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bmauth-0.1.0.tar.gz.
File metadata
- Download URL: bmauth-0.1.0.tar.gz
- Upload date:
- Size: 14.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9c490c7040e611539e366cef66fefbf1db34282eeca33db5f8ded2007eee30a
|
|
| MD5 |
4e971932446977d241a09ba2a82de3cf
|
|
| BLAKE2b-256 |
8192aff39269056ec36f55406e1647b1c4ed7f1d8e7128bc44b2912d0d19fddd
|
File details
Details for the file bmauth-0.1.0-py3-none-any.whl.
File metadata
- Download URL: bmauth-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad7a80282de7e60de69475964a98eb90806de2c763efbbe18349b5357e08e507
|
|
| MD5 |
b98140276183abb17d79c503c3083874
|
|
| BLAKE2b-256 |
6703ad10a17f9bf724b3b412c8177c48ace0046b802d83d72511c6d18e1ee13e
|