Я пишу приложение Node.JS, которое будет хранить журналы чата в хранилище данных (т.е. MongoDB) вместе с некоторой другой пользовательской информацией. Я уже использую bcrypt для хранения соленых хэшей для паролей пользователей, поэтому я нахожусь там.
Какой лучший способ шифрования постоянных данных? Я говорю о конфиденциальных пользовательских данных, таких как номера телефонов и журналы чата. Если моя база данных будет взломана, я не хочу, чтобы эта информация использовалась.
Однако мне нужно двустороннее шифрование / дешифрование, поскольку мне нужно иметь возможность использовать значения в виде простого текста (т. Е. Номера телефонов для Twilio , журналы чата предназначены для пользователей, чтобы увидеть их старые сообщения).
Я изучаю нод-криптографию, но я не смог найти никаких примеров того, как сделать это в режиме реального времени.
ОБНОВЛЕНИЕ : Я должен был упомянуть, что "журналы" чата - это фактически полные разговоры, которые в реальном времени переносятся в "комнаты", когда пользователи присоединяются к ним (то есть они могут видеть всю историю чата). или, по крайней мере, его часть). Поэтому мне нужно было бы иметь возможность быстро и быстро шифровать и дешифровать (если не в режиме реального времени, по крайней мере, с помощью какого-то рабочего процесса).