Sealed

Security model

How Sealed encrypts your files

Everything you add to Sealed is encrypted on your iPhone before it's saved. Here's exactly how, and just as important, what it doesn't protect against.

The short version

Your passphrase unlocks a vault key. The vault key unlocks a separate key for every file. The files are encrypted with those keys and stored only on your phone. None of the keys are ever stored unencrypted, and none of them ever leave your iPhone.

// The layers, from what you type to your files
passphrase  ──Argon2id──▶  passphrase key
                     + this iPhone's Keychain secret
                     ──▶  unlocks the vault key (random, 256-bit)
vault key   ──▶  unlocks each file key (random, one per file)
file key    ──XChaCha20-Poly1305──▶  file contents + its details

Your passphrase

Sealed never stores your passphrase. When you unlock, it runs your passphrase through Argon2id with 3 passes over 64 MiB of memory and a random salt. That takes up to about a second on a phone, which you barely notice, but it makes trying millions of guesses slow and expensive. Sealed asks for at least 12 characters and rejects passphrases that are easy to guess.

A key tied to this iPhone

The result of Argon2id is combined with a 32-byte secret that Sealed keeps in this iPhone's Keychain, marked "this device only". That secret is never included in backups and never leaves the phone. So even if someone copied Sealed's encrypted files off your iPhone, they couldn't start guessing your passphrase on a computer: they'd also need that Keychain secret.

This is also why a Sealed vault can't be moved to a new phone, and why your recovery key works only on the iPhone that made it.

Your files

Each file gets its own random 256-bit key. The file is encrypted with XChaCha20-Poly1305 in 64 KiB pieces. Every piece carries a check tied to that file and its position, so a file can't be altered, reordered, mixed with another file or cut short without Sealed noticing.

A large video is encrypted piece by piece as it comes in, so it never has to sit unencrypted in memory all at once.

What's encrypted

What isn't hidden

Where your files are

Only on your iPhone. Sealed has no server and no account, and the vault folder is excluded from iCloud and device backups. There's no analytics in the app. Purchases go through Apple and are recorded by our payment provider under a random ID that isn't linked to you.

What encryption can't protect against

Questions

Frequently asked

Is Sealed end-to-end encrypted?

Better than that for files that never travel: there is no other end. Files are encrypted on your iPhone and never sent anywhere, so there is no server copy to protect.

Can Edishouse open my vault?

No. We never receive your files, your passphrase or your keys, and there is no master key or back door.

Why XChaCha20-Poly1305?

It is a modern authenticated cipher used widely in security software. Its long random nonces make it safe to encrypt many pieces with random values, and it detects any change to the encrypted data.

Does the encryption slow the app down?

Unlocking takes up to about a second on purpose, to slow down guessing. Opening and adding files is fast; large videos are encrypted piece by piece while they are added.

Keep reading