Inspiration
Password managers and generators are really important in this age. I have always been fascinated(and a bit scared because I got phished as a kid (╥﹏╥)) by network security. I am also getting started with network security. Most password managers are browser extensions, but I wanted to create a CLI based tool that can store credentials and uses encryption to hide their data.
What it does
The tool uses AES-256 algorithm to encrypt the data and stores it in a sqlite3 database. Only the user who knows the password(key) can decrypt the data else cannot access the passwords. The password generator uses an algorithm to generate a strong password given the password length.
How I built it
I had prior knowledge of databases, and I chose sqlite3 as it is lightweight considering the scale of the project.
Challenges I ran into
I did not know much about encryption techniques so I initially chose hashing to encrypt the data, but I realized that you cannot un-hash the hashed data, so I later implemented symmetric key encryption using fernet, but I wasn't satisfied, so I chose the current technique where I use AES-256 in GCM mode and use Scrypt to generate a secure key. But I learned a fair share of encryption while working on this project.
Accomplishments that I'm proud of
I got to know about encryption techniques and cryptography, I learnt a bit about that and hope to get better at it in the coming days.
What I learned
How Password Managers and password generators work, along with better usage of databases. I learnt about advanced encryption techniques and I wish to learn more about them.
What's next for pass-secure
I wish to create a GUI and Chrome extension for pass-secure and also improve existing features with better queries. I also wish to improve the password generator and make it more sophisticated
Log in or sign up for Devpost to join the conversation.