SIM card interface for doubango
The pre-existing doubango library code assumes that the IMS client has knowledge of the secret key material (K + OP/OPc) in order to perform the authentication and IPsec key establoshment to the P-CSCF.
This may be the case in some testing/lab setups, but in general this key material is stored on the ISIM or USIM application of a SIM card.
If we want to use doubango with such standard cards, we need some kind of interface how doubango can perform authentication via ISIM/USIM.The interface should be rather generic, as the detailed interface for SIM access will be highly platform specific:
- For development on a normal Linux laptop, a pcsc-lite based interface to a smart card reader will be used.
- For execution inside a specific phone, phone specific interfaces for SIM card access may be used (QMI, AT+CSIM, ...)
- generic interface for SIM based authentication in doubango
- reference implementation for accessing a SIM in pcsc-lite compatible reader
Updated by laforge almost 2 years ago
- Priority changed from High to Urgent
- % Done changed from 0 to 20
I've been slow in making progress, too many distractions in other projects.
There is a bunch of incomplete code that's too early to commit anywhere, both on the SIM server side (will be part of pySim) and also a bit on the user side.
The protocol currently looks like this over a unix domain socket.
I've documented it at AKA_socket_SIM_interface