Skip to content

Password Generator Web Application (Client UI + Server API)

License

Notifications You must be signed in to change notification settings

tktintin/password-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Password Generator

Description

A web app to generate password(s) or passphrase(s) based on user preferences. The strength of the generated passwords is evaluated by calculating their entropy based on the formula $E = \log_2(C^L)$ [1].

  • Front-end: Client side UI
  • Back-end: Server side APIs have the format of /api/v1/character_type/password_length/amount_to_be_generated. Note that character_type and password_length are required, whereas amount_to_be_generated is optional and defaults to 1.
  • Tech Stack: HTML, CSS, Bootstrap, JavaScript, Python, Flask

Demo

Generate Password(s)

Generate Passphrase(s)

Local Installation & How to Use

One time set up for virtual environment:

$ python3.10 -m venv .venv
$ source .venv/bin/activate
$ python -m pip install -U pip
$ python -m pip install -r utilities/requirements.txt
$ deactivate

Start the server:

$ cd server
$ flask run

Start the client:

$ cd client
$ python -m http.server 

Server Side API Examples

  • /api/v1/digits/10/
  • /api/v1/digits/10/20
  • /api/v1/digits/10/20?omit=123
  • /api/v1/lower/10/
  • /api/v1/lower/10/20
  • /api/v1/lower/10/20?omit=abc
  • /api/v1/upper/10/
  • /api/v1/upper/10/20
  • /api/v1/upper/10/20?omit=ABC
  • /api/v1/letters/10/
  • /api/v1/letters/10/20
  • /api/v1/letters/10/20?omit=abcABC
  • /api/v1/alphanum/10/
  • /api/v1/alphanum/10/20
  • /api/v1/alphanum/10/20?omit=123abcABC
  • /api/v1/special/10/
  • /api/v1/special/10/20
  • /api/v1/special/10/20?omit=$%#^*
  • /api/v1/all/10/
  • /api/v1/all/10/20
  • /api/v1/all/10/20?omit=$%#^*123abcABC
  • /api/v1/words/5/
  • /api/v1/words/5/20
  • /api/v1/words/5/20?separator=@$%

References

[1] Okta | Password Entropy: The Value of Unpredictable Passwords

License

MIT License

About

Password Generator Web Application (Client UI + Server API)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published