예시
입력
yutils
출력 (MD5 hex)
5b9c8d3e2a1f4b7d6e8c3a5b9d2f1c4e
참고
MD5 는 32자 hex 출력. 보안용으로는 깨졌지만 체크섬 · ETag · 캐시 키 등 비보안 용도에는 여전히 유용.
사용법 / 자주 묻는 질문
이런 경우 사용하세요
- 파일 체크섬 (보안 목적 X — 다운로드 무결성 정도)
- Gravatar · ETag · 캐시 키 생성
- legacy 시스템 · API 와의 MD5 호환
- 데이터베이스 row 의 변경 감지용 일관된 short hash
- MD5 가 왜 깨졌는지 학습 — 같은 hash 의 두 입력 만들기 (collision)
자주 묻는 질문
- Q.MD5 는 정말 깨진 건가요?
- A.예. 1996년 이론 약점, 2004년 실제 충돌 공격, 2008년 디지털 서명 위조까지 시연됐습니다. 보안용으로는 절대 쓰면 안 됩니다 — 비밀번호 저장 · TLS 인증서 · 디지털 서명 등.
- Q.그런데 왜 아직 쓰나요?
- A.빠르고 짧기 때문입니다 (16바이트, 32 hex). 보안과 무관한 ETag · cache key · checksum 에는 여전히 유효. AWS S3 도 ETag 에 MD5 를 사용해요.
- Q.Gravatar 가 MD5 를 쓰는 게 안전한가요?
- A.Gravatar 는 이메일 → 아바타 매핑 식별자로 MD5 를 사용 — 보안 목적이 아니라 일관된 short identifier 용도. 단, 이메일이 노출되면 동일 hash 로 추적 가능.
재미있는 사실
MD5 는 1991년 Ronald Rivest 가 MD4 의 약점을 보완해 만들었고 RFC 1321 로 표준화됐습니다. 'MD' 는 'Message-Digest' 의 약자 — Rivest 의 hash 시리즈는 MD2/MD4/MD5 그리고 나중에 RC 시리즈로 이어졌어요.
RFC 1321 (1992)2004년 산둥대학 Wang Xiaoyun 팀이 MD5 충돌을 분 단위로 만들어내는 차분 공격을 공개했습니다. SHA-1 의 SHAttered(2017) 보다 13년 빨랐고, MD5 가 보안 용도로 폐기되는 결정타가 됐어요. 그 이후 무결성 체크용도로만 살아남았습니다.
Wang et al. 2004 (IACR ePrint)2012년 Flame 악성코드는 chosen-prefix MD5 충돌로 Microsoft Terminal Services 의 인증서를 위조해 Windows Update 채널을 가로챘습니다. MD5 충돌이 학술 호기심이 아니라 실제 국가 단위 공격에 사용된 첫 사례 — 패스워드 hash 에 MD5 쓰지 말라는 권고가 '미래 위협' 이 아닌 이유입니다.
Wikipedia — Flame malware
관련 도구
- Base64 인코딩 / 디코딩
텍스트를 Base64로 인코딩하거나 디코딩합니다. 브라우저에서 즉시 실행되며 서버로 데이터가 전송되지 않습니다.
- URL 인코딩 / 디코딩
URL에 사용할 수 있도록 텍스트를 퍼센트 인코딩하거나 인코딩된 URL을 디코딩합니다. 브라우저에서 즉시 실행됩니다.
- UUID / ULID 생성기
UUID v4(랜덤) · UUID v7(시간 순서, RFC 9562) · ULID를 브라우저에서 생성합니다.
- JWT 디코더
JWT(JSON Web Token)의 header와 payload를 디코딩하여 표시합니다. 서명 검증은 수행하지 않으며(공개키 필요), 토큰은 브라우저에서만 처리됩니다.
- JWT 생성기 (HMAC)
HS256/HS384/HS512(HMAC-SHA) 알고리즘으로 서명된 JWT를 생성합니다. payload·secret 모두 브라우저에서만 처리 — Web Crypto API 기반.
- SHA 해시
텍스트의 SHA-1·SHA-256·SHA-384·SHA-512 해시를 계산합니다. 브라우저의 Web Crypto API를 사용하며 데이터가 서버로 전송되지 않습니다.
- Hex 인코딩 / 디코딩
텍스트를 16진수로 인코딩하거나 디코딩합니다. UTF-8을 자동 처리하며 공백을 무시합니다.
- HTML 엔티티 인코딩 / 디코딩
HTML 특수 문자(&, <, >, ", ')를 엔티티로 인코딩하거나, 이름/숫자 엔티티를 텍스트로 디코딩합니다.
- 비밀번호 생성기
암호학적으로 안전한 비밀번호·토큰·랜덤 문자열·패스프레이즈를 생성하고 엔트로피를 표시합니다.
- 진수 변환기
BigInt 기반으로 큰 정수까지 2/8/10/16/36진수 변환. 0b/0o/0x 자동 감지.
- URL 파서
URL을 프로토콜·호스트·경로·쿼리·해시로 분해해 한눈에 보여줍니다 (읽기 전용).
- HMAC 생성기
Web Crypto API로 SHA-1/256/384/512 HMAC을 계산합니다. 서명·검증 키 기반.
- HMAC 검증기
주어진 HMAC 서명이 message + secret 으로 만든 값과 일치하는지 검증합니다. Web Crypto API + constant-time 비교.
- Punycode (국제화 도메인)
한글·다국어 도메인을 Punycode(xn-- ASCII)로 상호 변환합니다. 브라우저 native URL 사용.
- HTTP 상태 코드
HTTP 상태 코드(1xx-5xx)를 검색·탐색합니다. 설명과 일반 사용 사례 포함.
- User-Agent 파서
User-Agent 문자열을 브라우저·OS·기기·엔진별로 분해합니다.
- Bcrypt 해시
Bcrypt로 비밀번호를 해시하거나 기존 해시와 평문을 검증합니다. salt rounds 조정 가능.
- 쿠키 파서
Cookie 또는 Set-Cookie 문자열을 표로 분해합니다. percent-encoded 값 복원 + Set-Cookie 속성(Path/Domain/Max-Age/SameSite/HttpOnly/Secure) 인식.
- IP / CIDR 계산기
IPv4 주소와 CIDR로 네트워크 주소·브로드캐스트·호스트 범위·서브넷 마스크·호스트 수를 계산합니다.
- cURL 빌더
URL·method·헤더·본문으로 cURL 명령을 만듭니다. JSON content-type 자동.