Jump to content

KDE PIM/KItinerary/Koleje Mazowiekie: Difference between revisions

From KDE Community Wiki
Vkrause (talk | contribs)
Vkrause (talk | contribs)
 
Line 21: Line 21:
| 5 || 4 || uint32 LE || ticket number ||
| 5 || 4 || uint32 LE || ticket number ||
|-
|-
| 9 || 2 ||  || ||
| 9 || 2 || uint16 LE || price || PLN * 100
|-
|-
| 10 || 1 || || || 0x00
| 10 || 1 || || || 0x00

Latest revision as of 15:05, 9 July 2023

General Observation

  • PDF contains a Code 128 1D code and a QR code
  • The 1D code contains the ticket number (CP \d+), which is also printed under the QR code
  • Both codes in the PDF are implemented as ungrouped individual rectangle paths, which currently failed to be recognized.
  • The QR code contains a base64 encoded payload
  • Content varies in size (87-89 after base64 decoding in the known samples)
  • Content seems byte-aligned
  • The content seems backwards!?
  • The station codes used are listed as "IBNR" on https://www.bazakolejowa.pl/index.php?dzial=stacje&id=664 - and match what's in PKP tickets - but this isn't IBNR. Neither Wikidata nor Trainline have those codes.

Payload structure

Offset Size Data Type Meaning Notes
0 3 0x03 0x01 0x20
3 2 "PC" (CP backwards, the prefix found in front of the ticket number)
5 4 uint32 LE ticket number
9 2 uint16 LE price PLN * 100
10 1 0x00
11 1 uint8 the number printed after "OF:" in the upper right
12 1 0x00
13 1 uint8 number of passengers? the number printed after "N:" in the upper right
14 1 0x00
15 12 suspected to be 3 x 4 bytes of date/time values (issued/valid from/valid until?)
27 2 uint16 LE departure station code same ids found in PKP tickets, but not matching any so far known id schema
29 2 uint16 LE arrival station code
31 10 string passenger name given/family name separated by '.', given name truncated to fit, string in reverse order!?
41 varying ASN.1 signature