English

How Privaro Protects Your Photos

Security overview · Privaro 1.4 for iPhone and iPad · Last updated: October 25, 2026

Privaro is a vault for the photos and videos you want to keep to yourself. This page explains how it protects them: what is encrypted and how, what leaves your device, and what Privaro does not protect against.

It goes into more detail than the “How Privaro Protects You” page in the app’s Settings, for anyone who wants to check our claims before trusting the app with their photos. If something here is unclear, or you think it’s wrong, please tell us.

Encrypted on your iPhone.

In short

What Privaro is built to protect against

It is designed to protect your photos from:

It can’t protect your photos from:

Encryption

The vault key

When you set up Privaro, it creates a random 256-bit vault key on your device using Apple’s secure random number generator. Everything in your vault is encrypted with this key or with keys derived from it.

The vault key is kept in the iOS Keychain with Apple’s strictest availability setting for this kind of item (“when passcode set, this device only”). This means:

While the vault is open, the key is held in memory. Locking Privaro clears it, along with the in-memory cache of decrypted thumbnails, and stops any Wi-Fi Transfer in progress.

Privaro keeps two other 256-bit keys, created and stored the same way. One encrypts break-in photos, which have to be saved from the lock screen while the vault key isn’t available. The other encrypts your security history.

Photos and videos

Each photo or video is encrypted into its own file, in pieces of 1 MB:

Because files are encrypted in pieces, Privaro never needs the whole file decrypted at once. Videos play straight from the encrypted file: only the pieces being watched are decrypted, in memory, and no decrypted copy is written to disk. (Videos imported with much older versions of Privaro use an earlier format and are decrypted to a temporary file to play.)

Thumbnails are encrypted separately with AES-256-GCM.

All vault files and the database have iOS’s strongest file protection (“complete”), so they can’t be read at all while your iPhone is locked. They are also excluded from iPhone backups, both to iCloud and to a computer.

Information about your photos

Encrypted with your vault key: captions, original filenames, tags and album names.

Not encrypted by Privaro: the date each item was imported, its original creation date, file size, video length, type (photo, video or Live Photo), whether it’s a favorite, which album it’s in, how albums are nested and ordered, and when an item was moved to Recently Deleted. The names and coordinates of trusted places for Location Lock are not encrypted either, because they have to be checked before the vault is unlocked. All of this is still covered by the iOS file protection described above. It is never sent anywhere.

Album passwords

An album password hides an album behind a second password inside the app. The photos in it are encrypted with the vault key like everything else, so an album password adds a lock in the app, not a separate layer of encryption. The password is stored only as a salted PBKDF2-HMAC-SHA256 hash with 210,000 iterations.

Unlocking

Passcode. Your Privaro passcode is separate from your iPhone passcode. It can be 6 digits, 8 digits or a password of letters and numbers. Privaro stores only a salted PBKDF2-HMAC-SHA256 hash of it with 600,000 iterations, kept in the Keychain on this device only, and compares hashes in constant time.

Face ID and Touch ID. Biometric unlock uses Apple’s LocalAuthentication with biometrics only. If Face ID fails, your iPhone passcode can’t be used to open Privaro instead.

Failed attempts. After a number of wrong passcodes in a row (10 by default, adjustable from 3 to 20), Privaro locks you out for one minute. Each wrong attempt after that locks you out for a minute longer than the last. The countdown runs on a clock that can’t be changed in Settings, so moving the date forward doesn’t shorten it. Restarting the iPhone starts the remaining time over instead of ending it.

Automatic locking. Privaro locks as soon as it leaves the screen, and the app switcher shows a solid cover instead of your vault. It also locks when screen recording or mirroring starts. You can choose to have it lock on a screenshot too. There are several ways to lock it instantly: Panic Lock, triple-tapping the screen, turning the phone face down, or from your Apple Watch.

Privacy Modes. You choose how strict Privaro is:

ModeTo unlockExports, backups and Wi-Fi Transfer
HomeFace ID / Touch ID or passcodeAllowed
AwayFace ID / Touch ID or passcodeNeed your Privaro passcode again
TravelFace ID / Touch ID and passcodeBlocked
Maximum ProtectionFace ID / Touch ID and passcodeBlocked; capture protection and hidden previews are always on

Switching to a less strict mode needs fresh authentication. Travel and Maximum Protection can only be turned on when Face ID or Touch ID is working and you have a recovery key, so you can’t shut yourself out.

Require Auth to Share. When this is on, exporting or sharing anything asks for Face ID, Touch ID or your passcode again, even with the vault already open.

The recovery key

Your recovery key is 20 characters generated on your device from an alphabet of 31 easy-to-read symbols. That gives about 99 bits of randomness, far too many combinations to guess. It lets you set a new passcode if you forget yours, and it opens your iCloud backup on a new iPhone.

Privaro keeps only a salted SHA-256 hash of the recovery key, which is enough to check it but not to recover it. Keep the key somewhere safe outside Privaro. We can’t recover it for you.

Backups

iCloud backup (Pro, optional)

When you turn on iCloud backup, Privaro stores two files in its private iCloud folder. That folder syncs between your devices but doesn’t appear in the Files app.

Without your recovery key, neither Apple nor we can open the backup. Only your real vault is backed up. A decoy vault is never written to iCloud.

Backups made by earlier versions of Privaro locked the key with your app passcode instead, which is much easier to guess. Privaro offers to move such a backup over to your recovery key. Once you enter the recovery key in Settings, it’s moved.

Backup files you export

An exported backup file is encrypted with a random 256-bit key of its own. That key is in turn locked with a password you choose, at least 10 characters, using PBKDF2-HMAC-SHA256 with 600,000 iterations. The file can therefore be restored on any device, as long as you have the password. The password settings at the top of the file are authenticated too, so they can’t be swapped without detection.

