██████╗ ██████╗ ██╗ ██╗██████╗ ████████╗ ██████╗ ██╔═══██╗██╔══██╗╚██╗ ██╔╝██╔══██╗╚══██╔══╝██╔═══██╗ ██║ ██║██████╔╝ ╚████╔╝ ██████╔╝ ██║ ██║ ██║ ██║▄▄ ██║██╔══██╗ ╚██╔╝ ██╔═══╝ ██║ ██║ ██║ ╚██████╔╝██║ ██║ ██║ ██║ ██║ ╚██████╔╝ ╚══▀▀═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ██╗ ██████╗ ██████╗██╗ ██╗███████╗██████╗ ██║ ██╔═══██╗██╔════╝██║ ██╔╝██╔════╝██╔══██╗ ██║ ██║ ██║██║ █████╔╝ █████╗ ██████╔╝ ██║ ██║ ██║██║ ██╔═██╗ ██╔══╝ ██╔══██╗ ███████╗╚██████╔╝╚██████╗██║ ██╗███████╗██║ ██║ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
qryptolocker is a post-quantum cryptography powered file encryption system based on a client-server architecture.
- master key safely stored on the server
- client-server communication secured with post-quantum cryptography
- partial decryption of the arborescence with sub-keys
- minimal attack surface for memory analysis
For further informations about the architecture and the key mechanisms, please refer to the docs/architecture.md document.
- Rust stable (1.70 or later) - install via rustup
git clone https://github.com/d0nflamingo/qryptolocker
cd qryptolocker
cargo build --releasecargo run -p server --bin qrypto-c2cargo run -p clientThe use of words for decryption was mandatory for the sake of the initial school project but is obviously a bad practice as it reduces the total number of possibility for the password.
- Replace requirement to input password for decryption with automated cryptographic key validation
- Simplify the install and deployment process
- Establish proper adversary model to improve overall application security
qryptolocker is MIT licensed - you are free to fork it, adapt it, and use it in any project, including commercial ones. No contribution process is set up at this time.
If you find a bug or have a suggestion, feel free to open an issue
MIT - see LICENSE for details.