Re: gsm: implement initial unlock dialog for PIN & PUK

On Wed, 2010-03-10 at 18:24 +0100, van Schelve wrote:
> I found the new initial unlock dialog for PIN & PUK after testing the
> latest git code today.
> I have written a python based gtk application for pin handling some weeks
> ago. The intention for this 
> small app is that after a fresh system installation the user get's
> prompted for the PIN until he has
> entered it at least one time. Then I write the given PIN into a prepared
> system-connection file and 
> copy this to /etc/NetworkManager/system-connections. If the entered PIN is
> wrong or the modem is 
> locked I prompt either to reenter the right PIN or to enter the PUK
> directly. It would be very nice
> if the new pin dialog would have these features as well. At least it
> should store the given PIN maybe
> in gnome-keyring. Otherwise after each power off / on the user gets the
> pin dialog again and again.

Currently there are two ways to handle PINs:

1) save it in the connection information (yes, in the keyring) in
nm-connection-editor; when you choose the connection from the menu the
PIN will automatically be sent.

2) the initial unlock dialog, which is not saved.

Saving and sending the PIN sort of defeats the purpose of setting a PIN
in the first place, but that's not really important here.

The problem with this is that the PIN is a *SIM* PIN.  It's tied only to
the SIM card.  So how do we store that PIN so that we can automatically
unlock specific devices?  Remember that:

1) many devices don't allow you to get the IMSI (the unique ID of your
SIM) before the device is unlocked

2) we can't use USB serial numbers, since the PIN code is specific to
the SIM and not to the device itself

3) besides, USB serial numbers are often bogus because manufacturers
don't bother to assign unique IDs to each device

So only for *some* devices can we get the IMSI before unlocking the
device, and thus be sure the PIN we're about to send is for the correct
SIM.  We could also save some information about the device itself
(driver name, USB IDs, IMSI if available) and get perhaps 80% of the way
there.  So it's not impossible, just difficult to get mostly right.

But it's also more complicated than just storing the PIN and sending it
to the device, because we have to know which device and SIM the PIN
applies to.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]