On 11/24/2011 4:02 AM, Anders Rundgren wrote:
> Hi Ludovic,
>
> You are a true smart card middleware expert.
> I'm not and my customers are even less of that.
> They just want to plug in and go.
>
> As it appears the smart card community/industry have created
> uniquely complex middleware for reasons unclear to me.

I never could understand it, either.

> It is
> proven beyond doubt that the platform vendors can't keep up
> with it either [2].  Do they even bother testing this stuff?
>
> I understand that there are "layers" but if not even "layer-0"
> works right-out-of-the-box the value of java-based software is
> greatly reduced.  "Write once run everywhere" actually works
> for sophisticated applications like EJBCA http://ejbca.org
> without low-level platform tweaks.
>
Since it sounds like your problem is more they trying to get
the javax.smartcardio.* to run, but more of access to smartcards
from java,

Have you read:

http://java.sun.com/developer/technicalArticles/J2SE/security/

  SunMSCAPI for Windows,
  SunPKCS11 for PKCS#11 platforms.

It also talkes about NSS.

another possible interface is Mozilla NSS for java.
Since NSS calls PKCS#11 security devices, it should work
on many platforms

http://www.mozilla.org/projects/security/pki/jss/

> Anders
> unconvinced
>
> On 2011-11-24 10:31, Ludovic Rousseau wrote:
>> 2011/11/23 Anders Rundgren<anders.rundg...@telia.com>:
>>> Hi,
>>
>> Hello,
>>
>>> I just wonder what your opinion is about Java smart card io which is a
>>> part of JDK 1.6 and forward.
>>>
>>> I did a minute test and it wasn't overly convincing :-(
>>>
>>> OTOH, as we all know that smart card middle ware is "hell on earth" I
>>> may simple haven't given it enough time.
>>
>> Do you know "PCSC sample in Java" [1]?
>>
>>> import javax.smartcardio.*;
>>> import java.util.List;
>>>
>>> public class smart
>>> {
>>>   public static void main (String[] args)
>>>     {
>>>       try
>>>         {
>>>           // show the list of available terminals
>>>           TerminalFactory factory = TerminalFactory.getDefault();
>>>           List<CardTerminal>  terminals = factory.terminals().list();
>>>
>>>           // get the first terminal
>>>           if (terminals.isEmpty ())
>>>             {
>>>               System.out.println ("No terminals found!");
>>>             }
>>>           else
>>>             {
>>>               System.out.println("Terminals: " + terminals);
>>>               CardTerminal terminal = terminals.get(0);
>>>               // establish a connection with the card
>>>               Card card = terminal.connect("T=0");
>>>               System.out.println("card: " + card);
>>>               CardChannel channel = card.getBasicChannel();
>>>               // disconnect
>>>               card.disconnect(false);
>>>             }
>>>         }
>>>       catch (Exception e)
>>>         {
>>>            e.printStackTrace ();
>>>         }
>>>     }
>>> }
>>>
>>> On windows you get an exception if there is no reader connected!
>>
>> I can't tell about Windows.
>>
>>> On Ubuntu I always get No terminals found!
>>
>> Ubuntu has a special configuration of pcsc-lite. Read "pcsc-lite
>> upgrade and Ubuntu special configuration" [2].
>>
>>> On both machines I have other smart card apps working including pcscd on 
>>> Ubuntu
>>> that in debug mode shows that the card is connected etc.
>>
>> You have not tried hard enough :-)
>>
>> Bye,
>>
>> [1] http://ludovicrousseau.blogspot.com/2010/06/pcsc-sample-in-java.html
>> [2] 
>> http://ludovicrousseau.blogspot.com/2010/10/pcsc-lite-upgrade-and-ubuntu-special.html
>>
>
> _______________________________________________
> opensc-devel mailing list
> opensc-devel@lists.opensc-project.org
> http://www.opensc-project.org/mailman/listinfo/opensc-devel
>
>

-- 

  Douglas E. Engert  <deeng...@anl.gov>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to