Kodierung

Punycode encode/decode

Kodierung von Domainnamen mit Unicode-Zeichen (IDN) in das ASCII-kompatible Punycode-Format (xn--) und zurück.

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.

Artikel zu diesem Tool: Punycode: wie internationalisierte Domains im DNS funktionieren

Häufig gestellte Fragen

Warum brauchen Domains mit Umlauten wie münchen.de eine Punycode-Form?

Das DNS-System unterstützt nur ASCII-Zeichen. Punycode kodiert Unicode-Zeichen in eine ASCII-kompatible Form mit dem Präfix xn--, damit internationale Domainnamen (IDN) trotzdem im DNS funktionieren.

Warum sollte ich bei Punycode-Domains vorsichtig sein?

Manche Unicode-Zeichen sehen lateinischen Buchstaben täuschend ähnlich (Homograph-Angriffe), sodass eine gefälschte Domain wie ein bekannter Name aussehen kann. Ein Blick auf die xn---Form entlarvt solche Spoofing-Versuche.

Werden eingegebene Domainnamen an einen Server gesendet?

Nein, die Umwandlung erfolgt vollständig im Browser, ohne dass Daten übertragen werden.

Wie erkenne ich, dass ein Link Punycode verwendet?

Eine kodierte Domain hat immer das Präfix xn-- vor jeder Bezeichnung, die Nicht-ASCII-Zeichen enthält. Siehst du in der Adressleiste oder in einer E-Mail eine Domain, die mit xn-- beginnt, ist das ein Zeichen für IDN – es lohnt sich zu prüfen, welcher Text sich hinter der Kodierung verbirgt.

Zeigen alle Browser Kyrillisch in der Adressleiste gleich an?

Nein. Manche Browser zeigen den dekodierten Unicode-Text nur an, wenn alle Zeichen der Domain zu einem einzigen Schriftsystem gehören, und zeigen bei einer Mischung von Schriftsystemen (ein Anzeichen für einen Homograph-Angriff) bewusst die rohe xn---Notation statt der Originalzeichen an.

Artikel: Kodierung

Base64: wozu Kodierung dient und wie sie funktioniert

Wie Base64 binäre Daten in ASCII-Text verwandelt und wann das wirklich gebraucht wird.

Base32: der Unterschied zu Base64 und wann es praktischer ist

Das case-insensitive Alphabet von Base32 und Fälle, in denen es praktischer ist als Base64.

URL Encode/Decode: Percent-Encoding in Links

Wie Sonderzeichen in Adressen und Query-Parametern zu %XX-Sequenzen werden.

HTML Entities: Sonderzeichen sicher auf einer Seite ausgeben

Warum die Zeichen < > & escapt werden müssen und wie das kaputtes Markup verhindert.

JWT: Aufbau eines Tokens und was „Dekodieren" eines JWT bedeutet

Header, Payload und Signature eines JWT — und warum Dekodieren nicht dasselbe ist wie Signaturprüfung.

Unicode Escape: was \uXXXX-Sequenzen bedeuten

Woher Sequenzen wie \u0041 in JSON und JS-Strings kommen und was sie bedeuten.

ROT13 und die Caesar-Verschlüsselung: einfache Zeichensubstitution

Warum eine Verschiebung um 13 Buchstaben ROT13 selbstinvers macht und wozu man es heute noch nutzt.

Morsecode: wie Text zu Punkten und Strichen wird

Das Prinzip der Kodierung von Buchstaben als Punkte und Striche, und wo Morsecode heute noch genutzt wird.

Data URI: wann Bilder direkt in den Code einbetten

Wie ein Data-URI den Inhalt einer Datei direkt in HTML oder CSS einbettet, und wann sich das lohnt.

Gzip + Base64: Daten komprimieren für die Übertragung als Text

Warum komprimierte Binärdaten zusätzlich Base64-kodiert werden, bevor sie in ein Textfeld kommen.

XML Entities: Zeichen in XML-Dokumenten escapen

Die fünf Pflicht-Entities von XML, ohne die das Dokument beim Parsen bricht.