Smart, simple, lightweight, secure cross-platform authentication for any application
Passwordless authentication using secret phrases and public keys.
smartauthen — Smart, simple, lightweight, secure cross-platform authentication for any application.
Supported platforms: Linux (all), Windows 7/8/10/11, Termux (Android).
Avoid passwords when registering and authenticating in your applications. Use easy-to-remember secret phrases instead of passwords.
⚠️ The public key for the login + secret phrase pair will always be the same. With any change in the login or secret phrase, the key will change.
step attribute controls key generationpip install smartauthen
from smartauthen import SmartAuth smart_auth = SmartAuth() login = 'login' secret = 'secret' key = smart_auth.make_key(login, secret) # True since the login + secret phrase is correct print(smart_auth.check(login, secret, key)) # True secret = 'secret2' # False because the secret phrase is incorrect print(smart_auth.check(login=login, secret=secret, key=key)) # False
| Method | Description | Parameters |
|---|---|---|
make_key | Generate public key from login + secret phrase | login, secret |
check | Verify login + secret phrase against public key | login, secret, key |
Note: step attribute in SmartAuth object regulates key generation complexity. Higher value = more secure key.
100% test coverage — All components thoroughly tested.
Run tests:
pip install pytest pytest -v
Coverage report:
pip install pytest-cov pytest --cov --cov-report=html
By using this software, you agree to the full disclaimer terms.
Software provided "AS IS" without warranty. You assume all risks.
Full legal disclaimer: See DISCLAIMER.md
License: BSD 3-Clause License