Skip to content

Linux command line interface encryption program (encrypting / decrypting files, or folders) using AES-256-GCM (Galois Counter Mode) as an encryption algorithm and SHA-256 as HKDF (Key Derivation Function based on HMAC).

License

AndryRafam/Shadow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHADOW

About the program

Shadow is a command line interface (CLI) encryption program using AES-256 in Galois/Counter Mode (GCM) as an encryption algorithm and SHA-256 for HKDF (Key Derivation function based on HMAC). The program works with two passwords (each different). For more information about AES-256, Galois Counter Mode (GCM) and HKDF (Hash Derivation Key Function), follow the link below.

Output Example

Output

Precision about the output

Results are not outputted on the screen. The program tells only to the user that the folder/file has been encrypted or decrypted; which is indeed the case. Open the file / folder to see the result.

Precision about the Salt.txt file

The Salt.txt file is as it sounds, a file which contains random strings used as salt parameter for passwords. The salt parameters (one for each passwords, two by two different) are generated randomly. Users can update the Salt.txt file at will.

How to run on Linux

1) In command line, go to the program directory.
2) Type <make> to compile, build and link.
3) Type ./shadow and press <enter> to run.

Password Rules

1) Each passwords must be at least 16 characters long and different.
2) Each passwords must contains at least one UPPER CASE character.
3) Each passwords must contains at least one LOWER CASE character.
4) Each passwords must contains at least one SPECIAL CASE character.
5) Each passwords must contains at least one number between 0 to 9.

Supported commands

General

  • encrypt: Enable the encryption mode
  • decrypt: Enable the decryption mode
  • show_license: Print the license
  • clear: Clear the screen
  • quit: Terminate the program

Encryption mode

  • usage: Print tutorial for encryption mode
  • password: Print password rules
  • show_license: Print the license
  • clear: Clear the screen
  • exit: Exit the encryption mode
  • quit: Terminate the program

Decryption mode

  • usage: Print tutorial for decryption mode
  • password: Print password rules
  • show_license: Print the license
  • clear: Clear the screen
  • exit: Exit the decryption mode
  • quit: Terminate the program

About

Linux command line interface encryption program (encrypting / decrypting files, or folders) using AES-256-GCM (Galois Counter Mode) as an encryption algorithm and SHA-256 as HKDF (Key Derivation Function based on HMAC).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published