Project

General

Profile

Proposed OTA Test Tools » History » Version 1

laforge, 06/22/2022 04:13 PM

1 1 laforge
h1. Proposed OTA Test Tools
2
3
This page documents various ideas we have regarding a set of tools for convenient testing of SIM OTA functionality.  None of this is implemented below.
4
5
The general idea is to have a couple of re-usable modular tools, each implementing one particular part only.
6
7
Our initial focus is on SMS based OTA, as this is the _least common denomiator_ between the various OTA transport mechanisms.
8
9
10
h2. SMPP-to-PCSC
11
12
The purpose of this tool is to allow exchange of OTA SMS with a SIM card without having to set up a cellular network or even without using a phone/modem.
13
14
The proposed tool offers two interfaces:
15
* a SMPP interface (SMSC role) to allow exchanging SMS with external programs (so-called ESMEs in SMPP vocabulary)
16
* a user-side PC/SC interface to talk to SIM cards
17
18
The idea is that you run this against a SIM card you have locally inserted in a smart card reader, and that any SMS received on the SMPP interface will be delivered to the SIM via the ENVELOPE-SMS mechanism of proactive SIM.  To the SIM card, this looks exactly identical to how an OTA-SMS is handed to it while inserted into a UE (phone, modem).
19
20
Any responses provided by the SIM should then obviously also be handed back to the external program via SMPP.
21
22
The user starting the tool would have to provide the details such as
23
* IP/port to bind the SMPP interface to
24
* system_id/password of ESME allowed to connect
25
* PC/SC reader name / number
26
27
h2. 03.48 OTA core libary
28
29
This libary would implement the TS 03.48 secure APDU encoding/decoding, including
30
* 3DES and AES encryption/decryption
31
* padding
32
* MAC generation / verification
33
* CRC generation / verification
34
35
36
h2. Virtual OTA card reader
37
38
The purpose of this tool is to allow existing smart card software (such as for example pySim-shell) to talk to SIM cards via OTA.
39
40
The proposed tool offers two interfaces:
41
* an emulated PC/SC card reader towards pcscd (e.g. by using "ifd-vpcd":https://github.com/frankmorgner/vsmartcard/tree/master/virtualsmartcard/src/ifd-vpcd)
42
* a SMPP interface (ESME role) to allow exchanging SMS with external SMSC, such as
43
** a real, commercial cellular network, or
44
** a private cellular network, e.g. using [[osmomsc:|osmo-msc]]), or
45
** the above-mentioned SMPP-to-PCSC tool, talking to a SIM card in a smart card reader
46
47
Any Command-APDU arriving on the PC/SC side would undergo 
48
* TS 03.48 OTA encapsulation/encyption/MAC
49
* SMS TPDU encapsulation
50
* transmitted via SMPP
51
52
Any SMS arriving on the SMPP side would undergo
53
* SMS TPDU decapsulation
54
* TS 03.48 OTA decapsulation/decryption/MAC
55
* Response-APDU handed back via PC/SC
56
57
The user starting the tool would have to provide the details such as
58
* OTA key material
59
* MSL
60
* MSISDN to which to send the generated SMS
61
* IP/port + credentials for the SMPP interface (System ID, password)
Add picture from clipboard (Maximum size: 48.8 MB)