Как работают хранилища для фото? Что происходит на деле
Приложение-хранилище копирует фото из медиатеки «Фото» в собственное хранилище приложения и ставит перед ними замок. Некоторые приложения этим и ограничиваются. Лучшие ещё и шифруют каждый файл, так что без ключа, который есть только у вас, фото не прочитать.
Что нужно знать?
- Хранилище — отдельное место. Фото в хранилище больше не в медиатеке, поэтому они уходят из «Фото», воспоминаний и общих медиатек.
- Замок — не шифрование. Экран с PIN-кодом останавливает случайный взгляд. Шифрование делает файлы нечитаемыми без ключа.
- Многое решает то, у кого ключ. Если компания может сбросить ваш замок, она может добраться до ваших фото.
Куда попадают фото?
Приложение-хранилище сохраняет фото в собственном хранилище, а не в медиатеке «Фото». Приложения, которым вы дали доступ к «Фото», их там не видят.
При импорте приложение читает фото из медиатеки и записывает свою копию. Оригинал остаётся в «Фото», пока вы его не удалите. Удалённые фото затем 30 дней лежат в «Недавно удалённых», поэтому их тоже нужно очистить. Об этом — руководство что происходит с фото, когда вы их удаляете.
Что на самом деле делает замок?
Хранилища бывают двух видов, и снаружи они выглядят одинаково.
- Хранилища «скрыть и запереть». Файлы лежат в хранилище приложения как обычные изображения. PIN-код или узор решает лишь, покажет ли их приложение.
- Шифрующие хранилища. Файлы перемешаны шифром. Ваш PIN-код, узор или парольная фраза превращается в ключ, который их расшифровывает.
В первом случае любой, кто доберётся до самих файлов, увидит ваши фото. Во втором — увидит шум.
Как работает шифрование в хранилище?
Обычная схема состоит из трёх шагов.
- Вы открываете хранилище. Вводите код или рисуете узор.
- Создаётся ключ. Приложение превращает введённое в ключ шифрования. В продуманной схеме это происходит на вашем устройстве, и ключ никуда не отправляется.
- Файлы открываются по мере просмотра. Приложение расшифровывает каждое фото, когда вы на него смотрите. Когда хранилище блокируется, оно забывает ключ.
Миниатюры и поисковые индексы тоже важны. Если приложение шифрует фото, но хранит маленькие превью в открытом виде, превью всё выдают.
А резервные копии и новые телефоны?
Хранилищу нужно куда-то делать резервную копию. Некоторые приложения загружают данные на свои серверы с учётной записью. Другие копируют в ваш iCloud.
Вопрос в том, что содержит копия. Зашифрованная копия бесполезна для любого без вашего ключа. Это же значит, что потерянный ключ никто не сбросит, поэтому хорошее приложение даёт фразу восстановления, которую нужно записать.
Что такое ложные хранилища?
Некоторые приложения позволяют второму коду открыть второе, безобидное хранилище. Если на вас давят, чтобы вы открыли приложение, вы открываете его. Это работает, только если приложение не показывает список хранилищ.
Как работает Cryptile?
- Каждый файл, миниатюра и поисковый индекс зашифрованы AES-256-GCM.
- Ключи создаются на вашем устройстве из нарисованного вами узора. Аккаунта и сервера нет, и разработчик никогда не хранит ваши ключи.
- Другой узор открывает другое хранилище, и списка хранилищ нет. Размеры файлов дополняются, а ложные слоты скрывают, сколько хранилищ существует.
- Резервная копия — зашифрованная копия в iCloud. Для восстановления нужна фраза восстановления из 9 слов. Сброса нет.
Ядро опубликовано для аудита по лицензии с доступным исходным кодом, вместе с моделью угроз и тестовыми векторами. Что проверить в любом приложении, перечислено в руководстве безопасно ли приложение-хранилище для фото.
Что это не защищает
Ни одно хранилище не защищает фото, пока оно открыто на экране, или если телефон в этот момент заражён вредоносной программой. Узор слабее парольной фразы, поэтому используйте 8 точек или больше. Если кто-то видел, как вы его рисуете, ваше хранилище у него. Если потерять и узор, и фразу восстановления, хранилище исчезнет.
Как это делается в Cryptile
Cryptile шифрует фото при поступлении и хранит ключ на вашем телефоне. Снимки, сделанные встроенной камерой приложения, никогда не попадают в медиатеку.
Cryptile бесплатна для 2 хранилищ, 100 фото и 10 видео. Plus снимает ограничения и добавляет аварийный узор и поиск внутри хранилища за $19.99 в год (пробный период 7 дней) или $39.99 один раз.