Punycode

Was ist Punycode?

Punycode ist ein standardisiertes Kodierungsverfahren, welches die Unicode (UTF-8) Zeichenkette in ASCII-Zeichen konvertiert. Es kann ebenso die umgekehrte Konversion vornehmen. Das Zeichenset ASCII ist ein 7-Bit-Code, der bereits in den 1960ern eingeführt wurde und zur Darstellung von Domain- und Hostnamen genutzt wird. Mittels dieses Konvertierungsverfahrens ist es möglich auch Umlaute und Akzente bei Domainnamen zu verwenden.

Hintergrund und Geschichte

Als das Domain Name System (DNS) in den frühen 80er Jahren konzipiert wurde, wurden keine Schriftzeichen vorgesehen, die nicht zum lateinischen Alphabet gehören. Lange Zeit war es nicht möglich internationale Domainnamen als Domain zu registrieren. Diakritische Zeichen, Umlaute und Buchstaben aus anderen Alphabeten konnten nicht verwendet werden. Der Bedarf nach einem neuen Internetstandard wuchs schließlich mit der fortlaufenden Weiterentwicklung des Internets. Bereits im Jahr 2000 diskutierte die Internet Engineering Task Force über Lösungsmöglichkeiten. Es wurde zunächst UTF-5 vorgeschlagen. Unicode sollte auf diese Weise in fünf Bit Positionen umgewandelt werden. Die UTF-5 Verschlüsselungsmethode hatte allerdings einige Nachteile. Einfache Wörter aus anderen Sprachen, etwa Japanisch oder Koreanisch, wurden zu ellenlangen und kryptischen URL-Namen umgewandelt.

Im Jahr 2003 erarbeitete die Network Working Group schließlich den Entwurf für ein neues Kodierungsverfahren, das den Namen Punycode erhielt. Zeitgleich erschien mit IDNA2003 ein neuer Internetstandard, der die Bezeichnung Internationalizing Domain Names in Applications (IDNA) trägt. Dieser wurde 2008 mit IDNA2008 ergänzt und aktualisiert. Der in dem Dokument vorgeschlagene Algorithmus namens Bootstring leitet aus den gemachten Eingaben einen eigenen String ab.

Anwendung

Sobald ein Nutzer in der Browserzeile eine Eingabe macht, wird die Zeichenkette automatisch vom Browser erfasst. Gibt er beispielsweise “münchen.de” ein, so wird die Eingabe direkt mit Punycode in “xn--mnchen-3ya.de” umgewandelt. Zunächst normalisiert der Browser die Eingabe. Großbuchstaben werden in Kleinbuchstaben umgewandelt. Seit der Einführung von IDNA2008 findet dieser Normalisierungsprozess bereits auf der Benutzerseite statt. Bei der Normalisierung werden ebenfalls ähnliche Zeichen ausgetauscht. Der Accent bei “Café” wird in “Cafe” umgewandelt und angeglichen. Insgesamt werden bei dem Konvertierungsverfahren sechs Prinzipien berücksichtigt. Eines der Prinzipien ist die Lesbarkeit von Domainnamen. Aus diesem Grund werden die Buchstaben aus dem lateinischen Alphabet, also die Zeichen von A bis Z, nicht angetastet.

Sobald die Normalisierungsphase abgeschlossen ist, werden alle Zeichen aus dem Domainnamen entfernt, die nicht zur ASCII-Zeichenkette gehören. Punycode fügt nun einen eigenen String ein. Bei der Bildung des Strings gelten mehrere Prinzipien. Der neu gebildete Domainname muss eindeutig bleiben und darf nicht länger sein als der Ausgangsname. Jeder einmal umgewandelte Domainname muss zurückkonvertiert werden können. Grundsätzlich muss jeder Domainname umwandelbar sein. Das gesamte Konvertierungsverfahren muss einfach und nachvollziehbar bleiben.

Punycode versteht als gültige Basiszeichen die Buchstaben von A bis Z, sowie die Ziffern von 0 bis 9 und das Bindestrich-Minus. Verwendet ein Domainname ein Nicht-Basiszeichen, etwa einen Umlaut oder ein diakritisches Zeichen, so wird dem neu gebildeten String der Präfix “xn--” vorangestellt. Dieser deutet an, dass es sich um einen internationalen Domainnamen handelt, was im IDNA-Standard festgehalten wurde.

Die Nicht-Basiszeichen haben grundsätzlich einen eigenen Zahlenwert. In der Normalisierungsphase werden die Basiszeichen aneinandergehängt. Das Wort “hässlich” wird so in “hsslich” umgewandelt. Da der Umlaut “ä” im Wort “hässlich” ein Nicht-Basiszeichen ist, wird diesem ein eigener Zahlenwert zugeordnet. Bei der Bildung dieser Zahl spielt die Position in der ursprünglichen Zeichenkette eine Rolle. Die 36 Basiszeichen stellen schließlich diese Zahl dar und werden nach der erfolgten Konvertierung einfach an den Text angehängt. Es entsteht aus dem Wort “hässlich” der Code “xn--hsslich-5wa”.

Das Punycode Konvertierungsverfahren ermöglichte die Nutzung von Emoji-Domains. Diese relativ neuartige Domainform enthält im Namen ein Emoji. Die Anmeldung einer solchen Domain muss in der Regel über einen Punycode Converter erfolgen, der bei allen Vergabestellen in der Regel angeboten wird.

Relevanz in der SEO

Punycode spielt in der SEO nur bei der Anmeldung eines Domainnamen eine Rolle. Die Anmeldung findet über eine der Domain-Vergabestellen statt. In Deutschland wäre etwa die DENIC dafür verantwortlich. Bei der Vergabestelle kann man eine eigene Punycode-Schreibweise festlegen, was für die spätere Referenzierung der Webseite wichtig ist. Denn einige Tools sind nicht in der Lage Sonderzeichen, Umlaute oder diakritische Zeichen auszulesen. Die richtige Referenzierung ist auch bei wichtigen Marketingtools wie Google Analytics von Bedeutung.

Suchmaschinen durchsuchen das Netz bereits mithilfe von internationalen Zeichensätzen. Automatisch werden Suchanfragen in Punycode umgewandelt. Internationale Domainnamen erleiden so beim SEO keinen Nachteil und werden genauso gefunden wie Webseiten, die nur die Basiszeichen verwenden. Trotzdem gibt es ein paar Fallstricke, auf die Webseitenbetreiber Acht geben sollten. Registriert man beispielsweise den Domainnamen “bücher.com”, aber nicht “buecher.com”, so besteht das Risiko, dass Konkurrenten oder sogar Betrüger dies ausnutzen könnten. Aus diesem Grund wird allgemein empfohlen, dass man sich ebenso die möglichen Alternativnamen sichert.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte