Лучший способ зашифровать и расшифровать сохраненные данные в Node.JS? - PullRequest
3 голосов
/ 27 июля 2011

Я пишу приложение Node.JS, которое будет хранить журналы чата в хранилище данных (т.е. MongoDB) вместе с некоторой другой пользовательской информацией. Я уже использую bcrypt для хранения соленых хэшей для паролей пользователей, поэтому я нахожусь там.

Какой лучший способ шифрования постоянных данных? Я говорю о конфиденциальных пользовательских данных, таких как номера телефонов и журналы чата. Если моя база данных будет взломана, я не хочу, чтобы эта информация использовалась.

Однако мне нужно двустороннее шифрование / дешифрование, поскольку мне нужно иметь возможность использовать значения в виде простого текста (т. Е. Номера телефонов для Twilio , журналы чата предназначены для пользователей, чтобы увидеть их старые сообщения).

Я изучаю нод-криптографию, но я не смог найти никаких примеров того, как сделать это в режиме реального времени.

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

Ответы [ 2 ]

4 голосов
/ 27 июля 2011

Лучше всего использовать require('crypto').

Однако вам нужно будет перенести его на клиентскую сторону.Удачи с этим.(Не должно быть слишком сложно с browserify)

0 голосов
/ 01 декабря 2011

Сделайте все это на стороне сервера, если вы сделаете это на стороне клиента, вам нужно будет предоставить свои ключи шифрования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...