PPS是什么
Protocol and Parameters Selection,直译为协议和参数选择,是读写器与卡片协商通信协议和传输参数的一个过程。
何时进行PPS
卡片在复位应答(ATR)中表明自身所支持的协议和参数。读写器可以使用默认的协议,或者通过PPS数据交换选择其它协议。大多数的情况是,读写器通过PPS协商使用新的传输参数,如波特率因子,但并不更改传输协议。也就是说卡片在发送完ATR给读写器后,读写器发送PPS请求,然后卡片发送PPS响应。
简单来说就是读写器在收到卡片的复位应答(ATR)后,看看ATR中是否含有TA2字段,如果有,那么就按照TA2中设置的参数进行通信,如果没有,就发送PPS请求。
PPS请求
PPS响应
PPS响应的数据细节同PPS请求的细节一样,但设置上需要遵从以下规则:
- 响应PPS0的bit 1~4同请求PPS的bit 1~4一样。
- 响应PPS0的bit 5~7同请求PPS的bit 5~7一样,或置0。
- 响应PPS0的bit8同样为保留位。
实际上,绝大部分时候,响应PPS同请求PPS是一样的。
看个实例
这是我在卡片复位时抓出来的数。3B 70 13 00 00 是 ATR ,FF 10 13 FC 是 PPS 请求,最后的 FF 10 13 FC 是 PPS 响应。下面具体分析:
- ATR 中没有 TA2 字段,所以才有了后面的 PPS 。
- FF - 是初始字节。
- 10 - 表示后面只有 PPS1。
- 13 - 分别代表F为1、D为3。