Skip to content

AML-COL/CipherDrop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CipherDrop

Drop a file. Enter a password. Done.

A minimal file encryptor for macOS. Drag and drop any file onto the window to encrypt it, or drop an .enc file to decrypt it. Uses AES-256-GCM with Argon2id key derivation — the same cryptography used by modern password managers.

Download CipherDrop.app from Releases.


How it works

Encrypting:

  1. Drop any file onto the window
  2. Enter a password
  3. Click ENCRYPT FILE
  4. A .enc file appears next to the original — ready to share safely

Decrypting:

  1. Drop a .enc file onto the window
  2. Enter the password
  3. Click DECRYPT FILE
  4. The original file is recovered with its exact original name

The app auto-detects the mode — no buttons to toggle, no settings to configure.


Encrypted file format

[ 0  : 32 ]   Argon2id salt
[ 32 : 44 ]   AES-GCM nonce  (12 bytes, random)
[ 44 : 48 ]   original filename length  (uint32)
[ 48 : 48+N ] original filename  (UTF-8)
[ 48+N :    ] AES-256-GCM ciphertext + 16-byte authentication tag

The original filename is stored inside the encrypted payload — decryption always recovers the exact original name, regardless of what the .enc file is called.


Security

Property Detail
Encryption AES-256-GCM — authenticated, 128-bit tag
Key derivation Argon2id — time=3, memory=64 MB, parallelism=4
Wrong-password detection GCM tag verification — no checksum stored
Nonce 12-byte random, unique per encryption

A wrong password produces a GCM authentication failure — it never outputs garbage data.


Installation

macOS — App bundle

  1. Download CipherDrop.app from Releases
  2. Drag to Applications
  3. First launch: right-click → Open (Gatekeeper bypass for unsigned apps)

From source (macOS / Linux / Windows)

git clone https://github.com/AML-COL/CipherDrop
cd CipherDrop
python3 -m venv .venv
source .venv/bin/activate        # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python3 main.py

Build the .app (macOS only)

chmod +x build_mac.sh && ./build_mac.sh
# → dist/CipherDrop.app

Requirements

  • macOS 11+ (for the app bundle)
  • Python 3.11+ (for running from source — works on Windows and Linux too)

License

MIT © AML-COL

About

Minimal macOS file encryptor — drag, drop, encrypt. AES-256-GCM + Argon2id.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages