cenc (camellia encrypt) - stupid simple file encryption written in pure C
Note: You can choose any file extension you like. If you use the same name for both the input file and the output file, the original file will be overwritten. For example, if a file is named test.pdf, you could choose test.pdf.whatever or test.pdf.crypt as the output file.
Encryption:
cenc -e -i inputfile -o outputfile
Example:
cenc -e -i test.pdf -o test.pdf.crypt
Decryption:
cenc -d -i inputfile -o outputfile
Example:
cenc -d -i test.pdf.crypt -o test.pdf
--=[ OS MATRIX ]=--
linux ok
freebsd|hardenedbsd ok
netbsd|openbsd ok
macos/darwin wip
-- eof --
See For compilation instructions, see compile.md
Popular encryption tools comparison.
| cenc | Picocrypt | VeraCrypt | 7-Zip GUI | BitLocker | Cryptomator | |
|---|---|---|---|---|---|---|
| Free | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Bundled | ✅ Yes |
| Open Source | ✅ GPLv2+ | ✅ GPLv3 | ✅ Multi | ✅ LGPL | ❌ No | ✅ GPLv3 |
| Cross-Platform | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | ❌ No | ✅ Yes |
| Size | ✅ 21.5 kB | ✅ 3 MiB | ❌ 20 MiB | ✅ 2 MiB | ✅ N/A | ❌ 50 MiB |
| Portable | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | ❌ No |
| Permissions | ✅ None | ✅ None | ❌ Admin | ❌ Admin | ❌ Admin | ❌ Admin |
| Ease-Of-Use | ✅ Easy | ✅ Easy | ❌ Hard | ✅ Easy | ✅ Easy | 🟧 Medium |
| Cipher | ✅ Camellia-256 | ✅ XChaCha20 | ✅ AES-256/other | ✅ AES-256 | 🟧 AES-128/256 | ✅ AES-256 |
| Key Derivation | ✅ PBKDF2 | ✅ Argon2 | ✅ PBKDF2 | ❌ SHA-256 | ❓ Unknown | ✅ Scrypt |
| Data Integrity | ✅ Always | ✅ Always | ❌ No | ❌ No | ❓ Unknown | ✅ Always |
| Deniability | ✅ Always | ✅ Supported | ✅ Supported | ❌ No | ❌ No | ❌ No |
| Reed-Solomon | ❌ No | ✅ Yes | ❌ No | ❌ No | ❌ No | ❌ No |
| Compression | ❌ No | ✅ Yes | ❌ No | ✅ Yes | ✅ Yes | ❌ No |
| Telemetry | ✅ None | ✅ None | ✅ None | ✅ None | ❓ Unknown | ✅ None |
| Audited | ❌ No | ✅ Yes (1) | ✅ Yes | ❌ No | ❓ Unknown | ✅ Yes |
| Maintained | ✅ Yes | ❌ [No] | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
(1) https://github.com/Picocrypt/storage/blob/main/Picocrypt.Audit.Report.pdf


