[发明专利]一种访问智能卡的方法和读卡器有效
申请号: | 201510248878.1 | 申请日: | 2015-05-15 |
公开(公告)号: | CN104915616B | 公开(公告)日: | 2017-11-28 |
发明(设计)人: | 陆舟;于华章 | 申请(专利权)人: | 飞天诚信科技股份有限公司 |
主分类号: | G06K7/00 | 分类号: | G06K7/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 访问 智能卡 方法 读卡器 | ||
1.一种访问智能卡的方法,其特征在于,所述方法包括:
步骤S1:读卡器接收上位机发送的指令数据,将接收到的所述指令数据作为当前指令数据,初始化当前块号;
步骤S2:所述读卡器判断当前指令数据的长度是否超过预先协商的通信长度,是则执行步骤S3,否则执行步骤S5;
步骤S3:所述读卡器根据所述预先协商的通信长度,从当前指令数据中获取指令数据,将协议控制字节设置为带链接的信息块,并根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节和获取到的指令数据得到指令数据块,向智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块;
步骤S4:所述读卡器切换当前块号,根据预先协商的通信长度更新当前指令数据,返回步骤S2;
步骤S5:所述读卡器将协议控制字节设置为不带链接的信息块,并根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节与当前指令数据得到指令数据块,向智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块;
步骤S6:所述读卡器切换当前块号,从所述应答数据块中获取应答数据,顺序存储获取到的应答数据;
步骤S7:所述读卡器判断所述应答数据块是否带链接,是则执行步骤S8,否则向所述上位机返回正确信息和存储的应答数据,结束;
步骤S8:所述读卡器将协议控制字节设置为接收准备块,根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节得到指令数据块,向所述智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块,返回步骤S6;
所述步骤S3,所述向智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块,具体为:
步骤A1-1:所述读卡器向所述智能卡发送所述指令数据块,接收所述智能卡返回的数据,初始化数据块重传次数、回传标志位和管理块请求次数;
步骤A1-2:所述读卡器判断所述数据块重传次数是否达到最大重传次数,是则向所述上位机返回错误信息,否则执行步骤A1-3;
步骤A1-3:所述读卡器根据接收到的数据判断发送和接收是否成功,是则执行步骤A1-4,否则执行步骤A1-9;
步骤A1-4:所述读卡器判断接收到的数据中的应答数据块是否为管理块,是则执行步骤A1-5,否则执行步骤S4;
步骤A1-5:所述读卡器判断所述回传标志位是否置位,是则更新所述管理块请求次数,初始化所述回传标志位,执行步骤A1-6,否则初始化所述管理块请求次数,执行步骤A1-6;
步骤A1-6:所述读卡器初始化所述数据块重传次数,判断所述管理块请求次数是否超过最大管理块请求次数,是则向所述上位机返回错误信息,否则执行步骤A1-7;
步骤A1-7:所述读卡器判断所述应答数据块中的请求信息是否合法,是则执行步骤A1-8,否则向所述上位机返回错误信息;
步骤A1-8:所述读卡器根据所述应答数据块中的请求信息更新延迟时间,根据所述请求信息生成应答信息,将协议控制字节设置为管理块,根据所述协议控制字节与所述应答信息得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,返回步骤A1-3;
步骤A1-9:所述读卡器将所述回传标志位置位,将协议控制字节设置为包 含否定确认的接收准备块,并根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,更新所述数据块重传次数,返回步骤A1-2;
所述步骤S5中,所述向智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块,具体为:
步骤A2-1:所述读卡器向所述智能卡发送所述指令数据块,接收所述智能卡返回的数据,初始化数据块重传次数、回传标志位和管理块请求次数;
步骤A2-2:所述读卡器判断所述数据块重传次数是否达到最大重传次数,是则向所述上位机返回错误信息,否则执行步骤A2-3;
步骤A2-3:所述读卡器根据接收到的数据判断发送和接收是否成功,是则执行步骤A2-4,否则执行步骤A2-9;
步骤A2-4:所述读卡器判断接收到的数据中的应答数据块是否为管理块,是则执行步骤A2-5,否则执行步骤S6;
步骤A2-5:所述读卡器判断所述回传标志位是否置位,是则更新所述管理块请求次数,初始化所述回传标志位,执行步骤A2-6,否则初始化所述管理块请求次数,执行步骤A2-6;
步骤A2-6:所述读卡器初始化所述数据块重传次数,判断所述管理块请求次数是否超过最大管理块请求次数,是则向所述上位机返回错误信息,否则执行步骤A2-7;
步骤A2-7:所述读卡器判断所述应答数据块中的请求信息是否合法,是则执行步骤A2-8,否则向所述上位机返回错误信息;
步骤A2-8:所述读卡器根据所述应答数据块中的请求信息更新延迟时间,根据所述请求信息生成应答信息,将协议控制字节设置为管理块,根据所述协 议控制字节与所述应答信息得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,返回步骤A2-3;
步骤A2-9:所述读卡器将所述回传标志位置位,将协议控制字节设置为包含否定确认的接收准备块,并根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,更新所述数据块重传次数,返回步骤A2-2;
所述步骤S8中,所述向智能卡发送所述指令数据块,接收所述智能卡返回的应答数据块,具体为:
步骤A3-1:所述读卡器向所述智能卡发送所述指令数据块,接收所述智能卡返回的数据,初始化数据块重传次数、回传标志位和管理块请求次数;
步骤A3-2:所述读卡器判断所述数据块重传次数是否达到最大重传次数,是则向所述上位机返回错误信息,否则执行步骤A3-3;
步骤A3-3:所述读卡器根据接收到的数据判断发送和接收是否成功,是则执行步骤A3-4,否则执行步骤A3-9;
步骤A3-4:所述读卡器判断接收到的数据中的应答数据块是否为管理块,是则执行步骤A3-5,否则返回步骤S6;
步骤A3-5:所述读卡器判断所述回传标志位是否置位,是则更新所述管理块请求次数,初始化所述回传标志位,执行步骤A3-6,否则初始化所述管理块请求次数,执行步骤A3-6;
步骤A3-6:所述读卡器初始化所述数据块重传次数,判断所述管理块请求次数是否超过最大管理块请求次数,是则向所述上位机返回错误信息,否则执行步骤A3-7;
步骤A3-7:所述读卡器判断所述应答数据块中的请求信息是否合法,是则 执行步骤A3-8,否则向所述上位机返回错误信息;
步骤A3-8:所述读卡器根据所述应答数据块中的请求信息更新延迟时间,根据所述请求信息生成应答信息,将协议控制字节设置为管理块,根据所述协议控制字节与所述应答信息得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,返回步骤A3-3;
步骤A3-9:所述读卡器将协议控制字节设置为包含肯定确认的接收准备块,并根据当前块号设置所述协议控制字节中的块号,根据所述协议控制字节得到指令数据块,向所述智能卡发送所述指令数据块,并接收所述智能卡返回的数据,更新所述数据块重传次数,返回步骤A3-2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于飞天诚信科技股份有限公司,未经飞天诚信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510248878.1/1.html,转载请声明来源钻瓜专利网。