命令处理方法及装置制造方法及图纸

技术编号:13381031 阅读:31 留言:0更新日期:2016-07-21 12:45
本发明专利技术适用于通信技术领域,提供了命令处理方法及装置。该方法包括:当检测到CCID命令时,获取CCID命令的类型;若CCID命令是标准CCID命令,则处理CCID命令;若CCID命令是自定义CCID命令,且COS限定使用SCSI通道进行通信,则不处理CCID命令;若CCID命令是自定义CCID命令,且COS已开启CCID通道,则使用CCID通道的APDU流程处理CCID命令;若CCID命令是自定义CCID命令,且COS未开启CCID通道,则不处理CCID命令。本发明专利技术能够正常处理主机操作系统下发的CCID命令,且不影响SCSI通道的正常使用,增强了CCID USB Key复合设备的通信稳定性。

【技术实现步骤摘要】
命令处理方法及装置
本专利技术属于通信
,尤其涉及命令处理方法及装置。
技术介绍
对于CCID(ChipCardInterfaceDevice,智能卡接口设备),主机操作系统会下发标准CCID命令,Window7和WindowsXP等操作系统还会下发智能卡标准APDU(ApplicationProtocolDataUnit,应用协议数据单元)命令,这会影响到CCID设备的SCSI(SmallComputerSystemInterface,小型计算机系统接口)通信。例如,对于使用CCID通道和SCSI通道的USB(UniversalSerialBus,通用串行总线)Key(密钥)复合设备,在中间件使用SCSI与设备通信时,若主机操作系统下发CCID命令,则会导致插入指令错误,从而影响SCSI通信。
技术实现思路
鉴于此,本专利技术实施例提供了一种命令处理方法及装置,以解决现有技术中主机操作系统下发的CCID命令影响SCSI通信的问题。第一方面,本专利技术实施例提供了一种命令处理方法,包括:当检测到CCID命令时,获取所述CCID命令的类型;若所述CCID命令是标准CCID命令,则处理所述CCID命令;若所述CCID命令是自定义CCID命令,且COS限定使用SCSI通道进行通信,则不处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,所述COS未限定使用所述SCSI通道进行通信,且所述COS已开启CCID通道,则使用所述CCID通道的APDU流程处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,且所述COS未开启所述CCID通道,则不处理所述CCID命令。第二方面,本专利技术实施例提供了一种命令处理装置,包括:CCID命令类型获取单元,用于当检测到CCID命令时,获取所述CCID命令的类型;第一处理单元,用于若所述CCID命令是标准CCID命令,则处理所述CCID命令;第二处理单元,用于若所述CCID命令是自定义CCID命令,且COS限定使用SCSI通道进行通信,则不处理所述CCID命令;第三处理单元,用于若所述CCID命令是所述自定义CCID命令,所述COS未限定使用所述SCSI通道进行通信,且所述COS已开启CCID通道,则使用所述CCID通道的APDU流程处理所述CCID命令;第四处理单元,用于若所述CCID命令是所述自定义CCID命令,且所述COS未开启所述CCID通道,则不处理所述CCID命令。本专利技术实施例与现有技术相比存在的有益效果是:本专利技术实施例通过当检测到CCID命令时,获取该CCID命令的类型,若该CCID命令是标准CCID命令,则直接处理该CCID命令而不走APDU流程,若该CCID命令是自定义CCID命令,则只有COS开启了CCID通道时才使用CCID通道的APDU流程处理该CCID命令,由此能够正常处理主机操作系统下发的CCID命令,且不影响SCSI通道的正常使用,从而增强了使用CCID通道和SCSI通道的CCIDUSBKey复合设备的通信稳定性。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的命令处理方法的实现流程图;图2是本专利技术另一实施例提供的命令处理方法的实现流程图;图3是本专利技术实施例提供的命令处理装置的结构框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。图1示出了本专利技术实施例提供的命令处理方法的实现流程图,详述如下:在步骤S101中,当检测到CCID命令时,获取该CCID命令的类型。优选地,当检测到CCID命令时,获取该CCID命令的类型具体为:当检测到CCID命令时,接收该CCID命令的一个数据包;根据接收的数据包确定该CCID命令的类型。在本专利技术实施例中,当检测到CCID命令时,先接收CCID命令的一个数据包,根据接收的数据包的第一个字节确定该CCID命令的类型。在这里,通过先接收CCID命令的一个数据包,而不直接接收CCID命令的所有数据包,提高了通信效率。在步骤S102中,若该CCID命令是标准CCID命令,则处理该CCID命令。其中,标准CCID命令指的是CCID协议定义的命令中非用于发送APDU的命令,如PC_to_RDR_lccPowerOn、PC_to_RDR_lccPowerOff、PC_to_RDR_GetSlotStatus等。若该CCID命令是标准CCID命令,则直接处理该CCID命令,而不走APDU流程。优选地,处理该CCID命令包括:接收该CCID命令的剩余的数据包;处理该CCID命令;返回响应信息。在步骤S103中,若该CCID命令是自定义CCID命令,且COS限定使用SCSI通道进行通信,则不处理该CCID命令。其中,自定义CCID命令指的是自定义的完成COS(ChipOperatingSystem,片内操作系统)功能的CCID命令。在本专利技术实施例中,若COS已经确定使用SCSI通道进行通信,则CCID通道不可用,因此不处理该CCID命令。优选地,不处理CCID命令包括:丢弃接收的所述数据包;返回错误信息。在这里,返回错误信息具体可以为返回插入指令错误信息。在步骤S104中,若该CCID命令是自定义CCID命令,COS未限定使用SCSI通道进行通信,且COS已开启CCID通道,则使用CCID通道的APDU流程处理该CCID命令。优选地,使用CCID通道的APDU流程处理该CCID命令包括:接收该CCID命令的剩余的数据包;使用CCID通道的APDU流程处理该CCID命令;返回响应信息。在步骤S105中,若该CCID命令是自定义CCID命令,且COS未开启CCID通道,则不处理该CCID命令。优选地,不处理CCID命令包括:丢弃接收的数据包;返回错误信息。在这里,返回错误信息具体可以为返回条件不满足的错误信息。优选地,若该CCID命令是自定义CCID命令,则在使用CCID通道的APDU流程处理该CCID命令之前,该方法还包括:判断是否接收到自定义APDU判定命令,若是,则判定COS已开启CCID通道;若否,则判定COS未开启CCID通道。在本专利技术实施例中,自定义APDU判定命令是专用于开启CCID通道的命令,若接收到自定义APDU判定命令,则判定COS已开启CCID通道。图2示出了本专利技术另一实施例提供的命令处理方法的实现流程图,参照图2:在步骤S201中,当检测到CCID命令时,获取该CCID命令的类型;在步骤S202中,根据该CCID命令的类型判断该CCID命令是否为标准CCID命令,若是,则执行步骤S203;若否,则执行步骤S204;在步骤S203中,处理该CCID命令;在步骤S204中,判断COS是否限定SCSI通道进行通信,若是,则执行步骤S205;若否,则执行步骤S206;在步骤S205中,不处理该CCID命令;在步骤S206中,判断COS本文档来自技高网...

