AES-GCM в детском приложении: замена AI для безопасности данных
Что изменилось: отказ от AI и внедрение шифрования
Вчера в офисе маленькой команды, разрабатывающей семейное приложение MIO, мы собрались вокруг экрана, чтобы обсудить очередной фича‑пакет. Родитель, открыв приложение, видит список задач и баланс монеток. Вместо того, чтобы каждый раз нажимать кнопку «Проверить» и ждать ответа от облачной модели, он видит простую кнопку «Подтвердить» и мгновенно получает подтверждение.
Мы решили, что в каждом элементе UI не будет «умного» поведения. Вместо этого мы полностью зашифровали данные на устройстве, используя алгоритм AES‑GCM, и оставили AI только там, где это действительно нужно – например, при генерации голосовых подсказок.
Практический результат: пользователь больше не рискует, что его личные данные попадут в облако, а команда разработки избавилась от необходимости поддерживать сложные модели и их обновления.
Источник: Habr
Почему это важно для родителей и разработчиков
Для родителей приложение должно быть надёжным и простым. Если данные о выполнении задач хранятся в открытом виде, любой, кто получит доступ к устройству, может увидеть, какие привычки формирует ребёнок. Это особенно чувствительно, когда речь идёт о детях.
Для разработчиков – отказ от «AI‑в‑каждой‑кнопке» снижает техническую сложность и расходы. Не нужно обучать модели, хранить большие датасеты и платить за облачные вычисления. Вместо этого можно сосредоточиться на тестировании и поддержке уже существующего кода.
Как работает MIO без AI: простые задачи и магазин
Приложение MIO – это «детский тамагочи» с элементами привычек. Родитель создаёт шаблоны задач: «Помыть зубы», «Сделать домашнее задание» и т.д. Для каждой задачи задаётся награда – монета, которую ребёнок может потратить в виртуальном магазине.
Внутренний кошелёк ребёнка хранит только количество монеток. При старше 7 лет родитель может включить валюту (рубли, доллары, евро), но это делается только после проверки, что ребёнок понимает понятие денег. Всё взаимодействие – простое действие‑проверка‑награда, без лишних «умных» подсказок.
Как мы реализовали безопасность: AES‑GCM и CryptoKit
Для защиты данных мы использовали встроенный в iOS CryptoKit алгоритм AES‑GCM. Он обеспечивает шифрование «от конца до конца» – от ввода пользователем до сохранения в локальной базе данных.
Преимущества: - Надёжность – AES‑GCM считается стандартом индустрии для шифрования. - Производительность – шифрование выполняется быстро, не замедляя работу приложения. - Простота – в коде всего несколько строк, без сторонних библиотек.
Мы не использовали сторонние сервисы для шифрования, чтобы избежать зависимости от внешних провайдеров и потенциальных юридических рисков.
Что стоит проверить перед внедрением
| Что проверить | Как проверить | Кто отвечает |
|---|---|---|
| Корректность шифрования | Запустить юнит‑тесты, проверяющие, что данные расшифровываются правильно | Тестировщик |
| Производительность | Измерить время шифрования/дешифрования при больших объёмах | Инженер |
| Совместимость с iOS | Проверить работу на разных версиях ОС | Разработчик |
| Уровень безопасности | Попросить независимого эксперта провести аудит | Руководитель |
| Легальность хранения | Убедиться, что шифрование соответствует требованиям РФ | Юрист |
Эти проверки можно выполнить за несколько дней, не требуя масштабных изменений в инфраструктуре.
Как использовать AI осознанно в будущем
AI может быть полезен, но только там, где он действительно добавляет ценность. В MIO мы оставили AI только для голосовых подсказок и озвучивания задач. Это позволяет: - Сократить нагрузку на серверы (модель запускается локально). - Сохранить контроль над тем, какие данные отправляются в облако. - Предоставить ребёнку «живое» взаимодействие без лишних «умных» кнопок.
Если в будущем понадобится добавить более сложный AI‑функционал, сначала оцените: 1. Необходимость – действительно ли это решает проблему пользователя. 2. Безопасность – какие данные будут передаваться. 3. Стоимость – расходы на обучение и хостинг модели.
Что может пойти не так и как избежать
| Возможная проблема | Как избежать |
|---|---|
| Неправильная реализация шифрования | Проводить ревью кода и тесты |
| Перегрузка устройства при шифровании | Оптимизировать алгоритм, использовать асинхронность |
| Неправильное хранение ключей | Хранить ключи в защищённом хранилище (Keychain) |
| Необоснованный ввод AI | Ограничить AI только проверенными сценариями |
Что делать дальше: чеклист и рекомендации
- Проверить наличие всех ключей в Keychain и их корректность.
- Запустить тесты шифрования/дешифрования на реальных данных.
- Проверить производительность на целевых устройствах.
- Обсудить с юристом вопросы хранения и обработки персональных данных.
- Определить, какие AI‑функции можно добавить без риска, и задокументировать их.
Если все пункты пройдены, можно запустить обновление в TestFlight и собрать отзывы от родителей.
Дополнительные рекомендации по внедрению шифрования
При внедрении AES‑GCM в детское приложение важно учитывать несколько ключевых аспектов. Во‑первых, необходимо обеспечить правильное управление ключами шифрования – они должны генерироваться на устройстве и храниться исключительно в Keychain. Во‑вторых, стоит предусмотреть механизм восстановления доступа в случае потери устройства или сброса настроек. Для этого можно использовать iCloud Keychain или резервное копирование ключей с согласия родителя. В‑третьих, важно регулярно обновлять библиотеки безопасности и следить за выходом патчей для CryptoKit. Наконец, рекомендуется проводить нагрузочное тестирование шифрования на старых устройствах, чтобы убедиться, что производительность остаётся приемлемой для пользователей. Дополнительно стоит документировать все этапы внедрения шифрования и проводить регулярные аудиты безопасности, чтобы своевременно выявлять и устранять потенциальные уязвимости.
Источники
- Почему мы отказались от «AI в каждой кнопке» и зато встроили AES‑GCM в детское приложение / Хабр
- Документация Apple CryptoKit
- Рекомендации по безопасному хранению ключей в iOS
Статья подготовлена редакцией ONFF. Если у вас есть вопросы или предложения, пишите нам на почту.
Что почитать дальше
- Обновления безопасности от Anthropic: что изменилось и почему это важно
- AI-фотографии 2026: как работает генерация изображений, где применять и какие ограничения
- FeFET-чип для ИИ: один чип вместо двух снижает стоимость инференса
- Облачные AI-сервисы: скрытая угроза утечки конкурентных данных компании
- Проверка АЗС в Екатеринбурге: где смотреть цены и наличие топлива