The project is not maintained anymore. See [announcement](https://gitlab.com/mojo42/Jirafeau/-/issues/360).
If you are forking the project, feel free to mention it in [comments](https://gitlab.com/mojo42/Jirafeau/-/issues/360). I will add it here.
+- @Blackstareye [fork](https://gitlab.com/shared1270023/Jirafeau)
# Jirafeau
-![Build Status](https://img.shields.io/gitlab/pipeline/mojo42/Jirafeau/master.svg)
![Made With](https://img.shields.io/badge/made_with-php-blue.svg)
![License](https://img.shields.io/badge/license-agpl--3.0-blue.svg)
-![Contribution](https://img.shields.io/badge/contributions_welcome-brightgreen.svg?labelColor=brightgreen)
Welcome to the official Jirafeau project, an [Open-Source software](https://en.wikipedia.org/wiki/Open-source_software).
- Shows progression: speed, percentage and remaining upload time
- Preview content in browser (if possible)
- Optional password protection (for uploading or downloading)
+- option to require, check or generate file download passwords
- Set expiration time for downloads
- Option to self-destruct after first download
- Shortened URLs using base 64 encoding
Data encryption can be activated in options. This feature makes the server encrypt data and send the decryt key to the user (inside download URL).
The decrypt key is not stored on the server so if you loose an url, you won't be able to retrieve file content.
-Encryption is configured to use AES256 in OFB mode.
+Encryption is configured to use [XChaCha20-Poly1305](https://en.wikipedia.org/wiki/ChaCha20-Poly1305).
In case of security troubles on the server, attacker won't be able to access files.
By activating this feature, you have to be aware of few things:
- Data encryption has a cost (cpu) and it takes more time for downloads to complete once file sent.
- During the download, the server will decrypt on the fly (and use resource).
-- This feature needs to have the mcrypt php module.
+- This feature needs to have the Sodium php module.
- File de-duplication will stop to work (as we can't compare two encrypted files).
- Be sure your server do not log client's requests.
- Don't forget to enable https.