파일 해시 계산 — MD5・SHA-1・SHA-256・SHA-512로 다운로드 파일 변조 확인

파일을 드래그 앤 드롭하면 MD5・SHA-1・SHA-256・SHA-512 해시값을 즉시 계산합니다. 배포처가 공개한 체크섬과 비교해 다운로드한 파일이 손상되거나 변조되지 않았는지 확인할 수 있습니다. 파일은 서버로 전송되지 않습니다.

해시 알고리즘 비교표

알고리즘 출력 비트 수 16진수 문자 수 주요 용도
MD5 128비트 32자 가벼운 무결성 확인 용도로만 적합. 암호학적 안전성이 이미 깨져 비밀번호 저장・전자서명에는 사용 불가
SHA1 160비트 40자 MD5보다 안전하지만 충돌 공격이 입증됨. Git 커밋 해시 등 비보안 용도로는 여전히 사용됨
SHA256 256비트 64자 현재도 안전하다고 평가되는 표준 해시. 소프트웨어 다운로드 무결성 확인에 가장 널리 사용됨
SHA512 512비트 128자 SHA-256보다 더 긴 출력. 64비트 CPU에서는 SHA-256보다 빠르게 계산되는 경우도 있음
광고

파일 해시 계산이란

해시값은 파일의 내용 전체로부터 계산되는 고정 길이의 문자열로, 그 파일의 지문에 해당합니다. 내용이 단 1바이트만 달라져도 값이 완전히 바뀌기 때문에, 배포처가 공개한 값과 대조하면 다운로드한 파일이 손상되거나 변조되지 않았는지 확인할 수 있습니다. 이 도구는 파일을 넣기만 하면 MD5・SHA-1・SHA-256・SHA-512를 한 번에 계산합니다.

계산은 모두 브라우저 안에서 이루어지며, 파일의 내용이 서버로 전송되는 일은 없습니다. 다만 파일 전체를 메모리에 읽어 들이므로, 수 GB 규모의 파일에서는 시간이 오래 걸리거나 실패할 수 있습니다. 또한 MD5와 SHA-1은 이미 충돌 공격이 입증되어, 악의적인 변조를 탐지하는 용도로는 적합하지 않습니다.

파일 해시를 확인하는 방법

  1. 파일 넣기 확인할 파일을 영역 안으로 끌어다 놓거나 클릭해서 선택합니다. 큰 파일은 계산이 끝날 때까지 탭을 닫지 마세요.
  2. 해시값 확인하기 네 가지 알고리즘의 결과가 함께 표시됩니다. 배포처가 사용한 알고리즘에 해당하는 값을 보면 됩니다.
  3. 공개된 값과 대조하기 비교란에 공식 페이지의 해시값을 붙여넣으면 어떤 알고리즘과 일치하는지 자동으로 판별해 알려 줍니다.
  4. 일치하지 않으면 사용하지 않기 복사 실수를 먼저 확인하고, 그래도 다르면 파일을 실행하지 말고 삭제한 뒤 공식 경로에서 다시 내려받으세요.

더 잘 활용하기 위한 팁

  • 배포처가 알고리즘 이름을 명시하지 않은 경우, 비교란에 해시값을 붙여넣기만 하면 자동으로 어떤 알고리즘인지 판별합니다.
  • 큰 파일(수백MB 이상)은 브라우저 메모리를 많이 사용하므로 계산에 몇 초에서 1분 정도 걸릴 수 있습니다. 탭을 닫지 말고 기다려 주세요.
  • ISO 이미지나 설치 프로그램처럼 변조 시 피해가 큰 파일일수록 해시 대조를 습관화하는 것이 좋습니다.
  • MD5・SHA-1은 충돌 공격이 입증되어 악의적인 변조 탐지에는 적합하지 않습니다. 보안이 중요한 경우 SHA-256 이상을 사용하세요.

파일 해시 확인의 활용 사례

ISO 이미지나 설치 파일 검증

운영체제 이미지나 설치 프로그램은 변조되었을 때 피해가 큽니다. 실행하기 전에 공식 해시값과 대조하는 습관을 들이는 것이 좋습니다.

대용량 파일의 전송 오류 확인