【技术保护点】
一种命令处理方法,其特征在于,包括:当检测到CCID命令时,获取所述CCID命令的类型;若所述CCID命令是标准CCID命令,则处理所述CCID命令;若所述CCID命令是自定义CCID命令,且COS限定使用SCSI通道进行通信,则不处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,所述COS未限定使用所述SCSI通道进行通信,且所述COS已开启CCID通道,则使用所述CCID通道的APDU流程处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,且所述COS未开启所述CCID通道,则不处理所述CCID命令。

【技术特征摘要】
1.一种命令处理方法,其特征在于,包括:当检测到CCID命令时,获取所述CCID命令的类型;若所述CCID命令是标准CCID命令,则处理所述CCID命令,标准CCID命令指的是CCID协议定义的命令中非用于发送APDU的命令;若所述CCID命令是自定义CCID命令,且片内操作系统限定使用SCSI通道进行通信,则不处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,所述片内操作系统未限定使用所述SCSI通道进行通信,且所述片内操作系统已开启CCID通道,则使用所述CCID通道的APDU流程处理所述CCID命令;若所述CCID命令是所述自定义CCID命令,且所述片内操作系统未开启所述CCID通道,则不处理所述CCID命令。2.如权利要求1所述的方法,其特征在于,若所述CCID命令是所述自定义CCID命令,则在所述使用所述CCID通道的APDU流程处理所述CCID命令之前,所述方法还包括:判断是否接收到自定义APDU判定命令;若接收到所述自定义APDU判定命令,则判定所述片内操作系统已开启所述CCID通道;若未接收到所述自定义APDU判定命令,则判定所述片内操作系统未开启所述CCID通道。3.如权利要求1所述的方法,其特征在于,所述当检测到CCID命令时,获取所述CCID命令的类型具体为:当检测到CCID命令时,接收所述CCID命令的一个数据包;根据接收的所述数据包确定所述CCID命令的类型。4.如权利要求3所述的方法,其特征在于,所述处理所述CCID命令包括:接收所述CCID命令的剩余的数据包;处理所述CCID命令;返回响应信息。5.如权利要求3所述的方法,其特征在于,所述不处理所述CCID命令包括:丢弃接收的所述数据包;返回错误信息。6.一种命令处理装置,其特征在于,包括:CCID命令类型获取单元,用于当检测到CCID命令时,获取所述CCID命令的类型;第一处理单元,用于若所述CCID命令是标准CCID命令,则处理所述CCID命令,标准CCID命令指的是CCID协议定义的命令中非用于发送APDU的命令;第二处理单元,用于若所述CCID命令是自定义CCID命令,且...

【专利技术属性】
技术研发人员:陈柳章
申请(专利权)人:深圳市文鼎创数据科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1