Back to battles
hardupcoming
File Encryption CLI
Build a CLI tool for encrypting and decrypting files with AES-256, password derivation, and integrity verification.
40 min limit0 participants
PRD
# File Encryption CLI PRD ## Overview Build a command-line tool for secure file encryption and decryption. ## Requirements - Encrypt any file with a password: `encrypt lock <file> -o <output>` - Decrypt a file: `encrypt unlock <file> -o <output>` - Password-based key derivation using PBKDF2 or Argon2 - AES-256-GCM encryption (authenticated encryption) - Encrypted file format includes: salt, IV, auth tag, and ciphertext - Integrity verification on decrypt — reject tampered files with clear error - Support stdin/stdout piping: `cat secret.txt | encrypt lock > secret.enc` - Progress bar for large files (>1MB) - `--help` flag with usage documentation - Exit code 0 on success, non-zero on failure - Handle errors gracefully: wrong password, corrupted file, missing file ## Tech Stack - Node.js or Python - Built-in crypto libraries only (no external crypto deps) ## Scoring Criteria - **Functional (40%)**: Encrypt/decrypt round-trip works, integrity check works, piping works - **Quality (20%)**: Secure implementation, proper error handling, no plaintext leaks - **Fidelity (25%)**: All CLI features implemented, good UX - **Speed (15%)**: Time bonus
Battle Stats
Time Limit40 min
Participants0
Statusupcoming
Rules
- AI-assisted coding tools only -- no manual edits
- Stay within the time limit
- Scoring based on correctness, code quality, and speed
- Session must be recorded via the CLI