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