Backups keep your photos exactly as they are, including their original metadata such as location, so that a restore gives you back what you had.

Sharing and moving files

Secure Share

Secure Share packs the items you choose into a single encrypted .privaroshare file that you can send by AirDrop, Messages or any other app. The recipient needs Privaro and the passphrase to open it, and the photos go straight into their vault, never into their Photos library.

Send the passphrase by a different route than the file.

Exporting and saving to Photos

Once you save a photo to Photos or share it through the share sheet, that copy is outside Privaro’s protection. The metadata cleaner can remove location or all optional metadata from those copies first. It works on the exported copy only, and never changes what’s in your vault.

Wi-Fi Transfer

Wi-Fi Transfer lets you upload files from a computer’s browser into your vault over your own Wi-Fi.

Files are sent from the browser to your phone over plain HTTP on your local network, so use it only on a network you trust. They’re encrypted as soon as they reach the phone.

Decoy vault and duress passcode

Decoy vault. A second passcode opens a separate vault with content you choose. Settings in a decoy session don’t show anything about the real vault: not its storage use, its recovery key, its trusted places or its history. The decoy keeps its data in a separate database, but it uses the same encryption key as the real vault. It hides your real photos from someone looking through the app. It doesn’t hide them from someone examining the device’s stored data.

Duress passcode. Entering it at the lock screen permanently erases your real vault. Privaro deletes the vault key and recovery key, every encrypted file and record, the break-in photos, the security history and your iCloud backup. It then opens an ordinary, empty vault, and the duress passcode becomes its passcode. This can’t be undone.

Phone storage doesn’t guarantee that deleted files are physically overwritten straight away. What makes them unreadable is that the key is gone. A backup file you exported earlier still opens with its own password.

Other protections

What leaves your device

WhereWhenWhat is sent
App Store and RevenueCatWhen Privaro checks whether you have Pro, and when you buy or restore itAn anonymous ID that RevenueCat creates, your App Store purchase information, and the basic technical details that come with any internet request, such as IP address, app version and iOS version. Nothing from your vault.
Your iCloud accountOnly with iCloud backup turned onThe encrypted backup and the locked copy of the vault key
Apple MapsOnly while you pick a trusted place on the mapRequests for the map of the area you’re looking at
Your Wi-Fi networkOnly during Wi-Fi TransferThe files you upload from your computer
Your Apple WatchWhen the watch app is installedLock status, Pro status and failed-attempt alerts

Privaro contains no analytics, advertising or crash-reporting code, and doesn’t require an account. If you’ve chosen to share analytics with app developers in your iPhone’s Settings, Apple may send us anonymous crash reports. Those come from iOS, not from Privaro, and contain nothing from your vault.

Known limitations

We’d rather you know these than find them out later.

  1. On iPhone, your Privaro passcode is not part of the encryption. The vault key is protected by the iOS Keychain and your iPhone’s own passcode. Your Privaro passcode and Face ID decide whether the app opens the vault, but the key isn’t derived from them. So someone who can read the Keychain of your unlocked iPhone could decrypt the vault without your Privaro passcode, for example with forensic tools or on a jailbroken device. A strong iPhone passcode is your most important protection.
  2. Some information isn’t encrypted by Privaro: dates, sizes, types, album structure and trusted places, as listed under Information about your photos. iOS file protection still applies.
  3. The decoy vault shares the real vault’s encryption key. It’s a separation inside the app, not a cryptographic one.
  4. Wi-Fi Transfer uses plain HTTP on your local network.
  5. Capture protection depends on iOS behavior Apple doesn’t document, and nothing can stop a camera pointed at the screen.
  6. Copies that leave Privaro aren’t protected by it. That includes exports, photos saved to Photos and items you shared. Backups keep original metadata on purpose.
  7. Turning off your iPhone passcode deletes the vault key. Without a backup, the vault can’t be opened after that.
  8. Privaro has not had an independent security audit, and its source code is not public. This page is our account of how it works, and we’ll keep it up to date as the app changes.

Cryptography reference

All cryptography uses Apple’s CryptoKit and CommonCrypto. Privaro doesn’t implement its own algorithms.

PurposeMethodDetails
Vault keyRandom256-bit; iOS Keychain, “when passcode set, this device only”
Photos and videosAES-256-GCM, in 1 MB piecesPer-file key from HKDF-SHA256 (vault key, 128-bit random file ID); random 96-bit nonce per piece; header and piece position authenticated
Thumbnails, captions, filenames, tags, album namesAES-256-GCMVault key; random 96-bit nonce
App passcodePBKDF2-HMAC-SHA256600,000 iterations, 16-byte random salt, constant-time comparison
Recovery key20 random charactersAbout 99 bits; stored as a salted SHA-256 hash
iCloud backup keyAES-256-GCM key wrapKey from PBKDF2-HMAC-SHA256 of the recovery key, 600,000 iterations, 16-byte random salt
Exported backup filesAES-256-GCMRandom 256-bit file key, wrapped under PBKDF2-HMAC-SHA256 of your password (at least 10 characters), 600,000 iterations
Secure Share filesAES-256-GCMKey from PBKDF2-HMAC-SHA256 of the passphrase (at least 10 characters), 600,000 iterations, random salt
Album passwordsPBKDF2-HMAC-SHA256210,000 iterations, random salt

Reporting a security problem

If you find a security problem in Privaro, please email [email protected] before making it public, so we can fix it first. We’ll reply, keep you updated, credit you in the release notes if you’d like, and give you a free lifetime code for Privaro Pro.