TODO: Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.
This project is a prototype of a encrypted recycle bin.
All files are encrypted with an random pin and they're also signed digitally.
The pin must not be outputed to the user nor saved anywere on the computer.
The user, to recover the file, has 3 attempts to guess the pin of the file, if it fails to guess the pin the file gets deleted
# Getting Started
# Available Cyphers
TODO: Guide users through getting your code up and running on their own system. In this section you can talk about:
So far there is only one cypher implemented, AES-CBC
1. Installation process
2. Software dependencies
3. Latest releases
4. API references
# Build and Test
# Available HASH
TODO: Describe and show how to build your code and run the tests.
The hash it's only being used to generate a secure key to encrypt the file, the implemented hash is SHA256
# Commands available
restorefile
validatefile
setcypher
sethash
setenabled
showconfig
help
exit
# Restore a file
restorefile [options]
-l lists the encrypted files
-p <pin><file> tries to decrypt the file using the given pin
This command can only contain one of the options
# Validate a file
validatefile [file]
The file can be an absolute path or if the file it's in the restored folder there's only the need to type the file name
The Signature (.sig) and Public Key (.pk) must be in the same directory of the file being checked
# Settings
setchypher [cypher][keysize]
The keysize for now it's allways 16 as there is a problem with java that gives allways Ilegal Key Size even when the sizes are 24 or 32 (valid key sizes for AES-CBC)
# Contribute
sethash [hash]
TODO: Explain how other users and developers can contribute to make your code better.
For now only SHA256 is implemented and changing this setting will not have any impact on the software
If you want to learn more about creating good readme files then refer the following [guidelines](https://www.visualstudio.com/en-us/docs/git/create-a-readme). You can also seek inspiration from the below readme files:
setenabled [boolean]
-[ASP.NET Core](https://github.com/aspnet/Home)
Setting this setting to true or false will enable or disable the encryption process
-[Visual Studio Code](https://github.com/Microsoft/vscode)