smartpassgen

smartpassgen - A cross-platform package of modules for generating, secure storage and recovery of complex, cryptographic, smart passwords on the fly.

Author and developer: Aleksandr Suvorov (Smart Legion).

mysmartlegion@ya.ru
https://smartlegion.github.io/

Supported:

  • Linux: All.
  • Windows: 7/8/10.
  • Termux (Android).

Requirements:


What's new?:

smartpassgen v0.2.5

  • Bugs fixed.
  • Enhanced cryptographic strength and security.
  • New modules, functions and classes.
  • Dropped support for experimental versions 0.1.X +
  • Added new characters for password complexity.

Description:

smartpassgen - A cross-platform package of modules for generating, secure storage and recovery of complex, cryptographic, smart passwords on the fly.

With this package, you can create cross-platform generators or managers of complex, cryptographic, smart passwords with a link to a username and secret phrase, and the possibility of recovery.

You can create:


Smart Password generator:

A generator of smart, recoverable passwords, linked to a username and a secret phrase. At the same time, passwords aren't stored anywhere, but are always in the calculated state until the request is made.


Password Generator:

A generator of smart, recoverable passwords, linked to a secret phrase. Generates a complex password with the ability to recover it using a secret phrase. The password isn't stored anywhere, but is always in the calculated state until it is requested.


Default Password Generator:

The usual generator of complex passwords without bindings and the possibility of recovery.


Help:

  • python3 -m venv venv
  • source venv/bin/activate
  • pip3 install smartpassgen

or:

  • python3 -m venv venv
  • source venv/bin/activate
  • python3 setup.py install

For run tests:

  • pip3 install pytest
  • pytest -v

For run tests coverage:

  • pip3 install pytest-cov
  • pytest --cov --cov-report=html

Use:

from smartpassgen.interfaces import PasswordsGenerator # data to generatelogin = 'login'secret = 'secret'length = 15 # Passwords generatorpass_gen = PasswordsGenerator() # Passwords will always be differentdef_password = pass_gen.get_def_pass() def_password2 = pass_gen.get_def_pass() assert def_password != def_password2 # Passwords will always be the same when using the same passphrase:norm_password = pass_gen.get_norm_pass(secret='secret', length=15) norm_password2 = pass_gen.get_norm_pass(secret='secret', length=15) smart_password = pass_gen.get_smart_pass(login='login', secret='secret') smart_password2 = pass_gen.get_smart_pass(login='login', secret='secret') assert norm_password == norm_password2assert smart_password == smart_password2

Test coverage:

Coverage 100% !!!

coverage img

GitHub

GitHub - smartlegion/smartpassgen: A cross-platform package of modules for generating, secure storage and recovery of complex, cryptographic, smart passwords on the fly.
A cross-platform package of modules for generating, secure storage and recovery of complex, cryptographic, smart passwords on the fly. - GitHub - smartlegion/smartpassgen: A cross-platform package ...