Шифрование данных в облачных функциях Firebase - PullRequest
0 голосов
/ 11 мая 2018

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

Я думал о реализации этой функции следующим образом:

Когда учитель установит пароль, я отправлю пароль в облачную функцию Firebase , которая зашифрует пароль и сохранит его в базе данных реального времени Firebase , используя Firebase Admin SDK . Когда студенты отправят пароль, пароль будет отправлен в облачную функцию, которая расшифрует действительный зашифрованный пароль (который хранится в базе данных в реальном времени), сопоставит его с паролем, отправленным клиентом, и отправит ответ на запрос. клиент, содержащий сообщение, которое сообщит пользователю, совпадает ли пароль или нет.

У меня четыре вопроса.

  1. Будет ли этот способ (описанный выше) достаточно безопасным?
  2. Если этот способ безопасен, то как мне зашифровать пароль? Есть ли библиотечная функция для шифрования данных в облачных функциях Firebase? Или я должен использовать свой собственный алгоритм шифрования?
  3. Безопасно ли хранение зашифрованного пароля в базе данных Firebase в реальном времени? Если нет, то где его хранить?
  4. Если этот способ не защищен, то как я могу реализовать описанную выше функцию?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...