Clipaste - Encrypted Clipboard History
By default, Clipaste encrypts your saved clipboard history on disk. This protects the content you copied (text, rich text, metadata, and history records) from being read directly from the app’s local storage by someone who gains access to your files (for example, on a shared computer account, a stolen laptop, or a disk backup).
This is "encryption at rest": it protects the history stored by Clipaste, not the system clipboard itself.
Why it matters
- Privacy on shared machines: encrypted history is tied to your OS user account, so other OS users can’t trivially read your clipboard history files.
- Protection against casual data exposure: copied secrets (API keys, passwords, personal messages) are less likely to leak via backups, indexing tools, or accidental file sharing.
- No password friction: encryption is enabled by default and does not require you to create or remember an extra password.
- Transparent control: you can disable encryption at any time (with an explicit confirmation) and Clipaste explains the consequences.
What Clipaste encrypts
When history encryption is enabled, Clipaste encrypts the Hive database that stores clipboard history entries, including (depending on what you copied):
- Plain text content
- HTML/rich text content (if enabled)
- App name/source metadata (when available)
- Timestamps
- Favorite flag
- File path lists (if you copied files)
- Image history metadata (e.g., the stored image filename reference)
What is NOT encrypted
- Image files saved to disk under your configured history folder are currently stored as regular files (unencrypted). The database may store only the filename reference.
- The live system clipboard is not encrypted by Clipaste. Other apps can read clipboard data according to OS rules.
- General app settings (theme, locale, etc.) remain in SharedPreferences and are not encrypted.
How encryption works
Storage engine:
- Clipaste uses Hive CE (hive_ce) for local history storage.
- History records are stored in a dedicated Hive database file.
Cipher and key size:
- When encryption is enabled, Clipaste opens the history box with Hive’s built-in AES cipher.
- The encryption key is 32 bytes long (AES-256).
Per-user key management (no password):
- Clipaste generates a random 32-byte key using a cryptographically secure random source.
- The key is stored in the OS credential store using flutter_secure_storage (for example: Keychain on macOS, Credential Manager/DPAPI-backed storage on Windows, depending on platform).
- The key never needs to be typed by you and is not sent to any server.
- Because the key is stored in the OS credential store, access is tied to your OS user account.
Clipaste treats switching encryption as a storage reset for safety and clarity. When you change the "Encrypt clipboard history" setting, Clipaste asks for confirmation. If you confirm, Clipaste clears the current clipboard history and then reopens the appropriate database file (encrypted or unencrypted). This avoids partial migrations and makes it explicit that encrypted and unencrypted histories are separate stores.
Limitations
- Clipaste encryption protects the stored history database on disk; it does not prevent other software running under your account from reading clipboard contents while the app is running.
- Image files saved to disk are not encrypted in the current design.
- Encryption is not a substitute for OS security (device encryption, strong login password, malware protection).
FAQ
Is Clipaste "end-to-end encrypted"?
No. Clipaste’s encryption is local, at-rest encryption for the clipboard history database. Clipaste does not upload your clipboard history to a server.
Do I need to create a password?
No. Encryption uses a per-device, per-OS-user key stored in the OS credential store.
Can I turn encryption off?
Yes. Clipaste supports disabling history encryption, with a confirmation that explains history will be cleared when switching modes.
Will encryption slow things down?
Encryption adds overhead during reads/writes of history data, especially for very large history sizes. Clipaste is optimized to minimize unnecessary rewrites and may compact storage after bulk deletes to keep performance stable.
Home • Cross-Platform • Clipaste • Encryption