Using both contact and contactless interfaces of smart card

Hi!Is it possible to use both interfaces (contact and contactless) of smart card at the same time? Or is there a possibility to switch among them issuing some command from applet to Java Card OS?Thanks
[229 byte] By [alToSa] at [2007-11-27 3:28:34]
# 1

are you referring to threading or the contactless having the same capabilites as a contact ?

There are cards called Hybrid. Those cards contain contact&contactless chips. The contactless chips are "wired" to the contact chip to utilize the same features, memory, firewalls, etc found on the contact.

Joseph.Smitha at 2007-7-12 8:31:25 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 2
I reference Hybrid cards
alToSa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 3

Actually it is one micro controller with two different interfaces. Upon the interface detection (signal on contact? signal on ct'less? ...) the OS decides which interface to choose. As for JCOP/NXP I did some tests. First it checks for ct'less, then, if not present, it checks the contact interface. Once the activation sequence is successful (resulting in an ATR/ATS at the end), JCOP sticks with the interface until the next reset.

Message was edited by:

lexdabear

lexdabeara at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 4
For example, if contact interface is used and I try to connect at the same time using contactless interface - what should I get in host application (let say, connection is via PC/SC)?And can I make reset from whithin applet?Thanks
alToSa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 5

JCOP/NXP: Once the activation sequence passes, the interface is fixed until next reset. So you cannot connect at the same time with the contactless interface. The contactless part is specified in the new PC/SC specification. The ATS is parsed into an ATR.

According to the Java Card specification, there is no way to reset a card from within an applet.

What are you trying to achieve? If you want to avoid contactless communication, there are methods to check the interface used. Check out javacard.framework.APDU.getProtocol()

lexdabeara at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 6
I wish I could switch interfaces from within applet
alToSa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 7

A smart card solution relies heavily on standards. I do not see any possibility to change the interface "on the fly" without violating ISO7816-3 or ISO14443-3/4 standard. What you could do is build a system where the off-card side (terminal, back end system) issues a reset in case a certain APDU is received from the card. A reset comes always from the off-card side.

lexdabeara at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 8
What I don't understand is why you would want to switch? Once the contactless interface is used, why would you want to switch ? What's the use-case ?
Joseph.Smitha at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 9
Sure there's a case.... pity I do not see any possibilities to switch or to work on both connections
alToSa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 10
Share your use case !
Joseph.Smitha at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 11
Yeah, share it!
lexdabeara at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 12
I'd like to hear that one too... :)
mkdataa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 13
Same here, would like hear about. push further any case for tri-interface ( contact, contactless, usb)? any case for virgin card (pre-perso), switch T0/T1, Type A/Type B , speed on field instead of factory (with NXP Permission, of cause)?
sonnyyua at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 14
A card which acts like a proxy.... having main connection on contact interface and resending all data forth and back via contactless to some other device
alToSa at 2007-7-12 8:31:26 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 15

I still don't understand. What we are trying to tell you is that with hybrid cards, you have two interfaces using the same memory space. In other words, two doors to the same house. Regardless of how you entered, you are able to utilize the same JC features. Based on what you stated as your use-case, you are using different readers at different times. When you resend your data to a CL reader, you are removing the card from the USB/contact reader. ( I don't know of a hybrid reader that reads BOTH at the same time ).

Joseph.Smitha at 2007-7-21 20:47:50 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 16

> Same here, would like hear about. push further any

> case for tri-interface ( contact, contactless, usb)?

> any case for virgin card (pre-perso), switch T0/T1,

> Type A/Type B , speed on field instead of factory

> (with NXP Permission, of cause)?

I guess there is no big business case for this kind of request. Otherwise companies would drive this option in the standardization organizations.

If you're a NXP customer you should know that to a certain point there is a way to change the settings. Again, if you have a good business case, contact a smart card OS provider with your requirement. There is always the possibility to implement something proprietary. The question is if you're OK to be not compliant anymore.

lexdabeara at 2007-7-21 20:47:50 > top of Java-index,Java Mobility Forums,Consumer and Commerce...
# 17

> A card which acts like a proxy.... having main

> connection on contact interface and resending all

> data forth and back via contactless to some other

> device

The only possibility I see is to store the history of the communication history with the contact reader in your applet and when the card is activated contactless, resend the history once the applet is selected.

As Joseph.Smith pointed out the the smart card architecture does not allow your use case. The biggest problem would be the security aspect.

lexdabeara at 2007-7-21 20:47:50 > top of Java-index,Java Mobility Forums,Consumer and Commerce...