加密Firebase云功能中的数据

时间:2018-05-11 20:36:56

标签: firebase firebase-realtime-database firebase-authentication google-cloud-functions google-admin-sdk

我正在使用Firebase开发一个网络应用程序,教师可以在其中创建作业,学生可以在该作业中提交文件。我想实现一个密码功能,教师可以在创建作业时设置密码,只有知道密码的学生才能提交。

我考虑过以下方式实现此功能:

当教师设置密码时,我会将密码发送到 Firebase云功能,该功能将加密密码并将其存储在 Firebase实时数据库 Firebase管理SDK 。当学生提交密码时,密码将被发送到云功能,该功能将解密实际加密的密码(存储在实时数据库中),将其与客户端发送的密码相匹配,并将响应发送给客户端。客户端包含一条消息,告诉用户密码是否匹配。

我有四个问题。

  1. 这种方式(如上所述)是否足够安全?
  2. 如果这种方式是安全的,那么我应该如何加密密码?是否有任何库函数可以加密Firebase云功能中的数据?或者我应该使用自己的加密算法吗?
  3. 将加密密码存储在Firebase实时数据库中吗?如果没有,那么我应该在哪里存储它?
  4. 如果这种方式不安全,那么我该如何实现上述功能?

0 个答案:

没有答案