[发明专利]一种访问智能卡的方法和读卡器有效
申请号: | 201510248878.1 | 申请日: | 2015-05-15 |
公开(公告)号: | CN104915616B | 公开(公告)日: | 2017-11-28 |
发明(设计)人: | 陆舟;于华章 | 申请(专利权)人: | 飞天诚信科技股份有限公司 |
主分类号: | G06K7/00 | 分类号: | G06K7/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种访问智能卡的方法和读卡器,该方法包括读卡器接收指令数据作为当前指令数据;若当前指令数据的长度超过预先协商的通信长度,则根据预先协商的通信长度,从当前指令数据中获取指令数据,设置协议控制字节,向智能卡发送组合得到的指令数据块,接收智能卡返回的应答数据块;更新当前指令数据;若当前指令数据的长度未超过预先协商的通信长度,设置协议控制字节,向智能卡发送组合得到的指令数据块,接收智能卡返回的应答数据块;从应答数据块中获取应答数据;若应答数据块不带链接则向上位机返回应答数据;若应答数据块带链接则设置协议控制字节,根据协议控制字节得到指令数据块,向智能卡发送指令数据块,接收返回的应答数据块。 | ||
搜索关键词: | 一种 访问 智能卡 方法 读卡器 | ||
【主权项】:
一种访问智能卡的方法,其特征在于,所述方法包括:步骤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。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于飞天诚信科技股份有限公司,未经飞天诚信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510248878.1/,转载请声明来源钻瓜专利网。