Skip to content

Password manager created to help you keep all your passwords safe and secure.

Notifications You must be signed in to change notification settings

agenttomek99/PasswordManager

Repository files navigation

Introduction

This programme was created to help you to keep all your passwords organized, safe and secure. It’s an RSA implementation coded in Java 14, the most recent version with some additional tweaks for extra security.

How does it work?

User has to create two files. They’ll contain public key and passwords. First one stores value of e, the second encrypted passwords. Please note that n isn’t stored anywhere. It’s generated by the hashCode() method. HashCode value for user password and login is multiplied and then raised to the power of 15 to get significantly bigger number. User’s n is the next prime number larger than the result of preceding operation. You might think that this solution has some cons. It has but they’re minor. In theory there’re multiple possibilities of getting the same result, but keep in mind fact that it’s very unlikely and what’s the most important: the n value is a part of a public key in pure RSA implementation. Hence in the worst-case scenario attacker will get the entire public key which is totally fine. The rest is as usual in RSA algorithm.

About the programme

GUI

At the beginning user has to create an account. He has to type both password and login for his vault. The programme will calculate and copy the value of d to the clipboard. The user should store it in a secure place such as for example another password manager or he can encrypt it on his own. Now the user can add some passwords to his vault by hitting "Add new account". If he wants to display the vault he should press "Display user's vault" button.

To do list:

  • GUI – URGENT - mostly done
  • Support for multiple users
  • Override hashCode() method
  • Python port
  • Android app
  • Fuction to remove given webpage from the database
  • Random password generator

Known issues:

Programme isn’t idiot-proof so for example if you’ll be asked about a number and you enter some string something’ll go wrong and exception’ll be thrown.

Installation

  1. Import project files to your IDE (i.e IntelliJ IDEA).
  2. Create file to store pubilc key and encrypted passwords.
  3. Build and run.
  4. Enjoy the app.

About

Password manager created to help you keep all your passwords safe and secure.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages