智能卡ISO7816-3标准指出某些卡没有义务支持字符重复(由于奇偶校验错误)。现在我们假设接口设备(ID)在ATR(复位应答)期间从未知卡接收奇偶校验错误数据。它(ID)向卡发出错误信号,但不知道卡是否支持重复,它如何确定卡上的下一个字符是重复的(有奇偶错误)还是下一个(如果卡没有支持重复)。智能卡答复重置
Q
智能卡答复重置
2
A
回答
1
据我理解标准,错误检测工作在以下方式:
为
T=0
错误信号和字符重复使用为他人总是有用于错误检测的帧校验和(
TCK
应答复位中的字节,LRC
/CRC
,T=1
帧)
引述的ISO/IEC 7816-3:2006,部分 “复位应答”,分段 “字符和编码约定”:
误差信号,并根据7.3字符重复是强制性的提供T = 0的卡;对于接口设备和其他卡是可选的 。
根据第援引第“检查字节TCK”,“回答一复位”:
如果只有T = 0被指示时,可能通过默认,然后TCK应空缺。如果存在T = 0和T = 15,并且在其他情况下全部为 ,则TCK应存在。当存在TCK时,排除所有字节T0至TCK(包括 )应给出'00'。任何其他值都是无效的。
上面意味着ATR的正确传输是通过误差信号/字符重复对纯T=0
卡检查。并通过TCK
字节为休息。
在你的场景中,接口设备在奇偶校验错误后确实无法区分重复字符和未重复字符,但是如果卡不支持错误信号/字符重复,则生成的TCK
字节(在此情况下为强制)应该很有可能出错。
免责声明:这是我的标准的解释,请大家验证我的想法...
祝你好运!
相关问题
- 1. 智能卡没有响应重置
- 2. Java智能卡 - 读Scosta智能卡
- 3. 智能卡非接触式复位apdu
- 4. CAC智能卡重新验证
- 5. 智能卡开发
- 6. 读取智能卡
- 7. 智能卡和Android
- 8. 智能卡查询
- 9. 安全智能卡
- 10. getATR()不会重置javax.smartcardio中的智能卡
- 11. 去重复智能随机行查询?
- 12. 智能代替重复的值蟒蛇
- 13. 智能卡读卡器是否支持所有智能卡模型?
- 14. 如何区分智能卡读卡器错误和智能卡错误
- 15. 智能复数总是智能?
- 16. C#智能卡编程
- 17. 启动智能卡编程
- 18. 虚拟智能卡实现
- 19. 智能卡上的ElGamal
- 20. ACS智能卡读写器
- 21. Active Directory智能卡授权
- 22. 智能卡写入错误
- 23. SLE4428智能卡问题
- 24. 隐藏智能卡内容
- 25. 智能卡访问速度
- 26. 关于智能卡安装
- 27. 用Java访问智能卡
- 28. 如何使用智能卡
- 29. 读取智能卡文件
- 30. 智能卡与ACR122U交互
对我来说确实很有意义,虽然我问自己为什么在某些情况下(奇偶校验检测)我有机会获得重复的字符,而在其他情况下(无TCK),我可以知道某些事情并不正确。但是,假设这背后应该有一些历史原因。虽然我接受了这个答案,但我几乎无法验证它 - 请参阅[链接] https://electronics.stackexchange.com/questions/329913/smart-card-parity-error-notification .. – Djole
@Djole我希望我有一个验证回答你(也许别人给了一个更好的)。 [这里](https://github.com/vlp/ssim/blob/master/src/common/me_io。公司)是一个非常简单的(忙等待)卡侧执行PIC与错误检测。祝你好运! – vlp
我将阅读您指出的代码,但PIC对于我们正在讨论的问题具有很好的功能 - 它会在停止位的一半(来自应用说明[链接] http:// ww1的声明中宣布错误。 microchip.com/downloads/en/AppNotes/01370A.pdf)。目前我决定忽略平价,因为还有很多问题,除了这个平价问题之外,我必须说清楚。 – Djole