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
Metadata
Release files for bmauth 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bmauth-0.1.0.tar.gz | 14.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bmauth-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.8 kB
Release files / bmauth-0.1.0.tar.gz
| Download URL | bmauth-0.1.0.tar.gz |
|---|---|
| Size | 14.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f9c490c7040e611539e366cef66fefbf1db34282eeca33db5f8ded2007eee30a
|
|
BLAKE2b-256 checksum How to use checksums |
8192aff39269056ec36f55406e1647b1c4ed7f1d8e7128bc44b2912d0d19fddd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / bmauth-0.1.0-py3-none-any.whl
| Download URL | bmauth-0.1.0-py3-none-any.whl |
|---|---|
| Size | 15.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ad7a80282de7e60de69475964a98eb90806de2c763efbbe18349b5357e08e507
|
|
BLAKE2b-256 checksum How to use checksums |
6703ad10a17f9bf724b3b412c8177c48ace0046b802d83d72511c6d18e1ee13e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|