본문으로 건너뛰기
yutils
예시

입력 (유니코드 도메인)

한글.kr

출력 (ASCII)

xn--bj0bj06e.kr

참고

`xn--` 접두사가 punycode 인코딩됨을 표시. DNS 가 ASCII 만 지원하므로 한글·중국어 도메인은 이 형태로 등록됩니다.

사용법 / 자주 묻는 질문

이런 경우 사용하세요

  • 한글·중국어·일본어 도메인의 실제 DNS 등록 이름 확인
  • 이메일 sender 의 IDN(Internationalized Domain Name) 검증
  • phishing 도메인 분석 — 비슷한 키릴문자로 만든 가짜 도메인 감지
  • URL 정규화 — 사람이 보는 도메인과 DNS 가 보는 이름 매핑
  • ICANN · 도메인 등록기관 시스템과의 호환

자주 묻는 질문

Q.왜 `xn--` 가 붙나요?
A.ASCII Compatible Encoding(ACE) prefix 로 IDNA 표준에 정의됨. ASCII 만 알아듣는 DNS 가 "이건 변환된 IDN 입니다" 라고 인식하게 하는 표식.
Q.homograph attack 이 뭔가요?
A.키릴문자 `а`(U+0430) 가 라틴 `a`(U+0061) 와 시각적으로 똑같은 점을 악용 — `аpple.com` 같은 가짜 도메인 생성. punycode 로 풀면 `xn--pple-43d.com` 처럼 정체가 드러납니다.
Q.이메일 주소도 변환되나요?
A.예. `사용자@한글.kr` 같은 IDN 이메일은 EAI(SMTPUTF8) 미지원 서버를 거치면 punycode 형태로 변환됩니다. 도메인 부분만 변환되고 local part 는 별개.
재미있는 사실
  • Punycode 는 2003년 RFC 3492 로 표준화된 IDN (Internationalized Domain Name) 인코딩입니다. 한글·중문 도메인 (예: `한국.kr`) 을 DNS 가 처리 가능한 ASCII 호환 인코딩 (`xn--3e0b707e`) 으로 무손실 변환 — 인터넷이 비 ASCII 도메인을 받아들인 결정적 메커니즘.

    RFC 3492 (2003)
  • Punycode 의 핵심은 Adam Costello 가 만든 Bootstring 알고리즘 — ASCII 만 먼저 박고, 비 ASCII 문자를 'delta + 위치' 형태로 압축해 뒤에 붙입니다. `xn--` 접두어 + 변환된 본문 구조 — 'xn' 은 'extended name' 의 약자로 IANA 가 예약.

    Wikipedia — Punycode
  • Homograph attack 의 함정 — 키릴 문자 'а' (U+0430) 가 라틴 'a' 와 시각적으로 같지만 Punycode 로는 다른 도메인. `xn--pple-43d.com` 이 `apple.com` 처럼 보이게 만드는 phishing 공격이 가능해 Chrome·Firefox 가 mixed-script 도메인은 일부러 Punycode 그대로 표시합니다.

    Wikipedia — IDN homograph attack