해시란?
해시 함수는 어떤 데이터든 정해진 길이의 짧은 값(지문)으로 바꿉니다. 같은 입력은 언제나 같은 해시가 나오고, 한 글자만 달라도 완전히 다른 해시가 나옵니다. 해시에서 원래 데이터를 되돌릴 수는 없습니다.
- 파일 확인: 프로그램이나 운영체제 이미지를 받은 뒤, 배포처가 알려 준 SHA-256 값과 비교해 파일이 깨지거나 바뀌지 않았는지 확인합니다. 아래 ‘받은 해시값과 비교’에 붙여 넣으면 됩니다.
- 중복 찾기: 파일 내용이 같으면 해시가 같으므로 같은 파일을 빠르게 찾을 수 있습니다.
- 개발: 캐시 키, 데이터 무결성 검사, API 서명 확인 등에 씁니다.
어떤 해시를 써야 하나요?
| 알고리즘 | 길이 | 용도 |
|---|---|---|
| MD5 | 128비트 (32자) | 옛 체크섬. 충돌을 만들 수 있어 보안에는 쓰면 안 됨 |
| SHA-1 | 160비트 (40자) | Git 등에서 쓰지만 보안용으로는 퇴역 |
| SHA-256 | 256비트 (64자) | 지금의 표준. 파일 확인, 서명, 블록체인 |
| SHA-384 / 512 | 384·512비트 | 더 긴 해시가 필요한 곳 |
| CRC32 | 32비트 (8자) | zip·PNG의 전송 오류 검사. 보안 기능 없음 |
비밀번호를 저장할 때는 MD5나 SHA-256을 그대로 쓰면 안 됩니다. 일부러 느리게 만든 bcrypt, scrypt, Argon2 같은 전용 함수를 쓰세요.
자주 묻는 질문
다른 사이트와 해시가 달라요.
대부분 입력이 조금 다르기 때문입니다. 끝에 줄바꿈이나 공백이 붙었는지, 한글을 UTF-8이 아닌 다른 인코딩으로 계산했는지 확인하세요. 이 도구는 글자를 UTF-8로 계산합니다.
파일이 서버로 올라가나요?
아니요. 파일은 브라우저 안에서만 읽고 계산하며, 어디에도 보내지 않습니다. 아주 큰 파일은 기기 메모리에 따라 시간이 걸릴 수 있습니다.