Secure Mobile Positioning Protocol for Location Service Entities
This protocol outlines secure communication and authentication steps between mobile devices, networks, and positioning services for accurate location tracking. It covers mutual authentication, encryption, and key generation.
Secure Mobile Positioning Protocol for Location Service Entities
E N D
Presentation Transcript
Location Service Security Philip Hawkes phawkes@qualcomm.com
Colour Notation • GREEN: Entities/Things • Mobile phones, network entities • Purple: operations • Functions, algorithms • Protocols (who does what when) • BLUE: Values • Stored secrets • Publicly known values (time) • Orange: Important things
H-PS MS : X MS MALBA: X MALBA MS: position request MALBA MS: X MSH-PS: X HALBA H-PS : X H-PSMS:X MS H-PS : X H-PSHALBA: X H-PSS-PS: X HALBA H-PS: IP_LOC_REQ MS H-PS: SUPL_START H-PS MS: SUPL_INIT MS has pos_info? Proxy Mode? MS has pos_info? MS has pos_info? Periodic? MS H-PS:SUPL_START(pos_info) H-PSMS: pos_info H-PS use cached pos_info? H-PS use cached pos_info? Home or Roaming? H-PS S-PS: PS_REQ/PS_ACK S-PS Assigns PDE,Modes agreed PDE (S-PS) H-PS PDE_RESPONSE H-PS assigns PDE Modes agreed SUPL_POS direct H-PSMS: SUPL_RESPONSE SUPL_POS via H-PS MS MALBA: pos_info Pos_info is now known at MS (and H-PS where applicable) H-PS HALBA: IP_LOC_RESPONSE/REPORT Stage 1 Application Request Yes No No Yes Yes Yes Stage 2 Session Negotiation No Home Roaming Yes Stage 3 Service (Positioning) No No Yes Stage 4 Application Report Stage 5: Canceling Periodic Reporting Yes
In-Scope Countermeasures (1) Stage 1: SUPL_INIT see Outstanding Problems Stage 2: • MSH-PS (SUPL_START/RESPONSE): • Mutual Authentication H-PSUIM • Integrity/Replay + Encrypt • TLS-PSK, fresh key generated in UIM: PSKA? • (Periodic Mode) Association can be restored for SUPL_CANCEL • Association restored for anotherSUPL_START/RESPONSEsession???
In-Scope Countermeasures (2) Stage 3 • MSPDE (SUPL_POS): • Mutual Authentication PDEUIM • Integrity/Replay + Encrypt • TLS-PSK, key gen’d in UIM • Fresh key for each SUPL_POS session? Stage 4: No in-scope countermeasures
In-Scope Countermeasures (3) Stage 5 • MSH-PS (SUPL_CANCEL): • Authentication of UIM by H-PS • Integrity/Replay + Encrypt • TLS-PSK, fresh key gen’d in UIM: • H-PS MS (SUPL_END): • Authentication of H-PSbyUIM • Integrity/Replay + Encrypt • TLS-PSK, fresh key gen’d in UIM:
Out-of-Scope Countermeasure Requirements (1) Stage 1+4 MS Initiated • LBAMSrequest/response msgs: • Authenticationof LBA by MS • Integrity/Replay + Encrypt Stage 1+4 Network Initiated • LBAH-PS (IP_LOC_REQ/RESP): • Mutual Authentication • Integrity/Replay + Encrypt
Out-of-scope Countermeasure Requirements (2) Stage 2 • H-PSS-PS: PS_REQ/PS_ACK • Mutual Authentication • Integrity/Replay + Encrypt Stage 3 • S-PSH-PS: PS_RESPONSE/PS_REPORT • Mutual Authentication • Integrity/Replay + Encrypt
Out-of-scope Countermeasure Requirements (3) Stage 5: Cancelling Periodic Session • LBA H-PS/MS: Cancel msg • Already authenticated • Integrity/Replay + Encrypt • H-PSS-PS: PS_REQ_CANCEL • Already authenticated • Integrity/Replay + Encrypt
Outstanding Problems (1) Stage 1 MS-Initiated • LBAMSrequest/response msgs: • Authenticationof LBA by H-PS? Stage 1 Network-Initiated • LBAH-PSIP_LOC_REQ/RESP: • Authenticationof LBA by MS? • (Is this REALLY the LBA I wanted)
Outstanding Problems (2) Stage 1 Network-Initiated • H-PSMS (SUPL_INIT): • MS Authenticates H-PS • Integrity/Replay + Encrypt • Problem: not IP based • (Authenticationof LBA by MS?) Stage 2 • H-PSAuthorizesMS+LBA • Any mechanisms required?
Outstanding Problems (3) Stage 4 • H-PSHALBA: IP_LOC_RESP • Integrity/Replay verification byMS? • Is this necessary?
Three TLS sessions? • MSH-PS (SUPL_START/SUPL_RESPONSE): • Mutual Authentication H-PSUIM • Integrity/Replay + Encrypt • TLS-PSK, fresh key generated in UIM • MSPDE (SUPL_POS): • Mutual Authentication PDEUIM • Integrity/Replay + Encrypt • TLS-PSK, key gen’d in UIM • Fresh key for each SUPL_POS session? • MSH-PS(SUPL_CANCEL) or H-PSMS(SUPL_END): • Authentication ofSender • Integrity/Replay + Encrypt • TLS-PSK, fresh key generated in UIM
How? • 1,3: MSH-PS • UIM+H-PS establish fresh Master Key • Initiate TLK_PSK • 2: ?