Encrypting more than text
DataCloak is a desktop encryption manager for text, images, and MP3 audio. Users can type or import content, generate a decryption key, name each encryption, and keep it in an account-specific history.
Decrypted text can be copied to the clipboard, while recovered images and audio can be exported back to the computer.
- Text and .txt files
- JPG, JPEG, and PNG images
- MP3 audio
Accounts, history, and sharing
Users can create local accounts, browse past encryptions by media type, inspect or delete records, and send encrypted items to another DataCloak account. Received items appear in an inbox with sender information, while the corresponding decryption key remains required to recover the content.
Building DataCloak
The application was built with Java 17 and Swing using separate controllers, models, views, and encryption services. Jackson persists accounts and typed encryption records to JSON, while Maven manages the build.
New records use AES-256-GCM with PBKDF2-HMAC-SHA256 key derivation, randomized salts and initialization vectors, and authenticated payloads. JUnit 5 tests cover encryption round trips, incorrect keys, file restoration, legacy compatibility, and JSON persistence.



