IDN Punycode konwerter

5 sa 2 mga rating

Ang IDN Punycode konwerter ay isang libreng tool na nagko-convert ng mga internationalised domain name sa Punycode ASCII at nagbabalik ng Punycode sa nababasang Unicode text.

Ano ang Punycode at bakit ito ginagamit?

Bahagi ang Punycode ng IDNA conversion mula sa mga Unicode U-label papunta sa mga ASCII A-label. Dahil dito, naipapasa sa mga sistemang orihinal na ginawa para sa mga pangunahing letrang Latin, numero at gitling ang mga pangalang may mga titik tulad ng ü, é o 漢.

Nagsisimula sa xn-- ang isang IDNA A-label. Ipinapaalam ng prefix na ito sa mga application na sumusuporta sa IDNA na ang mga kasunod na character ay representasyon sa Punycode ng isang U-label. Nananatiling separator ang mga tuldok, kaya hiwalay na kino-convert ang bawat bahagi ng domain.

Ginagamit ang Punycode sa Internationalised Domain Names in Applications, na karaniwang pinaikli bilang IDNA. Saklaw din ng IDNA ang validation at paghawak ng mga character, samantalang ibinibigay ng Punycode ang ASCII representation ng isang kwalipikadong Unicode label.

Encoding ang Punycode, hindi encryption. Maaaring ibalik ng sinuman sa Unicode ang ASCII form, kaya wala itong ibinibigay na pagiging lihim at hindi ito dapat gamitin upang magtago ng impormasyon.

Paano mag-convert ng internationalised domain name?

Ilagay ang Unicode text sa I-convert sa Punycode/ASCII, o ilagay ang mga ASCII A-label sa I-convert sa IDN/Text. Lalabas ang katumbas na resulta sa Punycode/ASCII o IDN/Teksto.

  1. Kopyahin lamang ang domain name o label na gusto mong i-convert, nang walang mga panipi sa paligid nito.
  2. Gamitin ang I-convert sa Punycode/ASCII para sa Unicode text na may mga character na may accent o hindi Latin.
  3. Gamitin ang I-convert sa IDN/Text para sa mga ASCII A-label.
  4. Suriin ang bawat na-convert na label bago ito ilagay sa DNS, mga setting ng email o configuration ng application.

Ginagamit ng konwerter ang mga PHP function na idn_to_ascii at idn_to_utf8. Sa server ginagawa ang pagproseso. Ipinapadala sa server ang inilagay mong data sa pamamagitan ng HTTPS at hindi ito iniimbak.

Mga halimbawa ng pag-convert ng domain

Ipinapakita ng simpleng conversion na ito ang ugnayan ng nakikitang pangalan at ng anyong tugma sa DNS.

Input münchen.de

Output xn--mnchen-3ya.de

Kapag kino-convert pabalik ang output, ang resulta ay münchen.de. Hindi kailangang i-convert ang ASCII-only na label na de, samantalang nagiging xn-- label ang label na may ü.

Dapat wastong domain-name text ang input. Ganito hinahawakan ng format ang mga karaniwang sitwasyon:

  • Mga letrang may accent at hindi Latin: kinakatawan sa ASCII sa pamamagitan ng IDNA at Punycode ang mga kwalipikadong Unicode label.
  • Mga tuldok: pinaghihiwalay ng bawat tuldok ang mga label. Dahil dito, maaaring maglaman ang isang domain ng pinaghalong karaniwang ASCII label at encoded label.
  • Mga numero at karaniwang gitling: ASCII na ang mga ito at karaniwang nananatiling nababasa, alinsunod sa mga panuntunan sa syntax ng domain name.
  • Mga espasyo: hindi wasto ang mga espasyo sa loob ng karaniwang DNS host label. Alisin ang anumang hindi sinasadyang espasyo sa halip na asahang papanatilihin ito ng Punycode bilang bahagi ng domain.
  • Mga bantas: naghihiwalay ng mga label ang tuldok, ngunit hindi bahagi ng hostname ang mga character na kabilang sa URL path, port o query string.
  • Walang laman o napakahabang input: walang domain na mako-convert kung walang laman ang value. Nililimitahan din ng DNS sa 63 octet ang bawat encoded label, kaya maaaring maging masyadong mahaba pagkatapos ng conversion ang isang Unicode label na mukhang maikli.

Bakit pumapalya ang Punycode conversion o kakaiba ang lumalabas na text?

