How cyprien63/encrypto works
ENCRYPTO encrypts and decrypts files or folders into its versioned .crypto format, with metadata inspection and both desktop and command-line entry points. The main desktop workflow selects input, reviews metadata, runs encryption or decryption, then saves the result; the CLI offers parallel encrypt, decrypt, and inspect commands. Folder inputs are ZIP-archived, while payloads are compressed and protected with PBKDF2-derived AES-GCM keys. README capabilities supplement the sampled source; the Kivy and browser UI wiring is only partially visible.
Main entry points: app.py Desktop API · cli.py CLI commands · main.py Encryption core · index.js Webview UI
Components 19
Desktop interface
- Webview UI
web/index.js - UI document
web/index.html - File icons
web/icons_library.js - Desktop API
app.py
Kivy interface
- Kivy screens
src/main.py - Kivy layout
src/app.kv - Encryption core
src/main.py
Command line
- CLI commands
src/cli.py
Crypto format
- Format metadata
app.py - Folder ZIP archive
app.py - Key derivation
app.py - Compression
app.py - AES-GCM encryption
app.py - .crypto file
app.py - Decrypt and restore
app.py
Other components
- User
- Files and folders
- CLI user
- Saved output
Connections 42
- User → Webview UI: uses
- Webview UI → UI document: renders
- Webview UI → File icons: reads icons
- Webview UI → Desktop API: calls API
- Desktop API → Files and folders: selects input
- Desktop API → Format metadata: inspects
- Desktop API → Folder ZIP archive: archives folders
- Desktop API → Key derivation: derives key
- Desktop API → Compression: compresses
- Desktop API → AES-GCM encryption: encrypts
- Desktop API → .crypto file: writes
- Desktop API → Decrypt and restore: decrypts
- Decrypt and restore → .crypto file: reads
- Desktop API → Saved output: saves result
- User → Kivy screens: uses
- Kivy screens → Kivy layout: renders
- Kivy screens → Encryption core: starts operation
- Encryption core → Files and folders: reads input
- Encryption core → Folder ZIP archive: archives folders
- Encryption core → Key derivation: derives key
- Encryption core → Compression: compresses
- Encryption core → AES-GCM encryption: encrypts
- Encryption core → .crypto file: writes
- Encryption core → Decrypt and restore: decrypts
- Encryption core → Saved output: saves result
- CLI user → CLI commands: runs command
- CLI commands → Files and folders: reads input
- CLI commands → Format metadata: inspects
- CLI commands → Folder ZIP archive: archives folders
- CLI commands → Key derivation: derives key
- CLI commands → Compression: compresses
- CLI commands → AES-GCM encryption: encrypts
- CLI commands → .crypto file: writes
- CLI commands → Decrypt and restore: decrypts
- CLI commands → Saved output: writes result
- Folder ZIP archive → Compression: archive bytes
- Compression → AES-GCM encryption: compressed bytes
- Key derivation → AES-GCM encryption: key
- AES-GCM encryption → Format metadata: ciphertext payload
- Format metadata → .crypto file: serializes format
- .crypto file → Decrypt and restore: supplies payload
- Decrypt and restore → Saved output: restores data