Gostaria de saber como faço para utilizar a função hash md5?
Em qual biblioteca ela fica?
Poderiam me mandar um exemplo de como fazer isso?
A intenção é pegar um texto de um textbox e transforma-lo com a função hash e depois compara-lo com outros valores…
Aguardo reotrno
Gbzao
#2
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Md5 {
private static MessageDigest md = null;
static {
try {
md = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException ex) {
ex.printStackTrace();
}
}
private static char[] hexCodes(byte[] text) {
char[] hexOutput = new char[text.length * 2];
String hexString;
for (int i = 0; i < text.length; i++) {
hexString = "00" + Integer.toHexString(text[i]);
hexString.getChars(hexString.length() - 2,
hexString.length(), hexOutput, i * 2);
}
return hexOutput;
}
public static String generate(String pwd) {
if (md != null) {
return new String(hexCodes(md.digest(pwd.getBytes())));
}
return null;
}
}
Coloque no seu pacote de util, e para utilizar:
Md5.generate("sua string");
import java.util.*;
import java.io.*;
import java.security.*;
class TesteMD5 {
private static String hexString (byte[] bytes) {
Formatter fm = new Formatter (new StringBuilder());
for (int i = 0; i < bytes.length; ++i) {
fm.format ("%02X", bytes[i] & 0xFF);
}
return fm.toString();
}
public static String calcMD5 (String str) {
try {
byte[] bytes = str.getBytes ("UTF-8");
MessageDigest md = MessageDigest.getInstance ("MD5");
return hexString (md.digest (bytes));
} catch (UnsupportedEncodingException ex) {
// UTF-8 sempre está disponível
throw new RuntimeException ("Can't happen", ex);
} catch (NoSuchAlgorithmException ex) {
// MD5 sempre está disponível
throw new RuntimeException ("Can't happen", ex);
}
}
public static void main (String[] args) {
System.out.println (calcMD5 ("Jose Aparecido"));
}
}
Desculpe ressucitar o topico mas gostaria de saber para que serve o metodo de hexa?
Abraços
Se eu me lembro bem, era para quando vc quisesse criptografar em hexa alguma string.
Exemplo: abc123 => A1B2C3E4F5