我希望从不同供应商,不同使用情况和不同APDU的一堆智能卡中读取一些基本信息。 例如:国家鉴定智能卡,EMV(支付),手机SIM,javacard等...使用不同的SC系列进行智能卡探测:清除SC状态的命令
我写了一个Java应用程序。 让我打电话给SC家庭A B C D E,并用同样的名字命名5个子程序,每个子程序都有正确的APDU来读取SC的一个特定家庭的基本信息。
不幸的是,我发布例程的顺序偏向于成功的结果。
实施例:用子例程顺序ABCDE,我可以读取类型ABCD,不E.的SC
如果我改变执行顺序EABCD,我可以改为E但现在我失败,类型C的SC
我明白了:有些SC放弃外来APDU ......其他SC“挂起”。
是否有清除智能卡(和读卡器)状态的基本命令?
所以子程序的执行顺序不会改变输出吗?
A复位B复位C复位D复位等...
是ATR?每种类型的SC都是强制性的吗?
这不应该发生。你使用哪种读卡器?你用不同的读卡器观察到了同样的行为吗? – arminb
是的,两种不同的读卡器。不考虑具体的测试:这是重置读卡器和卡状态的通用方法? – Massimo