pySim inconsistent on seemingly identical SIM cards

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Billy Jones wljones at praxiseng.com
Wed Sep 27 17:35:07 UTC 2017


Domi,

Thank you for the link!

So am I right in concluding that the SIM has a PIN associated with it and I’m not sending the correct one (from the code it looks like it’s sending “DDDDDDDD” as the default since I’m not specifying it in the command line)?

Thanks again,
Billy

From: Tomcsányi Domonkos [mailto:domi at tomcsanyi.net]
Sent: Wednesday, September 27, 2017 12:08 PM
To: Billy Jones
Cc: openbsc at lists.osmocom.org
Subject: Re: pySim inconsistent on seemingly identical SIM cards

Hi Billy,

Here you go:
https://eftlab.co.uk/index.php/site-map/knowledge-base/118-apdu-response-list

Good luck!
Domi


2017. szept. 27. dátummal, 17:50 időpontban Billy Jones <wljones at praxiseng.com<mailto:wljones at praxiseng.com>> írta:

I have two SIM card I inheritted from a previous project that I've been told came from the same vendor.  When I run `pcsc_scan` on them, I get the following output for both:

Reader 0: OMNIKEY CardMan (076B:3022) 3021 00 00
  Card state: Card inserted,
  ATR: 3B 7D 94 00 00 55 55 53 0A 74 86 93 0B 24 7C 4D 54 68

ATR: 3B 7D 94 00 00 55 55 53 0A 74 86 93 0B 24 7C 4D 54 68
+ TS = 3B --> Direct Convention
+ T0 = 7D, Y(1): 0111, K: 13 (historical bytes)
  TA(1) = 94 --> Fi=512, Di=8, 64 cycles/ETU
    62500 bits/s at 4 MHz, fMax for Fi = 5 MHz => 78125 bits/s
  TB(1) = 00 --> VPP is not electrically connected
  TC(1) = 00 --> Extra guard time: 0
+ Historical bytes: 55 55 53 0A 74 86 93 0B 24 7C 4D 54 68
  Category indicator byte: 55 (proprietary format)

Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B 7D 94 00 00 55 55 53 0A 74 86 93 0B 24 7C 4D 54 68
    SIM from sysmocom sysmoSIM-GR2

When I try to program one of the SIMs, it works fine:

$ sudo ./pySim-prog.py -p 0 -i 001010000000001 -k ffffffffffffffffffffffffffffffff -t sysmoSIM-GR2 --num=1 --mcc=001 --mnc=01
Insert card now (or CTRL-C to cancel)
Generated card parameters :
 > Name    : Magic
 > SMSP    : e1ffffffffffffffffffffffff0581005155f5ffffffffffff000000
 > ICCID   : 8901001010000000017
 > MCC/MNC : 1/1
 > IMSI    : 001010000000001
 > Ki      : ffffffffffffffffffffffffffffffff
 > OPC     : f134b55cea2942ebbd213c82e084be62
 > ACC     : None

Programming ...
Done !

But on the other I get:

$ sudo ./pySim-prog.py -p 0 -i 001010000000001 -k ffffffffffffffffffffffffffffffff -t sysmoSIM-GR2 --num=1 --mcc=001 --mnc=01

Insert card now (or CTRL-C to cancel)
Generated card parameters :
 > Name    : Magic
 > SMSP    : e1ffffffffffffffffffffffff0581005155f5ffffffffffff000000
 > ICCID   : 8901001010000000017
 > MCC/MNC : 1/1
 > IMSI    : 001010000000001
 > Ki      : ffffffffffffffffffffffffffffffff
 > OPC     : 53945a5223e299bf6cec05911922442c
 > ACC     : None

Programming ...
Traceback (most recent call last):
  File "./pySim-prog.py", line 636, in <module>
    card.program(cp)
  File "/home/user/workspace/pysim/pySim/cards.py", line 382, in program
    self._scc.verify_chv(0x05, pin)
  File "/home/user/workspace/pysim/pySim/commands.py", line 111, in verify_chv
    return self._tp.send_apdu_checksw(self.cla_byte + '2000' + ('%02X' % chv_no) + '08' + fc)
  File "/home/user/workspace/pysim/pySim/transport/__init__.py", line 87, in send_apdu_checksw
    raise RuntimeError("SW match failed ! Expected %s and got %s." % (sw.lower(), rv[1]))
RuntimeError: SW match failed ! Expected 9000 and got 9840.


I also tried some of the other branches, as people on other forums had reported better luck with those, but I get the same error.  Is there any documentation explaining the magic byte values that are sent back and forth to the card?  I'm having a hard time understanding the spec by which the program is trying too communicate with the card.

Any help is greatly appreciated.

Thanks,
Billy

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/openbsc/attachments/20170927/99e984e4/attachment.htm>


More information about the OpenBSC mailing list