Skip to content

HawkPass is a secure local password manager made in Java.

Notifications You must be signed in to change notification settings

psmietanaa/HawkPass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HawkPass

This is a simple local password manager written in Java. It is a command line program that securely stores user passwords. The password manager has 256-bit security. Therefore, any encryption will be done using 256-bit keys and hashing will be done using 512 bits. For more information, refer to the password manager specification.

Design

  • Two separate keys for encryption and integrity protection.
  • Encryption using AES-256 in the CBC mode with PKCS5Padding.
  • Integrity protection using HMAC-SHA512.
  • Slow hashing using PBKDF2 with 65536 iterations to make brute-force attacks difficult.
  • Salts and IVs generated using cryptographically secure random number generators.
  • New IV generated after every operation to ensure that two files with the same stored passwords never have the same signature.

Diagram

diagram

Features

  • Generate a random and unpredictable password for an account
  • Store a domain, username, and password for an account
  • Retrieve a domain, username, and password for an account
  • Remove an account and its password
  • Change an account's password

Usage

  • To run the program, use the command java -jar HawkPass.jar
  • To compile the code, use the command javac HawkPass.java
  • To run the code, use the command java HawkPass

Prerequisites

  • Java 14

About

HawkPass is a secure local password manager made in Java.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages