MD5、SHA加密,常用于加密用户名密码,当用户验证时。没有解密的方法。
java 代码
- import java.security.MessageDigest;
- public class Digest {
- public static void main(String[] args) throws Exception {
- String str = "abcdefghijklmnopqrstuvwxyz";
- byte[] data = str.getBytes();
- System.out.println("MD5: " + getDigest(data, "MD5"));
- System.out.println("SHA: " + getDigest(data, "SHA"));
- System.out.println("SHA_256: " + getDigest(data, "SHA-256"));
- System.out.println("SHA_384: " + getDigest(data, "SHA-384"));
- System.out.println("SHA_512: " + getDigest(data, "SHA-512"));
- }
- public static String getDigest(byte[] data, String algorithm)
- throws Exception {
- MessageDigest md5 = MessageDigest.getInstance(algorithm);
- md5.update(data);
- return toHexString(md5.digest());
- }
- public static String toHexString(byte[] b) {
- StringBuilder sb = new StringBuilder(b.length * 2);
- for (int i = 0; i < b.length; i++) {
- sb.append(HEXCHAR[(b[i] & 0xf0) >>> 4]);
- sb.append(HEXCHAR[b[i] & 0x0f]);
- }
- return sb.toString();
- }
- private static final char[] HEXCHAR = { '0', '1', '2', '3', '4', '5', '6', '7',
- '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
- }