1. 개요

체크섬은 파일을 고유하게 식별하는 데 사용되는 일련의 문자입니다. 파일 사본이 원본과 동일한지 확인하는 데 가장 일반적으로 사용됩니다.

이 짧은 사용방법(예제)에서는 Java 에서 파일에 대한 MD5 체크섬을 생성하는 방법을 살펴봅니다.

2. MessageDigest 클래스 사용

파일에 대한 MD5 체크섬을 생성하기 위해 java.security 패키지의 MessageDigest 클래스를 쉽게 사용할 수 있습니다 .

byte[] data = Files.readAllBytes(Paths.get(filePath));
byte[] hash = MessageDigest.getInstance("MD5").digest(data);
String checksum = new BigInteger(1, hash).toString(16);

3. Apache Commons 코덱 사용

Apache Commons Codec 라이브러리의 DigestUtils 클래스를 사용 하여 동일한 목표를 달성할 수도 있습니다.

pom.xml 파일 에 의존성을 추가해 보겠습니다 .

<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.15</version>
</dependency>

이제 md5Hex() 메서드를 사용하여 파일의 MD5 체크섬을 얻습니다.

try (InputStream is = Files.newInputStream(Paths.get(filePath))) {
    String checksum = DigestUtils.md5Hex(is);
    // ....
}

스트림을 닫는 것에 대해 걱정할 필요가 없도록 try-with-resources 를 사용하는 것을 잊지 마십시오.

4. 구아바 사용

마지막으로 GuavaByteSource 객체 의 hash() 메서드를 사용할 수 있습니다.

File file = new File(filePath);
ByteSource byteSource = com.google.common.io.Files.asByteSource(file);
HashCode hc = byteSource.hash(Hashing.md5());
String checksum = hc.toString();

5. 결론

이 빠른 사용방법(예제)에서는 Java 에서 파일에 대한 MD5 체크섬을 생성하는 다양한 방법을 보여주었습니다.

항상 그렇듯이 이 기사의 예제 코드는 GitHub 에서 찾을 수 있습니다 .

Security footer banner