एन्कोडिंग

Punycode encode/decode

यूनिकोड कैरेक्टर्स (IDN) वाले डोमेन नामों को ASCII-कम्पैटिबल Punycode फ़ॉर्मेट (xn--) में एन्कोड करना और वापस।

The DNS system historically only supports ASCII characters, so domain names with Cyrillic, CJK, or other non-ASCII characters (IDN) are encoded as Punycode — an ASCII-compatible form prefixed with xn--. This tool encodes and decodes such domains.

How to use it

Common uses

Things to keep in mind

Visually similar characters from different scripts (like Cyrillic "а" and Latin "a") can form a domain that looks identical to a known brand — this is the basis of homograph phishing.

Not every browser shows decoded Unicode the same way: when a domain label mixes scripts, browsers often deliberately show the raw xn-- form as a warning sign.

इस टूल के बारे में लेख: Punycode: DNS में अंतरराष्ट्रीय डोमेन कैसे काम करते हैं

अक्सर पूछे जाने वाले प्रश्न

xn-- प्रीफ़िक्स का क्या मतलब है?

यह बताता है कि डोमेन का यह हिस्सा Punycode में एन्कोड किया हुआ है — असल में यह किसी यूनिकोड लेबल (जैसे münchen) का ASCII-कम्पैटिबल रूप है, जिसे DNS सिस्टम समझ सकता है।

IDN डोमेन में स्पूफिंग या होमोग्राफ अटैक का खतरा क्या है?

अलग-अलग स्क्रिप्ट्स के कैरेक्टर्स एक जैसे दिख सकते हैं (जैसे सिरिलिक "а" और लैटिन "a"), इसलिए कोई नकली डोमेन असली जैसा दिखा सकता है — Punycode डिकोड करके देखने से यह पता चल जाता है कि डोमेन में असल में कौन से कैरेक्टर्स हैं।

क्या डोमेन नाम कहीं सर्वर पर भेजा जाता है?

नहीं, एन्कोडिंग और डिकोडिंग पूरी तरह ब्राउज़र में होती है, कोई लुकअप या डेटा ट्रांसफ़र सर्वर पर नहीं होता।

कैसे पता चले कि कोई लिंक Punycode इस्तेमाल कर रहा है?

एन्कोड किए गए डोमेन में हर उस लेबल से पहले हमेशा xn-- प्रीफ़िक्स होता है जिसमें नॉन-ASCII कैरेक्टर्स हों। अगर एड्रेस बार या ईमेल में xn-- से शुरू होने वाला डोमेन दिखे, तो यह IDN का संकेत है — यह जांच लेना बेहतर है कि इस एन्कोडिंग के पीछे असल में कौन-सा टेक्स्ट छिपा है।

क्या सभी ब्राउज़र एड्रेस बार में सिरिलिक को एक जैसा दिखाते हैं?

नहीं। कुछ ब्राउज़र डिकोड किया गया यूनिकोड तभी दिखाते हैं जब डोमेन के सभी कैरेक्टर्स एक ही अल्फ़ाबेट के हों, और अलग-अलग अल्फ़ाबेट मिलने पर (जो होमोग्राफ़ अटैक का संकेत है) वे जानबूझकर असली कैरेक्टर्स के बजाय कच्चा xn-- रूप दिखाते हैं।

लेख: एन्कोडिंग

Base64: एन्कोडिंग किस लिए है और यह कैसे काम करता है

Base64 बाइनरी डेटा को ASCII टेक्स्ट में कैसे बदलता है और यह वास्तव में कब ज़रूरी होता है।

Base32: यह Base64 से कैसे अलग है और कब ज़्यादा सुविधाजनक है

Base32 की केस-असंवेदनशील वर्णमाला और वे मामले जहाँ यह Base64 से ज़्यादा सुविधाजनक है।

URL Encode/Decode: लिंक में percent-encoding

पतों और पैरामीटर में विशेष वर्ण %XX अनुक्रमों में कैसे बदलते हैं।

HTML Entities: विशेष वर्णों को सुरक्षित रूप से कैसे दिखाएँ

< > & वर्णों को एस्केप करना क्यों ज़रूरी है और यह मार्कअप को टूटने से कैसे बचाता है।

JWT: टोकन की संरचना और JWT को "डिकोड" करने का क्या मतलब है

JWT के header, payload और signature, और डिकोड करना सिग्नेचर सत्यापन जैसा क्यों नहीं है।

Unicode Escape: \uXXXX अनुक्रमों का क्या मतलब है

JSON और JS स्ट्रिंग में \u0041 जैसे अनुक्रम कहाँ से आते हैं और इनका क्या मतलब है।

ROT13 और सीज़र सिफर: वर्णों की सरल अदला-बदली

13 अक्षरों का शिफ्ट ROT13 को स्व-व्युत्क्रम क्यों बनाता है, और आज इसे क्यों इस्तेमाल किया जाता है।

मोर्स कोड: टेक्स्ट बिंदुओं और डैश में कैसे बदलता है

अक्षरों को बिंदुओं और डैश में एन्कोड करने का सिद्धांत, और आज मोर्स कोड कहाँ इस्तेमाल होता है।

Data URI: छवियों को सीधे कोड में कब एम्बेड करें

Data URI किसी फ़ाइल की सामग्री को सीधे HTML या CSS में कैसे एम्बेड करता है, और यह कब उचित है।

Gzip + Base64: डेटा को टेक्स्ट के रूप में भेजने के लिए संपीड़न

संपीड़ित बाइनरी डेटा को टेक्स्ट फ़ील्ड में डालने से पहले Base64 में क्यों एन्कोड किया जाता है।

XML Entities: XML दस्तावेज़ों में वर्णों को एस्केप करना

पाँच अनिवार्य XML एंटिटी, जिनके बिना दस्तावेज़ पार्सिंग के दौरान टूट जाता है।