Analyze passwords' memorizability and generate pronounceable words.
- 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.
>>> from pronounceable import PronounceableWord, generate_word, Pronounceablity, Complexity >>> PronounceableWord().length(8, 15) 'terhtsadathe' >>> generate_word() 'gloust' >>> 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
- NLTK - CMUdict
More on password
- Human-readable password mnemonics -- https://github.com/patarapolw/memorable-password
- Security-side of password -- https://github.com/patarapolw/passwordstrength
- Adapting the humanized password to the computerized password policy - https://github.com/patarapolw/leetpass
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
pronounceable-0.1.3.tar.gz (45.5 kB view hashes)
Hashes for pronounceable-0.1.3-py3-none-any.whl