smartcardjavacardjcop

Why I can't select MF?


I have a JCOP card (CJ3A080). This is output of OpenSC-Tool list files command :

C:\>opensc-tool -a -c jcop -f -v
Using reader with a card: ACS CCID USB Reader 0
Connecting to card in reader ACS CCID USB Reader 0...
Using card driver JCOP cards with BlueZ PKCS#15 applet.
Card ATR:
3B F8 13 00 00 81 31 FE 45 4A 43 4F 50 76 32 34 ;.....1.EJCOPv24
31 B7                                           1.
3f00 type: DF, size: 0
select[NONE] lock[NEVR] delete[NEVR] create[NEVR] rehab[N/A] inval[N/A] list[NON
E]

  3f002f00 type: wEF, ef structure: transparent, size: 128
  read[NONE] update[NEVR] erase[NEVR] write[NEVR] rehab[N/A] inval[N/A]

00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................

C:\>

Question 1: What is these zero bytes? Is it the EEPROM? if so, why it is just 128 Byte (While my card has a 80KB EEPROM)?

Question 2: What is the meaning of the elements in the below line?

select[NONE] lock[NEVR] delete[NEVR] create[NEVR] rehab[N/A] inval[N/A] list[NON
E]

Question 2: As I understand from the output, There must be a DF with 3F00 as its AID, right? So why I can't SELECT it?

C:\>opensc-tool -s 00a40400023f00
Using reader with a card: ACS CCID USB Reader 0
Sending: 00 A4 04 00 02 3F 00
Received (SW1=0x6A, SW2=0x82)

C:\>

Note that I think this is a Un-Fused Card(Not Personalized) --> Look Here

Update 1:

I tested some other different cards (Even some memory cards) with the same above commands. Output is the same above output and just ATR changed! It this output correct and reliable?

Update 2:

When I list installed drivers, this is output :

C:\>opensc-tool -D
Configured card drivers:
  cardos           Siemens CardOS
  flex             Schlumberger Multiflex/Cryptoflex
  cyberflex        Schlumberger Cyberflex
  gpk              Gemplus GPK
  gemsafeV1        driver for the Gemplus GemSAFE V1 applet
  miocos           MioCOS 1.1
  mcrd             MICARDO 2.1 / EstEID 1.0 - 3.0
  asepcos          Athena ASEPCOS
  starcos          STARCOS SPK 2.3/2.4
  tcos             TCOS 3.0
  openpgp          OpenPGP card
  jcop             JCOP cards with BlueZ PKCS#15 applet
  oberthur         Oberthur AuthentIC.v2/CosmopolIC.v4
  authentic        Oberthur AuthentIC v3.1
  iasecc           IAS-ECC
  belpic           Belpic cards
  ias              IAS
  incrypto34       Incard Incripto34
  acos5            ACS ACOS5 card
  akis             TUBITAK UEKAE AKIS
  entersafe        entersafe
  epass2003        epass2003
  rutoken          Rutoken driver
  rutoken_ecp      Rutoken ECP driver
  westcos          WESTCOS compatible cards
  myeid            MyEID cards with PKCS#15 applet
  sc-hsm           SmartCard-HSM
  setcos           Setec cards
  muscle           MuscleApplet
  atrust-acos      A-Trust ACOS cards
  piv              PIV-II  for multiple cards
  itacns           Italian CNS
  javacard         JavaCard (without supported applet)
  default          Default driver for unknown cards

C:\>

My card is a JCOP card. And I can see JCOP in the above list. But when I use -n parameter It response with Unsupported Card!

C:\>opensc-tool -n
Using reader with a card: ACS CCID USB Reader 0
Unsupported card

Solution

  • Maybe this card is not supported by OpenSC

    Check the SupportedHardware list. Verify it with opensc-tool --name to see if some driver knows how to handle your card.

    The expected result of the command is a line with a card driver name.