2011-05-13 12 views
32

Eventuali duplicati:
Generate MD5 hash in JavaCalcolare l'hash MD5 di una stringa in scala

Ciao,

voglio calcolare l'hash MD5 di una stringa nel mio codice Scala . C'è una libreria di scala o java che posso usare per farlo rapidamente, a parte il normale modo java.security.MessageDigest?

Please Help Grazie

+6

Perché non puoi usare java.security.MessageDigest? Basta avvolgerlo in una funzione statica pubblica per creare meno confusione in Scala? –

+2

Qual è il motivo per cui non si desidera utilizzare 'MessageDigest'? –

+1

'net.liftweb.util.Helpers.md5 (str)' - ovviamente ha senso solo quando stai già usando liftweb da qualche parte ... – Debilski

risposta

68

Si può reinventare una piccolissima ruota di qui, ma basta scrivere una funzione per fare ciò che si vuole: prendere una stringa, utilizzare MessageDigest, e restituire tutto ciò (stringa esadecimale, array di byte) hai bisogno.

import java.security.MessageDigest 

def md5(s: String) = { 
    MessageDigest.getInstance("MD5").digest(s.getBytes) 
} 

md5("Hello") 

P.S. Non scrivo Scala, ma funziona e viene lasciato al lettore come un esercizio per trasformarlo in qualcosa di diverso da un array [Byte]

+0

@John:' .getInstance ("SHA") '? – Nick

+2

'new String (md5 (" Hello "))' – Debilski

+0

@Nick, sì, ho capito che :) –

Problemi correlati