Je voulais générer un code de hachage unique pour une chaîne dans Android. Y a-t-il une bibliothèque prédéfinie ou nous devons générer manuellement. S'il vous plaît n'importe quel corps si sait s'il vous plaît présenter un lien ou un code.
Réponses
Trop de publicités?
Bryan Kemp
Points
663
Ceci est une classe que j'utilise pour créer des hachages Message Digest
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Sha1Hex {
public String makeSHA1Hash(String input)
throws NoSuchAlgorithmException, UnsupportedEncodingException
{
MessageDigest md = MessageDigest.getInstance("SHA1");
md.reset();
byte[] buffer = input.getBytes("UTF-8");
md.update(buffer);
byte[] digest = md.digest();
String hexStr = "";
for (int i = 0; i < digest.length; i++) {
hexStr += Integer.toString( ( digest[i] & 0xff ) + 0x100, 16).substring( 1 );
}
return hexStr;
}
}
Boris Pavlović
Points
22207
shareef
Points
1482
J'utilise ceci, je l'ai testé comme clé de ma carte mémoire EhCacheManager
C'est plus propre je suppose
/**
* Return Hash256 of String value
*
* @param text
* @return
*/
public static String getHash256(String text) {
try {
return org.apache.commons.codec.digest.DigestUtils.sha256Hex(text);
} catch (Exception ex) {
Logger.getLogger(HashUtil.class.getName()).log(Level.SEVERE, null, ex);
return "";
}
}
j'utilise maven mais c'est le pot commons-codec-1.9.jar
user2260963
Points
250