5

Sono nuovo a scala, devo memorizzare la password utente nei dati nel database, quindi voglio che si archivi in ​​forma crittografata. qualcuno può riferirmi come si fa alla crittografia in scala 2.10 play framework 2.2. c'è un modo che io uso direttamente la crittografia in funzione di modello, poco prima della query di inserimento di una passwordcome memorizzare una password di crittografia in mysql in scala playframework 2.2?

+1

Nello stesso modo in cui lo faresti in Java. – pedrofurla

risposta

7

io personalmente uso JBCrypt (una libreria Java). Se si desidera utilizzare che si desidera aggiungere questa riga al tuo appDependencies nel vostro Build.scala "org.mindrot" % "jbcrypt" % "0.3m"

Poi nel modello import org.mindrot.jbcrypt.BCrypt

BCrypt.hashpw("password", BCrypt.gensalt(12)) sarà hash "password", che si può quindi associare al vostro SQL inserire per il tuo utente. Per verificare una password, si recupera l'hash e si utilizza BCrypt.checkpw(password, hash), che restituisce true se la password specificata è corretta.

+0

@LimbSoup ho già menzionato in questione che sto usando play framework 2.2 e non c'è alcun file build.scala in play framework 2.2 –

+2

@GovindSingh non c'è nulla che ti impedisca di usare Build.scala in Play 2.2, puoi usarlo o compilare. sbt, o presumibilmente entrambi se fossi così inclinato (non ho provato quest'ultimo) – virtualeyes

+0

@ GovindSingh Sto usando Build.scala in Play 2.2. Come detto virtuale, puoi usare quello o build.sbt. –

Problemi correlati