본문 바로가기

파일 해시 체크섬 확인 방법 총정리 - 윈도우 명령어 한 줄로 끝내는 파일 무결성 검증

다운로드한 파일이 원본 그대로인지 어떻게 확신하시나요? 윈도우, 맥, 리눅스에서 프로그램 설치 없이 파일 해시 체크섬 확인하는 방법과 MD5, SHA-256 알고리즘 차이까지 한 번에 정리했습니다.


파일 해시 체크섬 확인 방법 총정리 - 윈도우 명령어 한 줄로 끝내는 파일 무결성 검증

용량이 큰 프로그램을 받았는데 설치 도중 자꾸 오류가 납니다. 파일이 깨진 건지, 아니면 누가 손을 댄 건지 알 길이 없어 답답했던 경험, 한 번쯤 있으실 겁니다. 이럴 때 필요한 것이 바로 파일 해시 체크섬 확인입니다. 별도 프로그램 설치 없이 명령어 한 줄이면 끝나는데, 의외로 방법을 모르는 분들이 많습니다.

파일 해시 체크섬이 필요한 순간

해시(Hash)는 파일 내용을 수학적으로 계산해서 만든 고정 길이의 문자열입니다. 파일 내용이 단 1바이트만 바뀌어도 해시값은 완전히 달라집니다. 그래서 해시값을 파일의 지문이라고 부릅니다.

공식 사이트들이 다운로드 페이지에 SHA-256 값을 함께 올려두는 이유가 여기에 있습니다. 내가 받은 파일의 해시값과 사이트에 적힌 값이 일치하면, 그 파일은 전송 중에 깨지지도 않았고 변조되지도 않았다는 뜻입니다.

  • 다운로드 무결성 확인: 대용량 파일이 전송 중 손상됐는지 검증
  • 보안 검증: 설치 파일이 악성코드로 바꿔치기당하지 않았는지 확인
  • 중복 파일 찾기: 이름이 달라도 해시가 같으면 같은 파일
  • 백업 검증: 원본과 백업본이 동일한지 비교
파일 이름과 용량이 같아도 내용이 같다는 보장은 없습니다. 두 파일이 진짜 같은 파일인지 확인하는 유일하게 확실한 방법은 해시값 비교입니다.

윈도우에서 파일 해시 확인하는 방법

방법 1. 명령 프롬프트에서 certutil 사용

윈도우에는 certutil이라는 도구가 기본 내장되어 있습니다. 명령 프롬프트(cmd)를 열고 아래처럼 입력합니다.

certutil -hashfile 파일경로 SHA256

예를 들어 다운로드 폴더의 설치 파일을 확인한다면 certutil -hashfile C:\Users\내이름\Downloads\setup.exe SHA256 이렇게 입력하면 됩니다. 알고리즘 자리에 MD5, SHA1, SHA256, SHA512를 넣을 수 있습니다.

참고: certutil에서 알고리즘을 생략하면 SHA1으로 계산됩니다. 요즘 배포 사이트는 대부분 SHA-256 값을 제공하므로, 뒤에 SHA256을 명시하는 습관을 들이는 것이 좋습니다.

방법 2. PowerShell에서 Get-FileHash 사용

PowerShell을 쓴다면 더 간단합니다. Get-FileHash 파일경로 한 줄이면 되고, 기본 알고리즘이 SHA-256이라 옵션을 생략해도 됩니다. 다른 알고리즘이 필요하면 Get-FileHash 파일경로 -Algorithm MD5처럼 지정합니다.

파일 경로를 일일이 타이핑할 필요는 없습니다. 탐색기에서 파일을 명령창으로 드래그하면 경로가 자동 입력됩니다.

맥과 리눅스에서 확인하는 방법

맥과 리눅스는 터미널에서 확인합니다. 운영체제별 명령어가 조금씩 다릅니다.

  • 맥(macOS): shasum -a 256 파일명 으로 SHA-256을 계산합니다. MD5는 md5 파일명 입니다.
  • 리눅스: sha256sum 파일명, md5sum 파일명 처럼 알고리즘 이름이 곧 명령어입니다.
  • 여러 파일 한번에: sha256sum *.iso 처럼 와일드카드를 쓰면 폴더 안 파일을 일괄 계산합니다.

