View Source NotQwerty123.WordlistManager (NotQwerty123 v2.4.0)

Module to manage the common password list and handle password checks.

The main function that NotQwerty123 performs is to check that the password or a variant of the password (in other words, even with minor changes) is not in the list of common passwords that this WordlistManager stores.

By default, this common password list contains one file, which has a list of over 40,000 common passwords in it - this file was collated by zxcvbn, a reputable password strength meter.

Other files can be added to this common password list, and there are example files in the priv/data directory (these files are also taken from the zxcvbn repository).

In order to make the password strength check even stronger, it is also recommended to add to the list words that are associated with the site you are managing.

Managing the common password list

The following functions can be used to manage this list:

  • list_wordlists/0 - list the files used to create the wordlist
  • push/1 - add a file to the wordlist
  • pop/1 - remove a file from the wordlist

Link to this section Summary

Functions

Returns a specification to start this module under a supervisor.

Callback implementation for GenServer.init/1.

List the files used to create the common password list.

Remove a file from the common password list.

Add a file to the common password list.

Search the wordlist to see if the password is too common.

Link to this section Functions

Returns a specification to start this module under a supervisor.

See Supervisor.

Callback implementation for GenServer.init/1.

List the files used to create the common password list.

Remove a file from the common password list.

path is the file name as it is printed out in the list_files function.

Add a file to the common password list.

path is the pathname of the file, which should contain one password on each line, that you want to include.

The file is parsed and the words are added to the common password list. A copy of the file is also copied to the not_qwerty123/priv/wordlists directory.

If adding the file results in a timeout error, try splitting the file into smaller files and adding them.

Link to this function

query(password, word_len)

View Source

Search the wordlist to see if the password is too common.

If the password is greater than 24 characters long, this function returns false without performing any checks.