我想知道接触卡和非接触式(RF)卡在APDU命令/响应,实施等方面的区别。
我正在使用组合卡实现applet。我认为无论接触界面还是非接触式(RF)界面,applet都会为命令返回相同的响应APDU,但它看起来并非如此。我根本不知道。 (我之前为唯一的RF接口或唯一的联系人接口实现了一个小程序,而不是两者。)
是否可以实现applet为命令APDU返回相同的响应APDU?如果没有,那么差异在哪一方面。当我为两个接口实现applet时是否有任何考虑因素。我感谢任何相关的评论或信息(URL)。
感谢。
答案 0 :(得分:0)
接触和非接触(在APDU命令/响应方面)没有区别
答案 1 :(得分:0)
您所暗示的差异是T = 0和T = 1 / T = CL之间的差异。 T = 0和T = 1是基于接触的传输协议。 T = CL是14443 A型或B型非接触式卡的ContactLess协议。
T = 0是基于字节的,并且APDU的内容也用于传输层。从这个意义上讲,它是一种较低级别的协议。然而,在ISO / IEC 7816-4规范中,层之间的分离是非常糟糕的,但这并没有非常明确。
T = 0的一个影响是它无法区分编码命令的Lc和Le字节以及最大响应大小。因此,APDU需要发送或接收数据。它可以使用特定的状态字,例如61XX
和GET RESPONSE
APDU,以允许命令和响应数据。
T = 1且T = CL提供基础传输协议在其自己的层上操作。因此,它不需要对ISO案例4进行特殊处理。
现在对于Java Card,处理T = 0 GET RESPONSE主要由Java Card Runtime Environment完成,因此通常不需要非常具体的T = 0代码。