리눅스 배포판 ISO를 받을 때는 사이트에서 제공하는 체크섬 파일(SHA256SUMS 등)을 함께 받아 sha256sum -c SHA256SUMS 명령으로 자동 대조할 수도 있습니다. 파일마다 OK가 출력되면 검증 통과입니다.

MD5 vs SHA-1 vs SHA-256 어떤 걸 써야 할까

해시 알고리즘은 종류마다 출력 길이와 안전성이 다릅니다. 핵심만 비교하면 아래와 같습니다.

구분MD5SHA-1SHA-256
출력 길이128비트 (16진수 32자)160비트 (40자)256비트 (64자)
충돌 공격2004년 실증됨2017년 실증됨 (SHAttered)현재까지 실용적 공격 없음
계산 속도가장 빠름빠름상대적으로 느림
권장 용도단순 파일 손상 확인, 중복 찾기레거시 호환용보안 검증 표준

충돌 공격이 실증됐다는 것은, 서로 다른 두 파일이 같은 해시값을 갖도록 인위적으로 만들 수 있다는 뜻입니다. 그래서 보안 목적이라면 SHA-256을 기준으로 확인하는 것이 정답입니다. 단순히 파일이 깨졌는지만 볼 때는 빠른 MD5도 여전히 실용적입니다.

해시는 비밀번호 저장에도 쓰이는 기술입니다. 사이트들이 비밀번호를 원문 대신 해시값으로 저장하기 때문에, 같은 비밀번호를 여러 곳에 쓰면 한 곳이 뚫렸을 때 연쇄 피해가 커집니다. 사이트마다 다른 비밀번호를 만들기 번거롭다면 비밀번호 생성기 같은 도구로 무작위 비밀번호를 만들어 쓰는 것이 안전합니다.

실전에서 이렇게 활용합니다

다운로드 파일 검증 루틴

공식 사이트에서 프로그램을 받으면 다운로드 페이지에 적힌 SHA-256 값을 복사해 두고, 받은 파일의 해시를 계산해 비교합니다. 64자를 눈으로 대조하기는 힘드니 앞 6자리와 뒤 6자리만 확인해도 실무에서는 충분합니다. 두 값을 나란히 메모장에 붙여 넣으면 차이가 한눈에 보입니다.

대용량 파일은 시간이 걸립니다

해시 계산 속도는 디스크 읽기 속도에 좌우됩니다. SSD 기준으로 수 GB 파일은 수 초에서 수십 초면 끝나지만, 외장 하드에 있는 수십 GB 파일은 몇 분씩 걸릴 수 있습니다. 명령창이 멈춘 것처럼 보여도 계산 중이니 기다리면 됩니다.

팁: 백업 검증처럼 여러 대용량 파일을 돌릴 때는 작업을 걸어두고 다른 일을 보는 것이 효율적입니다. 온라인 타이머를 10분쯤 맞춰두고 다녀오면 잊지 않고 결과를 확인할 수 있습니다.

해시가 다를 때 대처법

해시값이 불일치하면 원인은 크게 세 가지입니다. 첫째, 다운로드 중 파일이 손상된 경우로 다시 받으면 대부분 해결됩니다. 둘째, 사이트에 적힌 해시가 구버전 값인 경우입니다. 파일 버전과 해시 버전이 맞는지 확인하세요. 셋째, 비공식 경로에서 받은 파일이 변조된 경우입니다. 이때는 절대 실행하지 말고 삭제한 뒤 공식 사이트에서 다시 받아야 합니다.

오늘 바로 해볼 것

이론은 여기까지면 충분합니다. 지금 두 가지만 직접 해보시면 파일 해시 체크섬 확인은 완전히 손에 익습니다.

첫째, 다운로드 폴더에서 아무 파일이나 골라 certutil -hashfile 파일명 SHA256(윈도우) 또는 shasum -a 256 파일명(맥)을 실행해 보세요. 64자 해시값이 출력되면 성공입니다. 둘째, 다음에 프로그램을 설치할 때 공식 사이트의 체크섬과 한 번 대조해 보세요. 30초짜리 습관 하나가 손상된 파일과 변조된 설치 파일로부터 컴퓨터를 지켜줍니다.

3일 무료체험큰손탐지기, 지금 바로 시작하세요

설치 없이 웹에서 바로 사용 가능 · PC & 모바일 지원

무료체험 시작
카카오톡 상담