메시지 다이제스트 알고리즘 MD5(중국어 명칭은 메시지 다이제스트 알고리즘 제5판)는 컴퓨터 보안 분야에서 널리 사용되는 해시 함수로 비교적 일반적으로 사용되는 해시 알고리즘이다.
Java에서 이를 달성하는 방법에는 두 가지가 있습니다. 먼저 더 까다로운 코드인 코드에 대해 이야기하겠습니다.
다음과 같이 코드 코드를 복사합니다 .
공개 클래스 md5_test {
//MD5 문자열 상수
private final static String[] hexDigits = { "0", "1", "2", "3", "4",
"5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };
공개 정적 무효 메인(String[] args) {
// TODO 자동 생성된 메서드 스텁
노력하다 {
MessageDigest messageDigest= MessageDigest.getInstance("MD5");
System.out.println(byteArrayToHexString(messageDigest.digest("baidu.com".getBytes())));
} 잡기(NoSuchAlgorithmException e) {
// TODO 자동 생성된 캐치 블록
e.printStackTrace();
}
}
개인 정적 문자열 byteArrayToHexString(byte[] b) {
StringBuffer resultSb = new StringBuffer();
for (int i = 0; i < b.length; i++) {
resultSb.append(byteToHexString(b[i]));
}
결과Sb.toString()을 반환합니다.
}
/** 바이트를 16진수 형식의 문자열로 변환*/
개인 정적 문자열 byteToHexString(byte b) {
int n = b;
만약 (n < 0)
n = 256 + n;
int d1 = n / 16;
int d2 = n % 16;
hexDigits[d1] + hexDigits[d2]를 반환합니다.
}
}
다음은 간단하지만 jar 패키지를 가져와야 합니다: commons-codec,
예를 들어, 저는 다음 commons-codec-1.4.jar 코드를 사용합니다:
다음과 같이 코드 코드를 복사합니다 .
org.apache.commons.codec.digest.DigestUtils 가져오기;
공개 클래스 ToMain {
공개 정적 무효 메인(String[] args) {
System.out.println(DigestUtils.md5Hex("baidu.com"));
}
}