<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Communicating with Smart card on Linux machine(Fedora 8) in Operating System - Linux</title>
    <link>https://community.hpe.com/t5/operating-system-linux/communicating-with-smart-card-on-linux-machine-fedora-8/m-p/4329254#M62847</link>
    <description>By a quick Googling, the "SCARD_E_PROTO_MISMATCH" seems to indicate the protocol you're using is not supported by the card.&lt;BR /&gt;&lt;BR /&gt;The datasheet I found for the SLE-4428 card did not seem to mention the protocol(s) supported by the card.&lt;BR /&gt;&lt;BR /&gt;Have you tried allowing the system to autodetect the card protocol? I.e.:&lt;BR /&gt;&lt;BR /&gt;card = terminal.connect("*");&lt;BR /&gt;&lt;BR /&gt;If this works, and your original code works _with the same card_ in Windows XP, it may be the Windows XP driver is ignoring the protocol specification from your program and using whatever protocol seems to be workable. &lt;BR /&gt;&lt;BR /&gt;This might happen e.g. because the interface between Java and the native smartcard API of Windows might not allow (or implement) forcing a particular protocol. In Linux, the Java is using the PC/SC smart card interface; in Windows, the interface might be SCard COM.&lt;BR /&gt;&lt;BR /&gt;Disclaimer: I don't know too much about smart card programming details; just Googling and browsing the docs...&lt;BR /&gt;&lt;BR /&gt;MK</description>
    <pubDate>Tue, 30 Dec 2008 01:01:58 GMT</pubDate>
    <dc:creator>Matti_Kurkela</dc:creator>
    <dc:date>2008-12-30T01:01:58Z</dc:date>
    <item>
      <title>Communicating with Smart card on Linux machine(Fedora 8)</title>
      <link>https://community.hpe.com/t5/operating-system-linux/communicating-with-smart-card-on-linux-machine-fedora-8/m-p/4329253#M62846</link>
      <description>I have a problem in communicating with Smart card on Linux machine,&lt;BR /&gt;the card im using is SLE-4428 and ACR38 is my card reader.  In specific I have a problem with protocol which I am using for establishing connection with card. Is there a way to specify the &lt;BR /&gt;card type to the driver? Any help would be appriciated.&lt;BR /&gt;&lt;BR /&gt;Code Snippet that I am executing is:&lt;BR /&gt;&lt;BR /&gt; TerminalFactory factory = TerminalFactory.getDefault();&lt;BR /&gt; List terminals = factory.terminals().list();&lt;BR /&gt; terminal = (CardTerminal) terminals.get(0); &lt;BR /&gt;        card = terminal.connect("T=0");&lt;BR /&gt;&lt;BR /&gt; terminal.connect("T=0") statement is throwing an exception, details are as specified below:&lt;BR /&gt;&lt;BR /&gt;javax.smartcardio.CardException: connect() failed&lt;BR /&gt;&lt;BR /&gt;Caused by: sun.security.smartcardio.PCSCException: SCARD_E_PROTO_MISMATCH&lt;BR /&gt; at sun.security.smartcardio.PCSC.SCardConnect(Native Method)&lt;BR /&gt; at sun.security.smartcardio.CardImpl.&lt;INIT&gt;(CardImpl.java:83)&lt;BR /&gt; at sun.security.smartcardio.TerminalImpl.connect(TerminalImpl.java:79)&lt;BR /&gt; ... 22 more&lt;BR /&gt;&lt;BR /&gt;The same code is working fine in Windows XP.&lt;/INIT&gt;</description>
      <pubDate>Mon, 29 Dec 2008 06:17:45 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/communicating-with-smart-card-on-linux-machine-fedora-8/m-p/4329253#M62846</guid>
      <dc:creator>Amar HR</dc:creator>
      <dc:date>2008-12-29T06:17:45Z</dc:date>
    </item>
    <item>
      <title>Re: Communicating with Smart card on Linux machine(Fedora 8)</title>
      <link>https://community.hpe.com/t5/operating-system-linux/communicating-with-smart-card-on-linux-machine-fedora-8/m-p/4329254#M62847</link>
      <description>By a quick Googling, the "SCARD_E_PROTO_MISMATCH" seems to indicate the protocol you're using is not supported by the card.&lt;BR /&gt;&lt;BR /&gt;The datasheet I found for the SLE-4428 card did not seem to mention the protocol(s) supported by the card.&lt;BR /&gt;&lt;BR /&gt;Have you tried allowing the system to autodetect the card protocol? I.e.:&lt;BR /&gt;&lt;BR /&gt;card = terminal.connect("*");&lt;BR /&gt;&lt;BR /&gt;If this works, and your original code works _with the same card_ in Windows XP, it may be the Windows XP driver is ignoring the protocol specification from your program and using whatever protocol seems to be workable. &lt;BR /&gt;&lt;BR /&gt;This might happen e.g. because the interface between Java and the native smartcard API of Windows might not allow (or implement) forcing a particular protocol. In Linux, the Java is using the PC/SC smart card interface; in Windows, the interface might be SCard COM.&lt;BR /&gt;&lt;BR /&gt;Disclaimer: I don't know too much about smart card programming details; just Googling and browsing the docs...&lt;BR /&gt;&lt;BR /&gt;MK</description>
      <pubDate>Tue, 30 Dec 2008 01:01:58 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/communicating-with-smart-card-on-linux-machine-fedora-8/m-p/4329254#M62847</guid>
      <dc:creator>Matti_Kurkela</dc:creator>
      <dc:date>2008-12-30T01:01:58Z</dc:date>
    </item>
  </channel>
</rss>

