如何在scala playframework 2.2中的mysql中存储加密密码?

5 encryption scala password-encryption playframework playframework-2.2

我是scala的新手,我必须将用户密码存储在数据库中的数据中,所以我希望它以加密形式存储.任何人都可以参考我如何在scala 2.10播放框架2.2中加密.有没有一种方法可以直接在模型函数中使用加密,就在插入密码查询之前

Mic*_*jac 8

我个人使用JBCrypt(一个Java库).如果您想使用它,您可以将此行添加到Build.scala中的appDependencies"org.mindrot" % "jbcrypt" % "0.3m"

然后在你的模型中 import org.mindrot.jbcrypt.BCrypt

BCrypt.hashpw("password", BCrypt.gensalt(12))将哈希"密码",然后您可以将其绑定到您的用户的SQL插入.要检查密码,您将检索哈希和使用BCrypt.checkpw(password, hash),true如果给定的密码正确,则返回.

  • @GovindSingh没有什么可以防止你在Play 2.2中使用Build.scala,可以使用它或build.sbt,或者假设两者都是如此倾向(没有尝试过后者) (2认同)