Karaniwang pumapalya ang conversion kapag hindi wastong IDN text ang input, may malformed na A-label, o dumaan muna ito sa ibang encoding. Kapag nagko-convert sa IDN/Text, maaaring manatiling walang pagbabago ang karaniwang ASCII input na hindi A-label. Bago manu-manong baguhin ang mga character, tingnan kung ang source ay may mga Unicode U-label, ASCII A-label o URL-encoded na hostname.

  • Malformed na A-label o maling encoding: maaaring pumalya ang conversion ng malformed na xn-- label. Hindi Punycode ang Base64, hexadecimal text at mga percent-encoded na URL.
  • Mga hindi sinusuportahang character: kayang katawanin ng Punycode ang mga Unicode value, ngunit maaaring tanggihan ng mga panuntunan ng IDNA at mga domain registry ang ilang character, kumbinasyon o sistema ng pagsulat.
  • Sobrang haba ng label: nililimitahan ng DNS sa 63 octet ang bawat encoded label, kaya maaaring maging masyadong mahaba ang isang Unicode label pagkatapos ng conversion.
  • Kulang na input: maaaring maging invalid ang value kapag naisama sa hostname ang mga bracket, port number o bahagi ng isang HTML attribute.
  • Double-encoded na input: kung tahasan o hindi karaniwang na-percent-encode ang mga character sa isang Punycode domain, maaaring lumabas ang mga ito bilang mga percent sequence. I-decode muna ang URL layer gamit ang Decoder ng URL, saka i-convert ang resultang domain.
  • Binary data sa halip na text: gumagana ang IDN conversion sa Unicode domain-name text. Kapag itinuring na text ang arbitraryong bytes ng file, maaari itong bumagsak sa validation o maglabas ng mga character na walang kabuluhan.

Saan makikita ang Punycode?

Pangunahing makikita ang Punycode sa mga domain name, DNS record, paghawak ng browser sa mga address at mga sistemang nag-iimbak ng hostname bilang ASCII. Maaaring ipakita ng browser ang nababasang internationalised name o panatilihin ang anyong xn--, depende sa mga panuntunan nito sa kaligtasan at sa mga character na ginamit.

Maaaring gumamit ang mga email address ng Punycode sa domain pagkatapos ng @ sign. Hindi nito ine-encode ang pangalan ng mailbox bago ang @ sign. Maaaring may Punycode ang mga JSON payload at query string kapag naglalaman ang mga ito ng hostname, ngunit hindi kinakailangan ng syntax ng JSON at query string ang Punycode para sa pangkalahatang text.

Karaniwang gumagamit ang mga Data URI ng percent encoding o Base64 para sa nilalaman ng mga ito. Lalabas lamang doon ang Punycode kung nagkataong may internationalised hostname ang nakapaloob na text. Gayundin, gamitin ang URL encoder para sa mga value ng path o query, at Punycode naman para sa mismong hostname.

Mga madalas itanong

Pwede bang mag-paste ng buong URL sa IDN konwerter?

Mas ligtas na kunin ang hostname at ang bahaging iyon lang ang i-convert. May magkakahiwalay na panuntunan sa syntax ang scheme, port, path, fragment at query, at maaaring URL encoding ang kailangan ng mga character sa mga bahaging iyon sa halip na Punycode.

Ibig bang sabihin na hindi ligtas ang website kapag may xn-- label ang domain?

Hindi. Maraming lehitimong internationalised domain ang gumagamit ng mga xn-- label. Gayunman, maaaring gamitin sa mapanlinlang na pangalan ang mga character mula sa iba't ibang sistema ng pagsulat na magkamukha. Suriin ang na-decode na baybay at ang inaasahang organisasyon bago maglagay ng password o detalye sa pagbabayad.

Pwede bang gumamit ng emoji sa isang Punycode domain?

Hindi pinapayagan ang emoji sa mga IDNA domain label, kahit kayang i-encode ng Punycode algorithm ang mga code point nito. Maaari ring magtakda ang mga patakaran ng domain registry ng karagdagang paghihigpit sa mga pinapayagang sistema ng pagsulat at simbolo.

Bakit Punycode ang ipinapakita ng browser ko sa halip na Unicode?

Maaaring panatilihin ng browser ang ASCII form kapag pinaghalo sa isang label ang iba't ibang sistema ng pagsulat, may mga character itong iniuugnay sa spoofing, o hindi ito pasok sa patakaran ng browser sa pagpapakita. Pananggalang ito sa display, hindi patunay na mali ang conversion.

Sigurado bang gagana sa DNS ang na-convert na pangalan?

Hindi. Hindi pinatutunayan ng matagumpay na conversion na nakarehistro, available o pinapayagan ng nauugnay na registry ang domain. Bago gamitin ang resulta, tiyakin ang haba ng label, suriin ang nababasang baybay at kumpirmahing tinatanggap ng registry ang mga character na ginamit.

Mga sikat na tool