해시 생성기 — 텍스트·파일의 MD5, SHA-256 계산과 체크섬 확인
텍스트나 파일을 넣으면 MD5, SHA-1, SHA-256, SHA-384, SHA-512 해시를 한 번에 계산합니다. 다운로드 페이지에 적힌 체크섬을 붙여넣으면 어느 결과와 일치하는지 바로 알려 줍니다. 모든 계산은 브라우저 안에서만 이루어집니다.
해시 함수는 입력이 한 글자만 달라도 완전히 다른 고정 길이 값을 만듭니다. 그래서 내려받은 파일이 원본과 같은지 확인하거나, 같은 데이터인지 빠르게 비교할 때 씁니다. 같은 입력은 어떤 프로그램에서 계산해도 같은 값이 나와야 합니다.
예전 버전의 MD5는 이 조건을 지키지 못했습니다. 글자를 UTF-8 바이트가 아니라 자바스크립트 내부의 UTF-16 코드 단위로 읽어서, 영문과 숫자만 맞고 한글·악센트 문자·이모지는 틀린 값이 나왔습니다. '안녕하세요'의 MD5가 fca29721…로 나왔지만 리눅스 md5sum, Node, PHP는 모두 209bebae…입니다. 지금은 모든 알고리즘이 같은 UTF-8 바이트를 계산하며, MD5는 무작위 데이터 수백 가지 길이로 Node의 결과와 대조해 일치를 확인했습니다.
알고리즘별 특징
| 알고리즘 | 길이 (16진수) | 현재 상태 |
|---|---|---|
| MD5 | 32자 | 충돌을 쉽게 만들 수 있어 보안용으로는 쓰면 안 됩니다. 실수로 인한 파일 손상 확인 정도에만 |
| SHA-1 | 40자 | 2017년 구글·CWI가 실제 충돌(SHAttered)을 공개. NIST는 2030년까지 사용 중단 예정 |
| SHA-256 | 64자 | 현재 가장 널리 쓰는 표준. 소프트웨어 배포 체크섬 대부분 |
| SHA-384 | 96자 | SHA-2 계열, 일부 인증서·서명에서 사용 |
| SHA-512 | 128자 | SHA-2 계열, 64비트 환경에서 빠른 편 |
다운로드한 파일 확인하기
- 1
파일 탭에서 파일 고르기
파일은 업로드되지 않고 브라우저 안에서 읽습니다. 파일 전체를 메모리에 올리므로 1GB까지 지원합니다.
- 2
체크섬 붙여넣기
배포 페이지의 SHA-256 값 등을 '비교할 해시' 칸에 붙여넣습니다. 대소문자와 공백은 무시합니다.
- 3
결과 확인
일치하는 알고리즘 줄이 초록색으로 표시됩니다. 어느 것과도 맞지 않으면 파일이 손상됐거나 다른 버전일 수 있으니 다시 받으세요.
같은 글인데 해시가 다르게 나올 때
가장 흔한 원인은 줄바꿈입니다. 윈도우 메모장으로 저장한 파일은 줄바꿈이 CRLF(\r\n) 두 바이트이고, 웹 입력칸은 LF(\n) 한 바이트로 바꿉니다. 파일 해시와 비교하려면 'CRLF로 계산'을 켜거나 파일 탭을 쓰세요. 끝에 줄바꿈이 하나 더 있는지, 앞뒤 공백이 있는지도 결과를 바꿉니다.
명령어로 계산한 값과 비교할 때는 윈도우 PowerShell의 Get-FileHash(기본 SHA-256), 맥의 shasum -a 256, 리눅스의 sha256sum을 쓰면 됩니다. echo로 텍스트를 넘기면 끝에 줄바꿈이 붙어 값이 달라지는 점에 주의하세요.
자주 묻는 질문
해시를 되돌려 원문을 알 수 있나요?
계산으로 되돌릴 수는 없지만, '123456' 같은 짧고 흔한 입력은 미리 계산해 둔 표로 금방 찾아냅니다. 그래서 비밀번호는 MD5나 SHA-256으로 그냥 저장하면 안 되고, 솔트를 쓰는 느린 함수(Argon2id, bcrypt, scrypt)를 써야 합니다.
MD5는 이제 쓸모가 없나요?
누군가 일부러 조작한 파일을 막는 용도로는 쓸 수 없습니다. 전송 중 우연히 깨졌는지 확인하거나 중복 파일을 찾는 정도에는 여전히 쓰입니다.
입력한 텍스트나 파일이 전송되나요?
아니요. 해시 계산은 모두 브라우저 안에서 이루어지고 어디에도 저장되지 않습니다.
