What data does Myki save on your card?

With Myki now in use all over Melbourne, one question you might be asking is “What data actually gets saved to your card?”. Unlike Metcard where all of the relevant information was printed on the back, Myki stores it on a computer chip inside the card – so how is all of the data kept in sync?

Commuters try to touch on at Melbourne Central Station via a faulty Myki barrier

To balance performance and security concerns, smartcard ticketing systems save data in two places – on the card and to a computer somewhere else:

  • Reading and writing data to the card itself makes for faster transactions, as the card reader only needs to talk to the card, avoiding the delay for the system to ‘phone home’ to the main database.
  • Keeping a copy of the data away from the card provides a level of security from card tampering, as any legitimate changes made to the card will also be made in the master system.

An additional requirement is that any data saved on the card needs to be protected from modification by end users, and the usual way of doing this is by encryption – scrambling data so that only authorised people can use it.

So how much data gets stored inside a Myki card? My way of finding out was via the blue ‘Myki check’ readers found at some railway stations – their official name is a ‘Standalone Enquiry Machine’ or SEM.

Myki check reader hidden in a corner at Melbourne Central

Their most interesting attribute is that unlike every other Myki device a SEM lacks the network connection to the main database, which means they cannot be used to collect online topups, and for me, they are completely dependant on the data that is saved on the card.

The first screen presented shows current card balance, touch on/off status, fare type, and expiry time of the current 2-hour fare product (not the 4 year card expiry):

Myki SEM device: status screen 1 of 3 - overview

The next screen only appears when you are touched on, and shows balance of Myki money loaded on the card, as well as the current zone and expiry time of the fare product loaded:

Myki SEM device: status screen 2 of 3 - Myki money

The final status screen is only show if you have a Myki pass loaded – it indicates expiry date, original duration and zones, and the number of days remaining:

Myki SEM device: status screen 3 of 3 - pass status

Also available is the history of topups applied to the card:

Myki SEM device: top up history

And a history of the last ten touch on and touch off actions, split across three screens:

Myki SEM device: travel history screen 1 of 3

This suggests the following data is saved on your card:

  • Fare type
  • Card balance
  • Touch on/off status
  • Expiry time of current 2-hour fare product (if touched on)
  • Active travel zones (if touched on)
  • Myki pass length (if one exists)
  • Myki pass expiry date (if one exists)
  • Myki pass travel zones (if one exists)
  • Last 10 travel actions
  • Last [X] topup actions

Electronics student Mathew McBride took another approach to answering the question in his recent blog post titled Frequently asked questions about NFC and myki cards, where he read the data straight from a Myki using a generic card reader, and wrote up what he found.

In the end he couldn’t get the data itself due to the encryption previously mentioned, but was able to identify a few types of data stored there – card type, travel history, dollar balance, and so on. It appears his card did not have a Myki pass loaded on it, hence a number of the data slots on his card were empty – a topic for further investigation!

Footnote

A 2-hour fare product is created when you touch your Myki on for the first time each day, and expires 2 hours from the next full hour after your first touch on.

If you don’t touch off during that period, then any ticket inspector will see your card as still touched on and valid. Outside that period (for example, the Lilydale line crapped itself on February and it takes you 2.5 hours to get to work) then if you try to touch off, the system will prevent you from doing so.

A comparison with CityLink

Myki works differently from the electronic tolling systems used on CityLink and East Link – the e-TAG inside your car is just a ‘dumb’ device that stores no information such as account balance inside it – your toll account only lives in computer servers back in head office, and the tag is just the identifier that each toll gantry uses in order to access it.

A comparison with Octopus

Everybody uses the Octopus card system of Hong Kong as an example of the world’s perfect smartcard ticketing system. But it does have some odd quirks – for example, changing trains between two specific stations:

Separate entry and exit gates are installed at Tsim Sha Tsui and East Tsim Sha Tsui stations. Octopus card users who interchange between these two stations within 30 minutes will be considered as having taken one journey. Passengers are reminded not to use the same Octopus card on other transport (including Light Rail, MTR Bus and MTR Feeder Bus) or make more than 9 non-transport related transactions during the 30-minute interchange interval. Otherwise, full fares for two separate journeys will be charged.

From the above, one can deduce that an Octopus card only remembers the last 10 items, and so making too transactions while changing stations will result in the original station ‘A’ exit record being overwritten, meaning the interchange will not be recognised when entering station ‘B’.

You can leave a response, or trackback from your own site.

2 Responses to “What data does Myki save on your card?”

  1. […] crew can be despatched to fix it. The blue Myki check readers are the possible exception, as they lack a network connection back to the main Myki […]

  2. […] it on a tram travelling the streets of Melbourne? The reason lies in the way Myki is architected: the card is the source of truth of all data, with the backend systems needing to kept in sync on a regular basis. In the case of railway […]

Leave a Reply