Як Mirage Vault захищає фото: шифрування і ключі

Оновлено 9 листопада 2026 рокуФакти з вихідного коду програми й аудиту безпеки від 2026-10-31

Mirage Vault захищає фото так: шифрує кожне з них на самому iPhone за допомогою AES-256-GCM, з окремим випадковим ключем для кожного файлу, і замикає ключ сховища за Secure Enclave. Немає ні облікового запису, ні сервера: графічний ключ, Face ID або фраза відновлення — єдині способи ввійти, а копію файлів не вдасться відкрити підбором деінде.

Хто дивиться і що отримує

Кожен рядок — це людина, яка може подивитися, що вона отримає з Mirage Vault і що вас захищає.

ХтоЩо бачитьЩо вас захищає
Хтось кидає погляд на ваш Початковий екран або зазирає через плечеЗвичайна піктограма; екран блокування — чистий пісок без назви програми й без сіткиСітка графічного ключа зʼявляється лише під пальцем і згасає, коли ви його піднімаєте; перемикач програм показує порожній знімок
Хтось тримає ваш розблокований iPhoneПорожній екран блокування сховищаFace ID або графічний ключ; після 5 невдалих спроб починається пауза на 30 с, яка подвоюється аж до 1 години; блокування при виході й коли iPhone лежить екраном донизу
Хтось знає код допуску вашого iPhoneТой самий порожній екран блокуванняСховище має власний ключ. Код допуску iPhone його не відкриває, а Face ID для сховища привʼязаний до налаштованих облич: якщо додати на iPhone нове обличчя, Face ID сховища вимкнеться, доки ви не розблокуєте сховище графічним ключем і не ввімкнете Face ID знову
Хтось має копію файлів або резервної копії в iCloudДані, схожі на випадкові, під випадковими іменамиAES-256-GCM з окремим ключем для кожного файлу; ключ сховища обгорнуто ключем Secure Enclave, який неможливо скопіювати, тож графічний ключ не вдасться підібрати офлайн. Резервна копія відкривається лише фразою відновлення з 8 слів
Хтось змушує вас розблокуватиТе сховище, яке ви вирішите показатиСховище-приманка за другим графічним ключем і Wipe Key: графічний ключ, який на місці стирає ключі справжнього сховища й натомість відкриває приманку (обидва — Mirage Pro). Обом потрібен вимкнений Face ID, бо Face ID відкриває справжнє сховище, щойно ви відкриваєте Mirage
Mirage або будь-хто, хто звертається до MirageНічого: немає ні облікового запису, ні сервера, ні копії ключаФразу відновлення показують один раз і ніде не зберігають; ніхто з Mirage ніколи її у вас не попросить

Яке насправді шифрування

Це параметри з вихідного коду програми, а не короткий переказ.

  • Ваш графічний ключ або PIN-код проходить через PBKDF2-HMAC-SHA256 щонайменше з 600 000 ітерацій, відкаліброваних так, щоб на вашому iPhone це тривало щонайменше 250 мс. Результат ніколи не є самим ключем сховища.
  • Secure Enclave обгортає результат: ECIES на ключі P-256 у Secure Enclave. Закритий ключ створюється всередині Secure Enclave, і зчитати його неможливо, тож копії файлів і Звʼязки ключів недостатньо, щоб пробувати графічні ключі на іншому компʼютері.
  • Ключ сховища (256 випадкових біт, по одному на сховище) розгортається лише в памʼяті й лише після правильного графічного ключа, Face ID або фрази відновлення.
  • Кожен файл має власний випадковий ключ, обгорнутий ключем сховища. Фото, відео, нотатки, скани, мініатюри й превʼю — усе це окремі обʼєкти.
  • Кожен файл запечатується блоками по 1 MiB за допомогою AES-256-GCM: новий nonce для кожного блока й автентифіковані дані, що привʼязують блок до його файлу, позиції та ознаки, чи він останній. Змінений, обрізаний чи переставлений блок буде виявлено, а не розшифровано.
256 біт
ключ сховища, випадковий для кожного сховища
≥ 600 000
раундів PBKDF2-HMAC-SHA256
1 MiB
на зашифрований блок
0
серверів, облікових записів, трекерів

