해시 생성기
MD5, SHA-1, SHA-256, SHA-512 해시를 동시에 계산하세요.
| 알고리즘 | 해시값 | |
|---|---|---|
| MD5 | 입력 없음 | |
| SHA-1 | 입력 없음 | |
| SHA-256 | 입력 없음 | |
| SHA-512 | 입력 없음 |
다른 유틸리티
해시 함수란?
해시 함수(Hash Function)는 임의의 길이의 데이터를 고정된 길이의 해시값으로 변환하는 단방향 함수입니다. 동일한 입력에서는 항상 동일한 해시가 생성되며, 입력이 조금이라도 달라지면 완전히 다른 해시값이 나옵니다.
알고리즘별 특징
| 알고리즘 | 출력 길이 | 보안 수준 | 용도 |
|---|---|---|---|
| MD5 | 128비트 (32자) | 낮음 (취약점 존재) | 체크섬, 비보안 목적 |
| SHA-1 | 160비트 (40자) | 낮음 (충돌 발견) | 레거시 시스템 |
| SHA-256 | 256비트 (64자) | 높음 | 현재 권장 표준 |
| SHA-512 | 512비트 (128자) | 매우 높음 | 고보안 용도 |
주요 활용 사례
- 파일 무결성 검증: 소프트웨어 배포 시 해시값을 제공하여 다운로드 파일의 변조 여부 확인
- 비밀번호 저장: 원문 비밀번호 대신 해시값을 저장 (단, 솔트 필수)
- 디지털 서명: 메시지 인증 및 전자 서명에 활용
- 블록체인: 트랜잭션 데이터 무결성 보장
비밀번호 저장에는 왜 일반 해시를 쓰면 안 되나요?
MD5·SHA-256 같은 범용 해시 알고리즘은 빠르게 계산되도록 설계되어 있습니다. 파일 무결성 검증에는 이 속도가 장점이지만, 비밀번호 저장에는 오히려 약점이 됩니다 — 공격자가 GPU로 초당 수십억 개의 후보 비밀번호를 대입해볼 수 있기 때문입니다. 그래서 실제 서비스는 계산을 의도적으로 느리게 만들고 솔트를 더한 bcrypt·scrypt·Argon2 같은 전용 알고리즘을 사용해야 합니다.