Bluetooth Low Energy Based Ticketing Systems 11th February, 2015 Sriharsha Kuchimanchi 336884 Supervisor: Prof. Riku Jantti Instructor: Shkumbin Hamiti Conducted in: Nokia Technologies 11th Feb 2015 1
1
Bluetooth Low Energy Based
Ticketing Systems
11th February, 2015Sriharsha Kuchimanchi336884Supervisor: Prof. Riku Jantti
Instructor: Shkumbin HamitiConducted in: Nokia Technologies
11th Feb 2015
Outline
• Background• Mobile payment solutions• Gated systems • Non Gated systems
• Objectives of the thesis• Study BLE based ticketing system • Ticketing protocols for Public transport agencies-Exploring
GATT and Attributes
• Bluetooth Low energy Architecture • Proposed Ticketing system & Protocols • Conclusion & Future Scope Of Work
11th Feb 2015 2
Background (1)
11th Feb 2015 3
• Mobile payment are ways to pay your money through your Mobile Device.• This typically reduces carrying Cash• Long Queues can be avoided
• Popular mobile payment solutions are:• Paypal• Google wallet • Apple pay etc
These systems primarly made use of NFC, RFID, Scanning Barcodes, Quick Response (QR) Codes
Background (2)
Existing Architecture
• Gated systems (e.g. the metro in London)
User taps card when you enter and exit the metro station (i.e. to go through gates). In such systems the validation device, which is responsible for opening the gate, can be seen as a central device. In fact, the validation device analyses the credentials of the phone (e.g. certificate validity) and decide whether or not to open the gate and let the passenger go through
11th Feb 2015 4
• Non-Gated systems (e.g. Helsinki Bus or Helsinki Metro) User does not need to tap, if user has a valid ticket or you may tap just to begin your journey. In this case the validation device can be a passive element (e.g. an NFC tag) which is read and processed by the phone. It is then responsibility of the Phone to properly communicate with the backend about the journey.
Objectives of the thesis
• Designing the Bluetooth low energy (BLE) ticketing architecture• A model of Bluetooth Ticketing profile is presented • Ticketing protocols using BLE are suggested
Requirements for the ticketing system
• A system which is robust to all kinds of digital thefts• A system which is easy to use, scalable and efficient enough.• A system which can be implemented on the existing infrastructure
without incurring great costs. • A system which enables users to conveniently and swiftly purchase
their tickets without causing any delays through longer processing times.
11th Feb 2015 5
11th Feb 2015 6
Controller
Host
Apps
Generic Access Profile
Generic Attribute Profile
Attribute Protocol Security Manager
Logical Link Control and Adaptation Protocol
Host Controller Interface
Physical Layer
Link Layer Direct Test Mode
Applications
Bluetooth Low Energy Architecture
Architecture
11th Feb 2015 7
• Physical Layer – Transmits/Receives bits• Link Layer – packets and control• HCI – interface between Host / Controller• L2CAP – multiplexor• Attribute Protocol – protocol for accessing data• Generic Attribute Profile – how data is
organized• Application Profiles – what can we do (Eg
Heart rate, proximity, Find me, Blood pressure)
BLE ticketing system- Model
11th Feb 2015 8
Top view of a bus 20m
2mValidation device (adv packets of data), retreieve RSSI values
B A
C
Users enter the door with BLE enabled Mobile
Identity of the busIdentity of the passengerIdentity of the mobile phones
Identity of data/Application dataCertificate on the phoneCredit card/Debit card details of the passenger
Attribute Table
11th Feb 2015 9
Handle Type Value
0x0001 «Primary Service» «GAP»
0x0002 «Characteristic» {r, 0x0003, «identity»}
0x0003 «identity» “IMEI Number” or PAN
0x0004 «Characteristic» {r, 0x0005, «Certificate»}
0x0005 «Certificate» X.509 Certificate
0x0006 «Primary Service» «Ticketing service»
0x0007 «Characteristic» {r, 0x00008, «service name»}
0x0008 «service name» HSL service
0x0009 «Characteristic» {r, 0x0010, «Ticketing ID»}
0x0010 «Ticketing ID » 0x0802
Ticketing Certificate
Ticketing Service
Ticketing service
NameTicketing ID
IncludesIncludes Includes
GATT imposes a structure format based on services
Ticketing Protocol
10
GET_PAN
PUSH_PAN
GET_CERT
Validation Device
Mobile Phone
Step 1: The validation device will begin querying the PAN and the certificate from the phone.
GET_PAN
Step 2: Once the PAN number is cross verified in the database of the VD, a request is also made to get the certificate from the mobile phone.
GET_CERT (Get Certificate)
Step 3: The validation device would send the PAN of its own to the phone
PUSH_PAN
Check RSSI
value
RSSI
Yes
Mobile PhoneValidation
Device
sd_ble_gap_adv_data_set()
sd_ble_gap_adv_start()
Connect ()
sd_ble_gap_adv_start()
Disconnect ()
Packet structure
11th Feb 2015 11
PreambleAccess
AddressHeader Length
Data
PayloadMIC CRC
1 octet 4 octets 1 octet 1 octet0 to 33
octets4 octets 3 octets
Phases of Security Set Up
Conclusion & Future Work
11th Feb 2015 12
• Users do not have to go very close to the Validation Device/Reader
• Users can use their phone They do not have to carry a separate payment system
• BLE uses secured connection, enhances safety
Future works
Enable user to get additional information
• Find empty seats as the user enters the bus• The times of the next few bus stops• Any route diversions