네트워크가 불안정한 환경에서 내려받은 파일이 온전한지 확인할 수 있습니다. 파일 크기만 보는 것보다 훨씬 확실합니다.

백업본이 원본과 같은지 확인

복사하거나 옮긴 파일의 해시값을 원본과 비교하면, 내용이 완전히 동일한지 검증할 수 있습니다.

중복 파일 판별

파일 이름이 달라도 해시값이 같으면 내용은 동일합니다. 정리할 파일을 골라낼 때 근거로 쓸 수 있습니다.

광고

해시 관련 용어

해시값
데이터로부터 계산되는 고정 길이의 문자열입니다. 같은 입력에서는 항상 같은 값이 나옵니다.
체크섬
파일이 손상되지 않았는지 확인하기 위해 공개되는 값입니다. 해시값이 이 용도로 널리 쓰입니다.
충돌
서로 다른 두 데이터가 같은 해시값을 갖는 상태입니다. MD5와 SHA-1은 이를 의도적으로 만들 수 있음이 밝혀졌습니다.
눈사태 효과
입력이 아주 조금만 바뀌어도 출력이 완전히 달라지는 성질입니다. 미세한 손상까지 감지할 수 있는 근거가 됩니다.
SHA-256
256비트 길이의 해시를 만드는 알고리즘입니다. 현재 다운로드 검증에서 가장 널리 쓰이는 표준입니다.

자주 묻는 질문

먼저 공식 해시값을 다시 확인해 줄바꿈이나 불필요한 공백 등 복사 실수가 없는지 확인하세요. 그래도 일치하지 않으면 파일이 손상되었거나 변조되었을 가능성이 있으므로 실행하지 말고 삭제한 뒤 공식 사이트에서 다시 다운로드하는 것을 강력히 권장합니다.

배포처가 공개한 알고리즘에 맞추는 것이 기본입니다. 여러 개가 공개되어 있다면 더 안전한 SHA-256 또는 SHA-512를 우선하세요. MD5・SHA-1은 이미 암호학적 안전성이 깨져 악의적인 변조 탐지에는 불충분합니다.

계산 대상이 텍스트 문자열인지 바이너리 파일인지의 차이일 뿐, 알고리즘 자체는 동일합니다. 텍스트 문자열의 해시값을 계산하려면 자매 도구인 문자열 해시 일괄 계산을 이용하세요.

브라우저에서 사용 가능한 메모리 범위 내라면 계산할 수 있지만, 파일 전체를 한 번에 메모리에 읽어들이므로 수 GB 규모의 초대용량 파일에서는 브라우저가 느려지거나 실패할 수 있습니다.
툴군

여담이지만 ― 공식 사이트가 해시값을 공개하는 이유

소프트웨어 배포 사이트의 다운로드 링크 옆에 "SHA256: a1b2c3..."와 같은 해시값이 함께 적혀 있는 것을 본 적이 있을 것입니다. 이는 배포자가 만든 원본 파일이 전송 중 손상되거나 미러 서버에서 변조되지 않았음을 사용자 스스로 검증할 수 있게 하기 위한 장치입니다.

이 구조가 특히 중요해지는 것이 리눅스 배포판의 ISO 이미지 배포입니다. 전 세계에 흩어진 미러 서버를 통해 다운로드하기 때문에 일반적인 통신 오류는 물론, 악의적인 제3자가 미러 서버를 탈취해 악성코드가 심어진 변조판을 배포할 이론적 위험도 존재합니다. 공식 사이트가 서명된 해시값 목록(대부분 GPG 서명 포함)을 공개하면, 사용자는 어느 미러에서 다운로드하든 로컬에서 해시값을 계산해 대조하는 것만으로 안전성을 검증할 수 있습니다.

해시 함수는 "입력이 1비트만 바뀌어도 출력이 완전히 달라지는(눈사태 효과)" 성질을 가지고 있어, 의도적인 변조는 물론 다운로드 중 미세한 통신 오류로 인한 손상도 확실히 감지할 수 있습니다. 파일 크기가 같아도 내용이 1바이트만 달라도 해시값은 완전히 달라지므로, 육안으로 파일 크기를 확인하는 것보다 훨씬 확실한 검증 수단입니다.

광고