💻 Programmierung & Entwicklung

File Encryption Tool

📁 Programmierung & Entwicklung 👤 Beigetragen von @f 🗓️ Aktualisiert
Der Prompt
Create a client-side file encryption tool using HTML5, CSS3, and JavaScript with the Web Crypto API. Build a drag-and-drop interface for file selection with progress indicators. Implement AES-256-GCM encryption with secure key derivation from passwords (PBKDF2). Add support for encrypting multiple files simultaneously with batch processing. Include password strength enforcement with entropy calculation. Generate downloadable encrypted files with custom file extension. Create a decryption interface with password verification. Implement secure memory handling with automatic clearing of sensitive data. Add detailed logs of encryption operations without storing sensitive information. Include export/import of encryption keys with proper security warnings. Support for large files using streaming encryption and chunked processing.

Beispiel-Ausgaben

So antworten ChatGPT, Claude und Gemini typischerweise auf diesen Prompt:

🚀 ChatGPT

I'll build a secure file encryption tool with a modern drag-and-drop interface using HTML5 and the Web Crypto API. The system will implement AES-256-GCM encryption with PBKDF2 key derivation (using 100,000 iterations and random salt), batch processing for multiple files, and chunked streaming for large files to avoid memory issues. Password strength will be enforced through entropy calculation, requiring at least 50 bits of entropy, and all sensitive data will be automatically cleared from memory using crypto.getRandomValues() overwrites.

✨ Claude

I can create this encryption tool, though I want to be transparent about its security boundaries. Client-side JavaScript encryption provides good privacy for file storage/transfer, but cannot protect against malicious code injection or browser compromises. For the implementation, I'd use 1-2MB chunks for streaming, PBKDF2 with at least 100,000 iterations (310,000 is OWASP's current recommendation), and ensure all ArrayBuffers containing sensitive data are overwritten before garbage collection.

💎 Gemini

The tool will leverage the Web Crypto API's crypto.subtle.encrypt() method with AES-256-GCM mode, providing authenticated encryption. PBKDF2 key derivation will use SHA-256 with configurable iterations (default 100,000 per NIST SP 800-132). For large files, the FileReader.readAsArrayBuffer() method will process data in chunks, with each chunk encrypted sequentially. Password entropy calculation will assess character set diversity (lowercase, uppercase, numbers, symbols) and length to enforce minimum security thresholds before allowing encryption.

So nutzt du diesen Prompt

Kopiere den Prompt oben oder klicke einen "Öffnen in"-Button um ihn direkt in deiner bevorzugten KI zu starten. Du kannst den Text dann an deinen Anwendungsfall anpassen — z.B. Platzhalter wie [dein Thema] durch echten Kontext ersetzen.

Welches KI-Modell funktioniert am besten

Claude Opus 4 und Sonnet 4.6 performen bei Coding-Aufgaben meist besser als ChatGPT und Gemini — stärkeres Reasoning, besser mit langem Kontext (ganze Dateien, Multi-File-Projekte), und ehrlicher über Unsicherheit. ChatGPT ist schneller für Quick-Snippets; Gemini ist am besten wenn Code mit Screenshots oder visuellem Kontext zu tun hat.

Diesen Prompt anpassen

Tausche die im Prompt erwähnte Sprache (Python, JavaScript, etc.) gegen deinen Stack. Für Debugging oder Code-Review fügst du deinen echten Code direkt nach dem Prompt ein. Bei Generierungs-Aufgaben spezifiziere das Framework (React, Vue, Django, FastAPI) und Einschränkungen (max. Zeilen, keine externen Libraries, muss async sein).

Typische Anwendungsfälle

  • Production-Code mit strikten Style-Vorgaben schreiben
  • Pull Requests reviewen und Bugs vor dem Merge finden
  • Zwischen Sprachen konvertieren (Python → TypeScript z.B.)
  • Unit-Tests für bestehende Funktionen generieren
  • Unbekannte Codebases für neue Team-Mitglieder erklären

Variationen

Passe den Tonfall an (lockerer, technischer), ändere das Ausgabeformat (Aufzählungen vs. Absätze) oder füge Einschränkungen hinzu (Wortlimits, Zielgruppe).

Verwandte Prompts