46 lines
1.2 KiB
Markdown
46 lines
1.2 KiB
Markdown
|
# The Horcrux project
|
||
|
|
||
|
This tool allows you to securely store your data by encrypting the content and splitting it into several files.
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
To encrypt a file use the following syntax:
|
||
|
|
||
|
```horcrux create -n <horcrux count> <input path> <output path>```
|
||
|
- `-n <horcrux count>`: number of files the encrypted data will be split into.
|
||
|
- `<input path>`: file to encrypt.
|
||
|
- `<output path>`: folder where to save the encrypted files.
|
||
|
|
||
|
|
||
|
To decrypt a file use the following syntax:
|
||
|
|
||
|
```horcrux load -k <decryption key> <input files> <output file>```
|
||
|
- `-k <decryption key>`: provide the encryption key, base64 encoded.
|
||
|
- `<input files>`: horcrux chunks to be reassembled. Order matters :)
|
||
|
- `<output file>`: decrypted data.
|
||
|
|
||
|
|
||
|
## Compile
|
||
|
|
||
|
This tool is compiled using Cmake and it has been tested with gcc-10 on linux.
|
||
|
|
||
|
Use the following commands to compile the tool:
|
||
|
```
|
||
|
mkdir build && cd build
|
||
|
cmake ..
|
||
|
make
|
||
|
```
|
||
|
### Dependencies
|
||
|
|
||
|
`horcrux` needs OpenSSL-1.1 or a newer version.
|
||
|
|
||
|
## Test
|
||
|
|
||
|
GTest unit tests are available.
|
||
|
|
||
|
You can run `make test` from the build directory, or use `test/horcrux_test` for a more verbose output.
|
||
|
|
||
|
## Install
|
||
|
|
||
|
`make install` will install `horcrux` to `/usr/local/bin` by default.
|