frankmorgner/vsmartcard

[Feature request] Access to on-phone SIM card from computer through Bluetooth SIM Access Profile

Closed this issue · 3 comments

The use case behind this suggestion is accessing Wifi networks with EAP-SIM authentication from a host computer, without having to remove the SIM from the phone.

Not sure it will be considered relevant to this project though, but here it goes, in the hope it will be 😄

Technically, that should be possible. You would have to wrap your connection to the phone's SIM into the SCReader interface. With this, you will be able to relay the phone's SIM to your PCs virtual smart card reader.

I don't know, howerver, how to use the Bluetooth SIM Access Profile in Android to wrap this into the app.

You wouldn’t have to, SAP on the mobile device side is taken care of already. No additional software is necessary on the mobile phone, only vpcd would have to be able to connect to the phone using the Bluetooth SIM Access Profile… but it seems it strays outside of the communication framework you use between vpcd and vpiccs, hence I’m not sure you will find it relevant.

Using SAP has the advantage of being minimalistic (nothing else to install on the phone) and likely more energy-efficient, but of course one can ditch the idea of using BT SAP to communicate and instead use the Remote SCReader app to access the SIM… but I suspect there would be security concerns, and that would require extended rights for the app to be able to send APDUs to the SIM, if it’s even possible. I don’t know really.

Allowing Bluetooth access to the virtual reader has been suggested multiple times in the past as it may also offer a better user experience than using IP in some cases. However, I did not receive any pull requests in that regard. Feel free to add this functionality to access the phone's SIM. The Windows vpcd driver, for example, already has different connection modes which are implemented around the Reader interface, see Reader.h

That being said, I still believe that the complexity of the code to be added would still be simpler if you modified the app to access the SIM and forward this via the existing IP connection...