Security & encryption
How Arca actually keeps photos private
Most “vault” apps hide your photos behind a password while the files stay readable on disk. Arca encrypts them, with verifiable cryptography and nothing stored on any server. Here's exactly how.
Per-file encryption
Every photo and video gets its own random AES-256-GCM data key, via Apple's CryptoKit. Files are encrypted in 128 KiB chunks with counter nonces, and each chunk's authenticated additional data binds it to its index and to the total chunk count — so a reordered, truncated, or altered file fails to authenticate rather than decrypting to garbage.
Key derivation (Argon2id)
Your PIN is never stored. It runs through Argon2id from libsodium (64 MiB memory cost, 3 iterations) to derive a key-encryption key that wraps the vault master key. Memory-hardness is the point: it denies an attacker the GPU and ASIC parallelism that makes short PINs fall quickly.
Secure Enclave biometrics
Face ID / Touch ID unlock uses Secure Enclave ECIES with the key bound to .biometryCurrentSet. Enrol a new face or fingerprint and that key is invalidated by iOS itself — the biometric path re-locks and only your PIN reopens the vault.
Encrypted thumbnails & metadata
The metadata manifest is an AES-GCM-sealed JSON blob under an HKDF subkey of the vault master key, and thumbnails are encrypted the same way as originals. Filenames, albums, dates and the grid you scroll are all ciphertext at rest — a forensic image reveals sizes and timestamps, not content.
Streaming video decrypt
Video plays through an AVAssetResourceLoaderDelegate that decrypts each range on demand as the player asks for it. Full-resolution clips are never written to disk in the clear — not to a temp file, not to a playback cache.
No server, by design
There is no account, no sync backend, and no copy of your media anywhere but your phone. The strongest privacy property here is not a clever protocol — it is the absence of a system that could be breached, subpoenaed, or misconfigured.
The key path
From your PIN to your photos
- 1
You enter your PIN. It is never stored or sent anywhere.
- 2
Argon2id (memory-hard) turns the PIN into a key-encryption key (KEK).
- 3
The KEK unwraps the Vault Master Key (VMK), which lives only in memory.
- 4
Each file's individual AES-256 data key is unwrapped from the VMK on demand.
- 5
Photos, thumbnails, and metadata are decrypted in memory as you browse — never to disk.
- 6
Lock the app and the VMK is wiped from memory. Without your PIN, the vault is just ciphertext.
Promises we don't break
Security invariants
- No plaintext media bytes ever touch disk — including thumbnails, caches, and temp files.
- Your PIN is never stored anywhere; only a memory-hard derived key wraps the vault.
- Changing your PIN re-wraps the master key only — your photos are never re-encrypted or exposed.
- Exports and backups are explicit actions you take. Nothing auto-uploads, ever.
- A lapsed subscription never locks you out of photos you've already imported.
The limits
What Arca does not protect against
Someone who knows your PIN
The PIN is the key. Zero-knowledge means there is no second factor we hold in reserve and no recovery path we could offer even under legal compulsion. Anyone who watches you type it, or who you tell, has the vault. The decoy vault exists for exactly the situation where you are being made to open it.
A device compromised while the vault is open
Encryption at rest protects data at rest. While the vault is unlocked the master key is in memory and decrypted images are on screen by definition. Malware with sufficient privileges on a jailbroken or exploited device, at that moment, is outside what any app-level design can defend.
Anything you take back out
Export an original, screenshot the grid, or share a photo to another app and that copy leaves Arca's protection entirely. It lands in the Files app or the Camera Roll under normal iOS rules. Portability and containment pull in opposite directions, and we chose portability — with the tradeoff stated plainly rather than hidden.
A forgotten PIN
There is no reset. This is the direct cost of the property that makes the rest true: if we could restore your access, your photos would be readable by someone other than you. Keep a .arcavault backup, and remember the PIN.
Full disclosure
What we can and cannot see
Arca has no server, so there is no place for your photos to arrive even if we wanted them. What the app does link is Firebase Crashlytics and Analytics, for crash reports and basic product usage. We are telling you this because you would find it in a network trace eventually, and finding it undisclosed on a page like this one should cost us your trust.
Neither SDK is permitted to see vault data. It is a hard rule in the codebase, not a preference: no media, no filenames, no album names, no item counts, no keys and no PINs may be attached to a crash report or an analytics event. A crash inside the vault reports the stack trace, not what you were looking at.
We could tell you we collect nothing at all. It would read better and it would not be true.
The honest part
Don't take our word for it
FAQ
Security questions
What encryption does Arca use? +
AES-256-GCM for content, with a unique data key per file, counter nonces, and authenticated additional data per chunk. Keys are derived from your PIN using Argon2id (64 MiB memory cost), and the biometric path is backed by the Secure Enclave.
Can Arca (or anyone) recover my vault if I forget my PIN? +
No. Arca is zero-knowledge — your PIN is the only key and it's never stored or transmitted. We cannot reset it or read your vault. Keep an encrypted backup and remember your PIN.
Does any photo data leave my device? +
No. Arca has no server and no account. Backups and exports only happen when you explicitly create them, and the backup file is encrypted before it leaves the app.
Does Arca collect any analytics? +
The app links Firebase Crashlytics and Analytics for crash reports and basic product usage. Neither is allowed to see vault data — no media, filenames, album names, item counts, keys or PINs are ever attached to a crash report or an event. Your photos and the metadata describing them stay on the device.
What stops someone modifying my encrypted files? +
AES-256-GCM is authenticated encryption, so any change to the ciphertext fails verification instead of decrypting to corrupted data. Each 128 KiB chunk additionally carries authenticated data binding it to its own index and the total chunk count, so removing, duplicating or reordering chunks is detected too.
What happens to my photos if I change my PIN? +
Only the wrapping changes. A PIN change re-wraps the vault master key with a newly derived key-encryption key; your media is never re-encrypted and never passes through a decrypted state on disk. That is why the operation is instant no matter how large the vault is.
What if Arca disappears tomorrow? +
You keep everything. Export originals losslessly at any time, or take the single-file encrypted .arcavault backup, which you control. A lapsed subscription never locks you out of items you already imported — that is an explicit rule in the codebase, not a current promotion.
Your photos. Truly private.
Download Arca and lock your first photos away in under a minute. No account, no cloud, no one but you.
Free to download · iPhone · iOS 18+