Skip to content

Analyze passwords' memorizability and generate pronounceable words.

License

Notifications You must be signed in to change notification settings

patarapolw/pronounceable

Repository files navigation

Pronounceable

Build Status PyPI version shields.io PyPI license PyPI pyversions PyPI status Examples tested with pytest-readme

  • Generate a random pronounceable word using Python 3 and secrets module (falls back to random module if Python < 3.6).
  • Calculate password complexity based on pronounceablity. > 10.0 is probably too complex for human to remember.

Usage

Generation of password.

>>> from pronounceable import PronounceableWord, generate_word
>>> PronounceableWord().length(8, 15)
'terhtsadathe'
>>> generate_word()
'gloust'

Analysis of keywords and passwords' memorability

>>> from pronounceable import Pronounceablity, Complexity
>>> pr = Pronounceablity()
>>> pr.syllable('terhtsadathe')
6
>>> pr.syllable('hello')
2
>>> pr.syllable('gloust')
4
>>> complexity = Complexity()
>>> complexity.complexity('D7!rcc&umnsd')
5.401603904395188
>>> complexity.complexity('a4ILot#h')
4.71785657472491
>>> complexity.complexity('password')
1.0
>>> complexity.complexity('thisisabadpassword')
2.2220669581020354
>>> complexity.complexity('anejpwnrqpqzonijre')
4.71785657472491

Based on

More on password

About

Analyze passwords' memorizability and generate pronounceable words.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages