This is a Database Mangement System project for your Password Management in daily life.
We have implimented this using Java and PL/SQL.
We have used RSA and SHA256 encryptions for the protection of all the passwords stored in our Database.
Each seprate user gets their own RSA keys generated at the time of profile creation.
There are different classes implimented for RSA and Table printings.
All the user logs are stored in a different Logs
table and can be access by either the server directly or by an admin user. (default set as u_id = 1
, shall be implimented in a better way in future.)
Execute all files in SQL
folder on the SQL Developer Server.
Once done, fill in the user
, password
and url
in the Main.java
file to connect to your server.
You can also change the salt
which is default set to NULL.
Now Run and Enjoy :)
We have used a package for SHA256 which can be found here.
The following functionalities of PL/SQL have been used and implimented in the project:
- Functions
- Procedures
- Cursors
- Sequences
- Triggers
- Packages
Along with in Java:
- Javamail API
- Java Activation framework
You may download the latest version of both JavaMail API and JAF from the official website of Java. After successfully downloading these two, extract them. Add mail.jar, smtp.jar and activation.jar file in your classpath to be eligible to send emails.
A Detailed Doc for Project Description can be accessed here.
- Add
Admin:bool
column tomaster_table
. - Add Email verification on Create user.
- Forgot Password OTP expiration.
- Abort command feature
- Provide two-factor authentication.
- Provide Strong Password Generator
- Set up a way to add any type of account credentials.
- Store Private key on user's end.
This Project was made by
Gaurav Pahwa and Kunal Demla
(For Final Database Management Project, 2021-22)