On Fri, Sep 03, 1999 at 03:51:30PM -0500, DAVID SIMS 1 281 285 7792 wrote:
> Hi Peter,
>
> One way of doing this is through a cryptographic handshake... Some cards
> (like the Schlumberger Cryptoflex sold in the US) can store a secret key
> securely and also do signing on the card... Thus, one side of the
> handshake could work like this:
>
> 1) reader (or host) gets an X.509v3 cert from the card (publicly available)
> 2) reader (or host) uses the cert to encrypt a random number and sends it
> to the card
> 3) card decrypts the number and sends it back to the reader (or host)
> 4) card can optionally sign the number that is sent back
> 5) reader (or host) knows that the card is authentic
But the software on the host can be broken into and the
signature check bypassed. If a host-based attack is part of your threat
model.
> Of course, this devolves to the trustedness of the CA that certified the
> public key, but that is what public key cryptography is all about....
> You could reverse this handshake to confirm to the card that the reader
> (or host) was authentic...
I haven't yet seen any cards that can parse an X.509 cert, v3 or otherwise.
Do any exist yet? Parsing X.509 ASN.1 isn't all that hard but
it's still a lof of code for a smartcard.
> Unfortunately, I believe that cards with strong crypto capability are
> only available in the USA...
I beleive that is not correct. None of the major smartcard makers (with
the possible exception of Schlumberger) are based in the US-
DeLaRue, Gemplus etc. are all in France. It's legal to import
strong crypto in a smartcard from outside the US to inside, but
then you can't export that same card back out. Yes, this is silly.
>but the new java cards (Cyberflex Access)
> provide a way of sort of 'beating' the export regulations in that the
> cards do not in themselves have crypto capability, but due to the fact
> that they have a java runtime environment the crypto stuff may be able
> to be done in software that is loaded by the user....
I think that the cards do have some h/w crypto. Doing
bigmath routines in Java on a smartcard would take a really long time.
--
Eric Murray www.lne.com/~ericm ericm at the site lne.com PGP keyid:E03F65E5
***************************************************************
Linux Smart Card Developers - M.U.S.C.L.E.
(Movement for the Use of Smart Cards in a Linux Environment)
http://www.linuxnet.com/smartcard/index.html
***************************************************************