編碼 | 解碼 | 壓縮

> 國際 | 網域 | Unicode <

// Punycode - 將 Unicode 編碼為 ASCII 的國際網域工具

[UNICODE]

支援 Unicode

支援編碼任意 Unicode 字元,包括表情符號與特殊文字。

[DNS]

相容 DNS

產生僅含 ASCII 的網域名稱,可直接用於 DNS 基礎建設。

[STANDARD]

RFC 3492

針對國際化網域名稱(IDN)的官方 IETF 標準。

>> 技術說明

Punycode 的運作原理:

Punycode 是一種 bootstring 編碼,用於將 Unicode 字串轉換為 ASCII。它會將 ASCII 與非 ASCII 字元分開,然後僅使用 ASCII 編碼 Unicode 字元的位置與數值。

範例:

"münchen" → xn--mnchen-3ya

為什麼要使用 Punycode:

  • >國際化網域名稱(IDN)
  • >DNS 系統中的 Unicode
  • >包含 Unicode 的電子郵件地址
  • >與舊系統的相容性
  • >跨系統互通性

>> 常見問題

什麼是 Punycode?

Punycode 是一種編碼語法,用來將 Unicode 字元轉換為 ASCII,以便在國際化網域名稱(IDN)中使用。透過它,網域名稱可以包含非 ASCII 字元。

為什麼 Punycode 會使用 "xn--" 字首?

"xn--" 字首用來標示該網域標籤是使用 Punycode 編碼。它代表「ASCII Compatible Encoding」,用來避免與一般 ASCII 網域混淆。

網域名稱可以使用表情符號嗎?

可以,表情符號可以透過 Punycode 進行編碼。例如 😊.com 會被編碼為 xn--e28h.com。但並非所有註冊商都支援表情符號網域。

Punycode 只用在網域上嗎?

Punycode 主要是為網域名稱設計,但也能將任意 Unicode 文字編碼成 ASCII。常見用於 IDN 與國際化電子郵件地址。

其他語言