How to read / write synchronous only smart cards such as memory cards
I have IC memory cards that only support synchronous interface (e.g. SLE5532, SLE5542 ... etc.)
I would like to know how to write an application that reads the contents of memory, checks the PSC (PIN), and writes to the memory.
This type of card cannot accept conventional APDUs such as microprocessor cards. The Datasheet specifies the command to send in binary (all commands are 3 bytes long)
I found an application that was designed to work with SCM Reader (based on MCSCM.dll), but it doesn't work with my OmniKey reader.
I want to know if it is possible to create an application that directly calls the winsCard API functions without having to work with the Reader DLLs directly. and if so, what are the proper functions to call?
And if this is not possible, how can I find the OmniKey API? and can anyone send me samples that work with the OmniKey 3121 Reader and Synchronous Cards?
Thank you in advance
source to share
No, you cannot publicly address memory cards from the smart card reader. The hardware communication protocol is different from the processor cards, and each hardware manufacturer is on its own, but a pseudo-APDU to support this behavior. Therefore, without concrete reader support, you have no chance of making a connection. The situation is better with MIFARE, but that won't help you. If you cannot find the documentation at http://www.hidglobal.com , you can ask for their support. Otherwise, I would recommend using an SCM reader where you have the appropriate software.
Thi looks like what you need, the magic CT-API keyword, but that doesn't depend on winscard: http://www.hidglobal.com/drivers/14877 p>
source to share
If your reader supports the PC / SC 2.01.14 specifications find them here , he may support a general way to access memory cards. (But beware that support is optional and not everyone supports it.)
FF B0 ADDR1 ADDR0 Le
And there is a VERIFY command (for cards that support PIN verification)
FF 20 xx yy Lc PIN
To determine the type of a specific memory card, you can refer to the ATR (emulation) format for (contactless) memory cards (in section 3.1.3.2.3.2 part 3 of the specification ) and supplementary document 1 (ATR storage cards) of part 3 of the specification.
For example, if your card runs according to the I2C variant of ISO / IEC 7816-10, the ATR you get from the reader would look something like this:
8E 80 01 80 4F 0C A000000306 0D xxxx 00000000 yy
In addition to this, some manufacturers define their own custom commands (which can be used either through the PC / SC API or some other interface such as the CT-API or Omniey Synchronous API).
source to share