Інші факти про формат: імена файлів на диску — випадкові 128-бітні ідентифікатори; контейнер зберігається з NSFileProtectionComplete і виключений з резервних копій пристрою; заголовок містить 8 слотів для ключів однакової довжини, а невикористані слоти заповнено випадковими байтами, тож за слотами не видно, чи існує сховище-приманка або Wipe Key. Під час криміналістичного аналізу індексні файли все ж можуть видати ознаки другого сховища; це відкритий пункт аудиту програми. Face ID має власний ключ у Secure Enclave, створений для поточного набору налаштованих облич, без переходу на код допуску iPhone. Відео відтворюються через зашифрований завантажувач ресурсів, блок за блоком, без тимчасового розшифрованого файлу. Записи про спроби злому запечатуються за допомогою HPKE (P-256, HKDF-SHA256, AES-256-GCM), поки сховище заблоковане, тож згодом відкрити їх може лише ключ справжнього сховища.

Резервне копіювання й відновлення

Зашифроване резервне копіювання в iCloud безплатне для всіх і ввімкнене за замовчуванням. Воно вивантажує ті самі зашифровані обʼєкти в приватну базу даних вашого власного облікового запису iCloud; Apple бачить шифротекст, Mirage не бачить узагалі нічого. Резервна копія відкривається лише фразою відновлення: 8 слів зі списку BIP-39 (88 біт), показаних один раз і ніде не збережених. Фраза — єдиний ключ, що працює на іншому iPhone, бо кожен інший ключ привʼязаний до Secure Enclave того iPhone, який його створив.

Екран фрази відновлення в Mirage Vault: вісім пронумерованих слів і три нагадування записати їх на паперіЕкран фрази відновлення в Mirage Vault: вісім пронумерованих слів і три нагадування записати їх на папері
Вісім слів, показаних один раз. Mirage не може показати їх знову й не може їх скинути.

Що перевіряли і хто

Формат контейнера й рівень програми перевірено 2026-10-31: читання коду, друга перевірка формату іншим рецензентом і ціль для стрес-тестування з перевірками на конкурентність, підробку, фазинг і витоки відкритого тексту (71 тест у пакеті, усі проходять, зокрема під Thread Sanitizer). Шифрування файлів витримало інверсію бітів, випадкові мутації, обрізання на кожній межі й обмін блоками між файлами: жодного разу не було повернуто неправильний відкритий текст. Знахідки стосувалися логіки сховищ і слотів та резервного копіювання в iCloud, а критичні й серйозні виправлено того самого дня; документ аудиту фіксує кожну з її статусом.

Модуль MirageCrypto, що визначає формат контейнера й ключі, написано як окремий пакет, щоб його можна було опублікувати на GitHub. Ця сторінка дасть на нього посилання, щойно він стане публічним.

Короткий опис програми в одному абзаці, піктограма й знімки екрана для публікацій — у прес-кіті.

Сторінки про безпеку

Запитання

Чи шифрує Mirage Vault фото?
Так. Кожне фото, відео, нотатка й файл шифруються на iPhone за допомогою AES-256-GCM блоками по 1 MiB, кожен файл — власним випадковим ключем. Мініатюри й превʼю теж зашифровано. На диск не записується жодної читабельної копії, а імена файлів — випадкові ідентифікатори.
Чи може Mirage прочитати мої фото?
Ні. Немає ні облікового запису Mirage, ні сервера Mirage. Ключ сховища ніколи не залишає iPhone, резервна копія в iCloud містить лише шифротекст у вашому власному обліковому записі iCloud, а фразу відновлення показують один раз і ніде не зберігають. Ніхто в Mirage не може відкрити сховище, і ніхто з Mirage ніколи не попросить у вас фразу.
Що буде, якщо хтось скопіює файли з мого iPhone?
Ця людина отримає дані, схожі на випадкові. Щоб їх відкрити, потрібен ключ сховища, обгорнутий ключем усередині Secure Enclave саме цього iPhone. Підібрати графічний ключ офлайн за копією файлів не вийде: ключ Secure Enclave неможливо витягти, тож кожна спроба має виконуватися на пристрої, де після 5 невдалих спроб починається пауза, що зростає до 1 години.
Чи збирає Mirage Vault якісь дані?
Мітка конфіденційності в App Store — «Дані не збираються». У програмі немає аналітики, служби звітів про збої, рекламних SDK і облікового запису. Покупки проходять через Apple. Єдина мережева активність — необовʼязкове зашифроване резервне копіювання у ваш власний обліковий запис iCloud.
Чи відкритий код шифрування?
Модуль MirageCrypto, що визначає формат контейнера й ключі, написано для публікації на GitHub. Доки його не опубліковано, ця сторінка описує формат достатньо докладно, щоб будь-хто згодом міг звірити заяви з опублікованим модулем.