Aztec-Code
Der Aztec-Code (engl. Aztec Code) wurde 1995 von Andy Longacre beim Unternehmen Welch Allyn in den USA entwickelt. Er ist ein frei verfügbarer 2D-Code mit der US-Patent Nr. 5591956.[1] Er ist unter ISO/IEC 24778 normiert.[2] Der Name Aztec-Code leitet sich von der Hochkultur der Azteken in Zentralmexiko und deren Stufenpyramiden ab: Wenn man eine Stufenpyramide aus der Vogelperspektive betrachtet, dann ähnelt sie stark den direkt in der Code-Mitte erkennbaren Quadraten, die um einen einzelnen Punkt zentriert sind.
Struktur
Im Mittelpunkt des Codes befindet sich das Suchelement, das aus mehreren ineinander verschachtelten Quadraten besteht. Die Symbolelemente sind ebenfalls quadratisch. Es können derzeit kleine (ab 12 Zeichen) bis große Datenmengen (zurzeit über 3000 Zeichen) codiert werden. Der Inhalt kann auf mehrere Symbole aufgeteilt werden. Die Reed-Solomon-Fehlerkorrektur unterstützt anwenderspezifisch bis zu 32 Sicherheitsstufen. Die Rekonstruktion des Dateninhaltes ist auch dann noch möglich, wenn bis zu 25 % (bei kleinen Codes sogar bis zu 40 %) des Codes zerstört worden sind. Im Gegensatz zu allen anderen Codes sind keine Ruhezonen nötig. Der Code kann so an jeder beliebigen Stelle platziert werden.
-
Der Kern eines großen Aztec Codes. Die hier rot oder blau schraffierten Bereiche müssen weiß dargestellt werden, der grüne Bereich enthält Informationen über die Größe der Struktur. Der eigentliche Datenbereich ist im grau schraffierten Randbereich und außerhalb des hier gezeigten Kerns.
-
Lage der Referenzmarken bei großem Code
-
Beispiel eines großen Codes. Man erkennt die links angegebene Struktur als Kern.
Anwendung
Der Internationale Eisenbahnverband (UIC) hat den Aztec-Code als Standard für die Fahrkarten definiert. Die im Aztec Code kodierten Daten bestehen aus dem Text „UT01“ gefolgt von der Nummer des Carriers, z. B. „0080“ für die Deutsche Bahn, und einer Key-ID, z. B. „000010“. Daraufhin folgt eine ASN.1 DSA-Signatur und zlib-komprimierter Payload, in dem nahezu alle auf dem Ticket aufgedruckten Daten kodiert werden.[3]
Dies ist bei den Mitgliedern Deutsche Bahn, Nederlandse Spoorwegen, Österreichische Bundesbahnen, SNCF, Tschechische Bahnen, Trenitalia, Schweizerische Bundesbahnen und Rail Delivery Group umgesetzt. Die Wiener Linien, Graz Linien und der Verband Deutscher Verkehrsunternehmen nutzen auch dieses Codierungsverfahren für ihre Online-Tickets.
Auch bei vielen Fluglinien ist der Aztec-Code im Einsatz. Die IATA pflegt die Standardisierung für Bordkarten und definiert seit 2007 im BCBP (Bar Coded Boarding Passes) die elektronischen Varianten mit 2D-Barcodes.[4] In Version 4 der Spezifikation (Stand 2009) erscheint dabei auch ein Aztec-Barcode als Wahloption für elektronische Bordpässe (neben dem ursprünglichen PDF417, Datamatrix und QR-Codes).[5] Ab der Version 7 (Stand 2018) kann der Aztec-Code auch auf gedruckten Bordpässen alternativ eingesetzt werden.[6] Über die IATA ist eine Austauschbarkeit der enthaltenen Daten für 200 Fluggesellschaften und 1000 Flugplätze zugesichert. Der Aztec-Barcode der IATA verwendet maximal 83 × 83 Punkte und wird von den europäischen Fluggesellschaften bevorzugt. Der QR-Code wird im asiatischen Raum bevorzugt, da der unterliegende ISO-Standard auch japanische und chinesische Schriftzeichen schon definiert hat.[6] Die kodierte Nachricht ist in allen Formaten gleich organisiert – sie beginnt mit einem 'M' (medium – das 'S' für kurze Nachrichten ist entfallen), und der Anzahl der Teilflugstrecken, also '1' bei Direktflügen, gefolgt von einem 20 Zeichen langen Feld für den Passagiernamen, das mit Leerzeichen aufgefüllt wird, gefolgt von 'E' für ein elektronisches Ticket, und anschließend die Flugnummer mit weiteren Daten.[5] Die Größe der Formate orientiert sich am PDF417 mit maximal 800 Zeichen, sodass für das entsprechende Aztec-Format im Text-Modus die maximalen Stufe so gewählt wurde, dass sich maximal 900 Zeichen kodieren lassen.
Literatur
- Bernhard Lenk: Handbuch der automatischen Identifikation. Band 2: 2D-Codes, Matrixcodes, Stapelcodes, Composite Codes, Dotcodes. Monika Lenk Fachbuchverlag, Kirchheim unter Teck 2002, ISBN 3-935551-01-0.
Einzelnachweise
- ↑ Patent US5591956: Two dimensional data encoding structure and symbology for use with optical readers. Veröffentlicht am 7. Januar 1997, Erfinder: Andy Longacre.
- ↑ ISO: ISO/IEC 24778:2008 [ISO/IEC 24778:2008] Information technology — Automatic identification and data capture techniques — Aztec Code bar code symbology specification. ISO/IEC, Februar 2008, abgerufen am 29. März 2020 (englisch).
- ↑ Skript zur Dekodierung
- ↑ Bar Coded Boarding Passes (BCBP) - An interview with Mr. Eric Léopold, Project Manager, Bar Coded Boarding Passes (BCBP). 3. Dezember 2008 .
- ↑ a b Simplifying the Business - Bar Coded Boarding Pass - Implementation Guide (4th Edition). IATA, 1. Juni 2009 .
- ↑ a b Bar Coded Boarding Pass (BCBP) Implementation Guide (Seven Edition). IATA, 1. Juni 2018 .