Skip to content
🔒command line tool checking password safety🔒
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows Create go.yml Mar 28, 2020
Images Add files via upload Mar 22, 2020
Known-pwds Add known-pwds Mar 23, 2020
Tests Add testcases Mar 28, 2020
.gitignore First Add Mar 14, 2020 Update Mar 29, 2020
eng_words_list.txt Generate random Mar 22, 2020
go.mod Add basic-rules Mar 21, 2020
go.sum Fix ReadInput error Mar 16, 2020
main.go Add 5 mln pwds Mar 23, 2020


This is a command line tool that checks how much a password is safe.

This tool doesn't store any information!



Just write go run main.go in your terminal inside ../pwd-safety$

So: ../pwd-safety$ go run main.go

It reads from standard input the entered password.

First, it searches in known-pwd1.txt and known-pwd2.txt files if there is the password or the reverse password.

The calculation isn't immediate, It searches for over 5.2 million hacked passwords

Then, just do little calculations, checking if the basic rules are respected.

Like if there are UPPERCASE CHARS, lowercase chars, numb3rs and symbols.

It stores the length of the password and the ratio [ unique different chars / total chars].

It calculates then the entropy of a password.

Password entropy is a measurement of how unpredictable a password is.

The formula for entropy is: CodeCogsEqn

Where E = password entropy

R = pool of unique characters

L = number of characters in your password

Then R^L = the number of possible passwords and the log of it is the number of bits of entropy.

When the score <= 68(reasonable) it generates a random password using a list of all english words.


Max score: 100


  • Very weak: 0 - 35
  • Weak: 36 - 59
  • Reasonable: 60 - 68
  • Strong: 69 - 80
  • Very strong: 81 -100

Scoring parameters:

  • Found in known password
  • Found in known password reversed
  • Password composition:
    • numbers
    • symbols
    • uppercase
    • lowercase
  • Unique different characters
  • Length
  • Entropy








  • GIT command on prompt:

          git -clone
  • Download by Browser on:



      - Added:
              - Generates random password when score <= REASONABLE
              - Errors code table


      - First pre-release

If you liked it drop a ⭐️ for contact me.

                                  Edoardo Ottavianelli ©
You can’t perform that action at this time.