Rust implementation of DarkPrism.
Hosts files on the web using these steps:
- Encrypt with AES from user-defined password
- Split into smaller chunks
- Upload smaller chunks, while retaning the identifiers
- Create a file listing the identifiers in order of the file
- Upload that, then serve the identifier of that to the user
User can then input that identifier and encryption key back into metafora for it to download the file.
- Upload files, unzipped and unencrypted
- Print the content of the identifier's file to stdout
- Change above to create a user-specified file and fill that with the content
- Encrypt file
- Decrypt file
- Split file after encryption
- Form file after decryption
Install rust and required libraries:
First run this to install rust (if you haven't already):
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shThen install libraries (dependant on OS).
nix developThis will run bash and put you in the current directory with the required libraries already setup.
Note
You will have to rerun this everytime you wish to compile.
sudo dnf install openssl-devel make automake gcc gcc-c++sudo apt install libssl-dev build-essentialsudo zypper in libopenssl-devel make automake gcc gcc-c++ sudo apk add openssl-libs-static build-baseNo idea. Start with OpenSSL or similar libraries.
First make sure you've cloned the repo:
git clone https://github.com/catdeal3r/metaforaOr, if you already have, run this inside of the cloned folder to update the codebase:
git reset --hard HEAD
git pullTo build in release mode:
cargo build --releaseThe compiled binary will be located here: ./target/release/metafora
To build in debug mode:
cargo buildThe compiled binary will be located here: ./target/debug/metafora