![]() |
Zusammenfassung und Beispiel |
Dies ist ein Beispieltext mit jeder Menge Sonderzeichen (Achtung: die Darstellung hängt von den Möglichkeiten des verwendeten Browsers sowie der installierten Fonts ab).
europäische Sonderzeichen: ß, ü, Ü, ä, Ä, ö, Ö, € Mathematik: √ (Quadratwurzel), ∫ (Integral), ∂ (teilweise) griechische Alphabete: Ψ(groß Psi), ξ(klein Xi) Skatzeichen: ♠, ♣, ♥, ♦ den hier kennt ihr aus Word: • einen Pfeil: →, ↔, ↑ wer es kann: ЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя oder das braucht: ẦầẨẩẪẫẴẵẶỀềỂểỄễỆệỈỉỖỗỘộỚớỜờỞởỠỡỢỦủỨứỪừỬửỮữỰựỲỳỴỵỶỷỸỹ wer das kann: กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำ oder das: ิีึืฺุู฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙ oder das: ١٢٣٤٥٦٧٨٩؛؟ءآأؤإئابةتثجحخدذرزسشصضطظعغـفقكلمنهوىيٌٍَُِّ١٪٭ٴپچژکگֱֲֳִֵֶַָ Was Sie hiervon lesen können hängt an den Fähigkeiten ihres Browsers sowie an den auf ihrem Rechner installierten Schriftsätzen. Eventuell helfen auch erweiterte Sprachkenntnisse ;-)
Wozu das hier beschriebene Verfahren genutzt wird, bleibt natürlich der Kreativität des jeweiligen Programmierers überlassen. Die Möglichkeit, Strings, die Unicode enthalten, an den Server senden zu können, ist aus mehreren Blickwinkeln reizvoll. Zum einen ist man nicht auf den auf 256 Zeichen beschränkten Zeichensatz angewiesen, der im charcode-Metatag verwendet wurde. Der Benutzer ist in der Lage, in ein und dem selben Dokument Zeichen verschiedener Charsets zu mischen. Dies würde sich zum Beispiel in einem Forum anbieten, in dem Benutzer mit verschieden Sprachen kommunizieren. Selbst wenn es mehrere Unter-Foren gibt, muss der Programmierer diese nicht erst an den Zeichensatz anpassen. Darüber hinaus ist es absolut egal, welche Codierung der Benutzer auf seinem Rechner gewählt hat. Oder Copy und Paste aus Word-Dokumenten erzeugte, früher hässliche Fehlcodierungen bei Anführungspunkten oder Gedankenstrichen. Dies ist hier alles ganz egal. Was beim Server ankommt, ist immer Unicode und wird entsprechend verarbeitet. Einen Hasenfuß gibt es allerdings immer: der User muss JavaScript aktiviert haben.
Die Eigenschaft von UTF-8, nur 256 Zustände zu verarbeiten, kann man sich auch bei der Verschlüsselung von Daten zunutze machen. Wenn man zum Beispiel RC4 verwendet, was so ressourcenschonend arbeitet, dass es unter JavaScript eingesetzt werden kann, ist man auf 256 Zustände angewiesen.
Wie geht es weiter? Der hier produzierte Datenstrom kann eigentlich mit jeder serverseitigen Sprache verarbeitet werden. base64-Decoder sind weiter verbreitet als UTF-8-Decoder, aber prinzipiell ist das Verfahren auf alle Sprachen adaptierbar, welche Bitoperationen unterstützen. Perl z.B. kann ab der Version 5.6 einigermaßen mit Unicode umgehen und hat alle benötigten Funktionen bereits eingebaut.