# План задач по маскировке и шифрованию данных ## 1. Анализ данных - [ ] Определить, какие поля и таблицы содержат чувствительные данные (например, email, ФИО, адрес, сообщения, вложения). - [ ] Составить список полей для маскировки (для user/guest) и для шифрования (для хранения в БД). ## 2. Маскировка данных (токенизация) - [ ] Реализовать функцию маскировки на backend (Node.js): - [ ] Для ролей user/guest возвращать токены вместо реальных данных (например, `token_`). - [ ] Для admin возвращать реальные значения. - [ ] Внедрить маскировку в API-эндпоинты, возвращающие списки пользователей, чатов, сообщений и т.д. - [ ] Обновить frontend для корректного отображения токенов и подсказок (например, «Данные скрыты, доступ только администратору»). ## 3. Шифрование данных при хранении - [ ] Выбрать алгоритм шифрования (например, AES-256-GCM). - [ ] Реализовать функции шифрования/дешифрования на backend для чувствительных полей. - [ ] Хранить ключи шифрования только в переменных окружения (не в коде и не в БД). - [ ] Мигрировать существующие данные: зашифровать чувствительные поля в БД. - [ ] Обновить логику создания/обновления записей: шифровать данные перед сохранением. - [ ] Обновить логику чтения: расшифровывать данные для admin, возвращать токены для user/guest. ## 4. Шифрование файлов и вложений - [ ] Реализовать шифрование файлов/вложений перед сохранением на диск или в облако. - [ ] Обеспечить расшифровку файлов только для admin. ## 5. Безопасное хранение ключей - [ ] Настроить хранение ключей шифрования в переменных окружения (Akash/Flux Cloud). - [ ] Обновить Dockerfile и инструкции деплоя для поддержки секретов. ## 6. Тестирование и аудит - [ ] Провести тестирование маскировки и шифрования для всех ролей. - [ ] Проверить, что admin видит реальные данные, user/guest — только токены. - [ ] Провести аудит безопасности (внешний или внутренний). ## 7. Документация - [ ] Описать логику маскировки и шифрования в README или отдельном разделе. - [ ] Добавить инструкции по настройке переменных окружения и деплою на Akash/Flux Cloud.