MD5란?
MD5(Message Digest Algorithm 5)는 임의 길이 입력에서 고정된 128비트 출력(32자 16진수 문자열)을 생성합니다. 설계자는 론 리베스트 이며, RFC 1321 (1991)에서 발표되어 다운로드 및 레거시 시스템의 사실상 체크섬이 되었습니다.
보안 참고: MD5는 암호학적 용도로는 손상되었으므로 보안이 중요한 경우 SHA-256, BLAKE3 또는 Argon2를 선택하세요.
MD5는 어떻게 작동하나요?
- Pad 메시지 길이가 448 (mod 512) 비트가 되도록
- Append 원본 길이(64비트 리틀 엔디언)
- Initialize 네 개의 32비트 단어 (A, B, C, D)
- Process 16단어 블록 단위로 4개의 비선형 라운드를 거침
- Produce 최종 128비트 다이제스트
MD5와 다른 해시 함수 비교
Algorithm | Output | 현재 보안 상태 | 상대 속도* |
---|---|---|---|
MD5 | 128 비트 | ❌ 손상됨 | ⚡ 매우 빠름 |
SHA-1 | 160 비트 | ❌ 손상됨 | ⚡ 빠름 |
SHA-256 | 256 비트 | ✅ 안전함 | 🚀 보통 수준 |
SHA-512 | 512 비트 | ✅ 매우 안전함 | 🚀 보통-느림 |
BLAKE3 | 256 비트 | ✅ 안전함 | ⚡ Blazing |
예시 해시
Input | MD5 해시 |
---|---|
Hello World | b10a8db164e0754105b7a99be72e3fe5 |
password | 5f4dcc3b5aa765d61d8327deb882cf99 |
test123 | cc03e747a6afbbcbf8be7668acfebee5 |
(빈 값) | d41d8cd98f00b204e9800998ecf8427e |
자주 묻는 질문
서버로 데이터가 전송되나요?
아니요. JavaScript 라이브러리는 완전히 브라우저 내에서 실행됩니다. 텍스트와 파일은 기기를 벗어나지 않습니다.
다운로드한 ISO 파일을 MD5로 검증할 수 있나요?
네. ISO 파일을 도구에 드롭하여 MD5 체크섬을 계산한 후 배포자가 공개한 해시와 비교하세요.
비밀번호에 MD5를 사용해도 안전한가요?
아니요. bcrypt, Argon2, PBKDF2와 같은 전용 비밀번호 해싱 알고리즘을 사용하세요.
보안 고려사항
- Collisions: 서로 다른 입력이 동일한 MD5 출력을 생성할 수 있음.
- Length-extension: 공격자는 원본 메시지를 알지 못해도 데이터를 추가할 수 있음.
- Speed: MD5의 매우 빠른 속도는 무차별 대입 공격을 용이하게 합니다.
경험 법칙: 중복 파일 탐지나 빠른 체크섬 등 보안과 무관한 용도로만 MD5를 사용하세요.