Search code examples
javasmartcardapdusmartcard-reader

Selecting MF or HCA returns always error 6E 00 - Class 'CLA' no supported - for eGK


I have seen a number of topics on the subject. Most of them suggest that CLA sent to the card reader is wrong. However, I am using codes described in German documentation for the card (Implementierungsleitfaden zur Einbindung der eGK in die Primärsysteme der Leistungserbringer v1.6.0 from 21.10.2013).
According to that doc (point 5.4.4.1) I should sent:

00 A4 04 0C 07 D2 76 00 01 44 80 00
to select MF or

00 A4 04 0C 06 D2 76 00 00 01 02
to select HCA

in both cases I get 6E 00 error. Commans such as:

  • Request iCC (20 12 01 01 XX)
  • or Reset CT (20 11 00 00 00)

from the same doc, work just fine.

Any idea why do I get CLA not supported - could it be for example because there is not data on the card and if so how can I check it?

Thank you in advance


Solution

  • The reason was obvious but since it was my first time with card readers I did not see it for long time: I was sending ICC commands (like select file) to to CT (JavaCTAPI.CT) whereas I should be sending them to ICC1 (JavaCTAPI.ICC1).

    In other words I was doing this:

    ctData(..., JavaCTAPI.CT, ..., ..);

    whereas I should have been doing this:

    ctData(..., JavaCTAPI.ICC1, ..., ..);