Changes in 4e8afc7a5f
Jonathan Miller — docs: organize wiki into guides/ and reference/ folders
| 1 | - | |
| 1 | + # Encryption | |
| 2 | + | |
| 3 | + MokoSuiteBackup supports AES-256 encryption for backup archives, providing GDPR-compliant protection for offsite storage. | |
| 4 | + | |
| 5 | + ## How It Works | |
| 6 | + | |
| 7 | + 1. Set an **Encryption Password** in the profile's Archive Settings tab | |
| 8 | + 2. After the ZIP archive is created, every file inside is encrypted using AES-256 | |
| 9 | + 3. The resulting archive is WinZip-compatible — can be opened with 7-Zip, WinZip, or any AES-capable tool | |
| 10 | + 4. The SHA-256 checksum is computed after encryption (verifies the encrypted archive) | |
| 11 | + | |
| 12 | + ## Requirements | |
| 13 | + | |
| 14 | + - PHP 7.2+ compiled with **libzip 1.2.0+** | |
| 15 | + - Uses `ZipArchive::EM_AES_256` (checked at runtime with clear error if unsupported) | |
| 16 | + | |
| 17 | + ## Setting Up | |
| 18 | + | |
| 19 | + 1. Edit a backup profile | |
| 20 | + 2. Go to the **Archive Settings** tab | |
| 21 | + 3. Enter a password in the **Encryption Password** field | |
| 22 | + 4. Save — all future backups with this profile will be encrypted | |
| 23 | + | |
| 24 | + ## Restoring Encrypted Backups | |
| 25 | + | |
| 26 | + ### Admin Restore | |
| 27 | + When restoring an encrypted backup from the admin UI, provide the decryption password in the restore form. | |
| 28 | + | |
| 29 | + ### MokoRestore (Standalone) | |
| 30 | + The standalone `restore.php` script includes a password field in Step 2 (Extract). Enter the same password used during backup. | |
| 31 | + | |
| 32 | + ### Manual Extraction | |
| 33 | + Use any tool that supports AES-256 ZIP encryption: | |
| 34 | + ```bash | |
| 35 | + 7z x backup.zip -p"YourPassword" | |
| 36 | + ``` | |
| 37 | + | |
| 38 | + ## Best Practices | |
| 39 | + | |
| 40 | + - Use strong passwords (16+ characters) | |
| 41 | + - Store the password separately from the backup (e.g. password manager) | |
| 42 | + - Test decryption after the first encrypted backup | |
| 43 | + - Different profiles can have different passwords (or no password) | |
| 44 | + |