해시·ID·난수
다운로드한 파일이 배포자의 해시와 일치하나요?
사용할 도구
다운로드가 완료되고 이름도 맞아도 다른 버전이거나 손상되었을 수 있습니다. 배포 페이지의 긴 16진수 문자열은 내용의 바이트에서 계산한 다이제스트입니다. 파일명·수정 시간이 아니라 실제 내용을 비교하지만, 비교 기준 값을 어디서 받았는지도 중요합니다.
abc로 비교 절차 확인하기
SHA 해시 계산에서 소문자 abc를 입력하고 SHA-256·16진수 출력을 선택하세요. 끝 공백·줄바꿈 없이 아래 64자리와 같아야 합니다. 16진수 한 자리는 4bit이므로 256bit 해시는 파일 크기와 관계없이 64자리입니다.
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015adSHA-512로 바꾸면 다른 해시를 계산하고 Base64 출력만 바꾸면 같은 해시 바이트의 표기만 달라집니다. 알고리즘·출력 형식을 맞추세요. SHA-256과 SHA-512가 다르다고 다운로드 오류는 아닙니다.
눈으로 같아도 일치하지 않는 이유
abc 뒤에 LF 줄바꿈 하나를 붙이면 1byte만 늘어도 해시가 크게 달라집니다. 해시는 의미·모양이 아닌 바이트를 처리합니다. 편집기의 마지막 줄바꿈 자동 추가나 복사한 공백도 영향을 주며, 해시 일부가 비슷하다고 변경량이 작다는 뜻은 아닙니다.
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb같은 문자도 UTF-8·UTF-16 바이트는 다릅니다. 텍스트 입력은 UTF-8로, 파일 선택은 원래 파일 바이트로 계산합니다. 인코딩·줄바꿈을 바꾸면 원본 다운로드를 비교하는 것이 아니므로 다시 저장하기 전 파일을 선택하세요.
배포 파일을 확인하는 순서
공식 배포 페이지에서 버전·OS·CPU·파일명·알고리즘을 먼저 확인하세요. 저장한 파일을 같은 방식으로 계산해 앞부분이 아닌 전체 값을 비교합니다. ZIP과 압축 해제 파일, 다른 플랫폼·같은 이름의 다른 버전은 각각 다른 내용입니다.
다르면 대상·알고리즘부터 재확인하세요. 불완전한 다운로드나 변경일 수 있지만 해시만으로 원인은 모릅니다. 실행해서 확인하지 말고 신뢰할 배포 경로를 점검하세요. 크기 제한 초과 파일은 로컬 도구로 전체를 계산해야 하며 일부만 잘라 비교하면 안 됩니다.
일치해도 배포자가 누구인지는 별개
파일·해시를 같은 의심스러운 페이지에서 받으면 둘이 같아도 배포자를 확인하지 못합니다. 내용을 바꾼 사람도 새 해시를 만들 수 있습니다. 신뢰할 경로의 기대 값과 비교하는 용도이며 공식 HTTPS 사이트·전자 서명 확인과 역할이 다릅니다.
일치가 안전한 프로그램이라는 판정도 아닙니다. 정식 배포본에도 취약점이 있을 수 있고, 불일치도 다른 버전·줄바꿈일 수 있습니다. 내용 비교 결과에 안전 판정이나 원인 단정을 덧붙이지 마세요.
해시·CRC·암호화의 역할 구분
CRC32는 데이터 차이를 찾지만 공격자의 의도적 변조에 저항하도록 설계되지 않았습니다. 배포자가 SHA-256을 제시했다면 CRC32로 대신하지 마세요. 해시는 복호화 가능한 암호화가 아니며 단순 SHA-256만으로 적절한 비밀번호 저장 설계가 되는 것도 아닙니다.
재확인을 위해 파일명·버전·알고리즘·기대 값 출처·일치 여부를 기록하면 됩니다. 기밀 내용 공유는 필요 없습니다. 브라우저 계산이라도 공용 기기·클립보드는 주의하세요. 무엇을 어떤 신뢰 기준과 어떤 방식으로 비교했는지 함께 남겨야 유용합니다.
비교할 기준 해시는 어디서 왔나요?
파일과 같은 위치의 해시가 일치하면 바이트가 그 값에 대응함을 확인합니다. 둘 다 바뀌었다면 일치가 안전의 증거는 아닙니다. 해시 비교와 기준값 신뢰는 별개입니다. 배포자가 서명 검증을 요구하면 해시로 대신하고 동등하다고 해서는 안 됩니다. 이 도구는 출처나 서명자를 인증하지 않습니다.
먼저 알고리즘과 출력 형식을 맞추세요. 같은 SHA-256의 16진수와 Base64는 다른 문자열입니다. 파일을 텍스트로 붙이면 인코딩이나 줄바꿈이 달라질 수 있어 파일 검증에는 원본 파일 입력을 쓰세요. 파일명 등과 해시를 구별하고 짧은 앞부분이 아니라 전체 값을 비교해야 합니다.
불일치는 버전 차이, 불완전한 다운로드, 압축 전후 혼동, 줄바꿈 변환일 수도 있어 공격의 증거라고 단정하지 않습니다. 그렇다고 원인 불명의 차이를 비슷하다고 넘겨서도 안 됩니다. 버전, 파일명, 바이트 수, 알고리즘, 기대값과 실제값을 남기세요. 해시는 차이를 찾지만 원인을 설명하지는 않습니다.