Giter Site home page Giter Site logo

spgen's Introduction

The "Snowflake Password Generator"

Passwords should probably be like snowflakes... no two are alike! (unless of course, you're using this generator and you happen to get the same exact password with the same length, words, symbols, and numbers... not super likely, though.)

What is this?

A password generator! This is a quick side project I whipped up. The idea is to create passwords that are both secure and memorable, not just a long string of digits and letters. Most of the words used are randomly pulled from word banks.

There's also an option that exists that allows you to log your "favorite words." Once you do so, you'll occasionally see some of those words in passwords the tool generates. Hopefully that should make for passwords that are a little more relevant to you and your interests.

Why make it?

I'm not the best at giving my passwords variety, and while I've certainly tried to use the various services out there that store and save your passwords, I never really liked the passwords they recommended (something like: djz5214Jwhy23_31!?$az). Instead, I'd much rather prefer a password just as long, but something a little more memorable (like the well-known "correctHorseBatteryStaple" thanks to xkcd: https://xkcd.com/936/).

Thus, I decided to write a small password generator that asks you a few questions and uses your personal preferences to generate something long, secure, and most importantly, interesting.

CREDIT WHERE IT'S DUE: I found a great public repo containing lots of commonly-used english words. I've used some of these to generate most words in the generator. Here it is: (https://github.com/first20hours/google-10000-english). I also borrowed some ASCII art from this site: (https://www.asciiart.eu/holiday-and-events/christmas/snowmen) Lastly, I used the the free software located at (http://www.jar2exe.com/) to convert the .jar file into an .exe file.

Want to try it out?

Download the latest folder inside the "download" folder. Be sure to take a look at the README inside to get a good idea on how to use it.

Future Plans

I'm hoping to implement the following features when I find some spare time:

Near Future

  • Remembering last-used password settings from the last session
  • Writing generated passwords to a file for easy copying
  • Making the UserData and Generator classes serializable, so the entire object can be saved/read upon startup, rather than fooling around with writing specified strings to a file and reading them back in
  • Using IFTTT to allow users to get their passwords sent to custom-made Webhooks events (https://ifttt.com/maker_webhooks)
  • Using a HTTP GET to ping a random word generator online (having the old file-reading technique as a backup when Internet isn't available). (Words would be stored in a buffer that refills itself whenever empty, to minimize GETs)

Might be a stretch.. but maybe

  • A password-protected storage area for past-used passwords (including notes with the password, such as what website it's for, a corresponding username, etc.)
  • Themed word-generation based on nearby holidays/current events, or user-specified "theme files"

spgen's People

Contributors

cwshugg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.