ISO7816-3智能卡标准规定某些卡没有义务支持字符重复(由于奇偶校验错误)。现在假设接口设备(ID)在ATR期间从未知卡接收奇偶校验错误数据(应答重置)。它(ID)向卡发出错误信号,但不知道卡是否支持重复,如何确定卡中的下一个字符是重复一个(有奇偶校验错误)还是下一个(如果卡不重复)支持重复)。
答案 0 :(得分:1)
据我了解标准,错误检测的工作方式如下:
T=0
使用错误信号和字符重复
对于其他人,始终存在帧校验和,用于错误检测({1}}字节在重置答案中,TCK
/ LRC
在{{1 }}}}
引用ISO / IEC 7816-3:2006,第"回答重置",小节"字符和编码惯例":
根据7.3的错误信号和字符重复对于提供T = 0的卡是强制性的;它是可选的 用于接口设备和其他卡。
引用小节"检查字节TCK"在#34;回复重置":
如果仅指示T = 0,则可能默认情况下,则TCK将不存在。如果T = 0且T = 15,则总共存在 在其他情况下,TCK应在场。当TCK存在时,将所有字节T0到TCK包含在内 应给出' 00'任何其他值都无效。
以上意味着通过纯CRC
卡的错误信号/字符重复来检查ATR的正确传输。其余为T=1
字节。
在您的场景中,接口设备实际上无法在奇偶校验错误之后区分重复字符和未重复字符,但是如果卡不支持错误信号/字符重复,则生成T=0
字节(这是强制性的)这种情况)概率很高。
免责声明:这是我对标准的解释,请确认我的想法......
祝你好运!