具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种信息处理方法,能够比较方便地实现终端设备与智能卡之间的信息交互。
请参阅图1,是本发明实施例一信息处理方法流程图,包括步骤:
步骤11、用户设备接收终端设备发送给智能卡的信息内容;
所述用户设备接收终端设备发送给智能卡的信息内容具体为发送给智能卡的小型计算机系统接口SCSI命令,或者为发送给所述智能卡并要求写入智能卡的数据包。
步骤12、将所述信息内容存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;
步骤13、将封装的所述APDU命令包传输给智能卡,由所述智能卡接收APDU命令包后获取所述信息内容并根据所述信息内容执行操作。
另外,所述将所述封装的APDU命令包传输给智能卡,由所述智能卡接收APDU命令包后获取所述信息内容并根据所述信息内容执行操作之后还包括:
用户设备接收智能卡返回的APDU命令响应包,所述APDU命令响应包的数据单元中携带发送给所述终端设备的信息内容;用户设备从所述APDU命令响应包取出所述发送给所述终端设备的信息内容后,向所述终端设备发送。所述发送给所述终端设备的信息内容可以为智能卡发送给终端设备的SCSI响应命令,或者为智能卡读取数据后发送给终端设备的数据包。
从实施例一可以看出,本发明实施例通过用户设备将终端设备发送的信息内容存放到APDU命令包的数据单元,就可以利用APDU命令包将信息内容传输给智能卡,由智能卡接收后获取所述信息内容执行操作,从而方便的实现了终端设备与智能卡之间的信息交互。
请参阅图2,是本发明实施例二信息处理方法流程图,包括步骤:
步骤21、用户设备接收终端设备发送给智能卡的小型计算机系统接口SCSI命令;
步骤22、将所述SCSI命令进行解析,将解析结果存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;
步骤23、将封装的所述APDU命令包传输给智能卡;
步骤24、在接收所述智能卡返回的携带响应结果的APDU命令响应包后,将所述响应结果通过SCSI响应命令发送给所述终端设备。
所述将所述响应结果通过SCSI响应命令发送给所述终端设备之后还包括:
用户设备接收所述终端设备根据所述响应结果发送的数据包,将所述数据包存放到APDU命令包的数据单元并封装成APDU命令包后传输给智能卡进行写入操作。
或者,用户设备接收所述智能卡根据所述解析结果读取数据后向用户设备发送的携带读取结果数据包的APDU命令响应包;获取所述APDU命令响应包中的读取结果数据包后发送给所述终端设备。
从实施例二可以看出,本发明实施例通过用户设备将终端设备发送的SCSI命令进行解析,将解析结果存放到APDU命令包的数据单元,就可以利用APDU命令包将解析结果传输给智能卡,由智能卡接收并获取所述解析结果后返回响应结果,从而也方便的实现了终端设备与智能卡之间的信息交互。
以下更详细的介绍本发明实施例的技术方案。请参阅图3,是本发明实施例三信息处理方法流程图。实施例三相比于实施例一,更详细的描述了本法实施例的信息处理方法。如图3所示,包括步骤:
步骤201、用户设备接收终端设备发送的SCSI命令,根据SCSI命令生成APDU命令包,并传输给智能卡;
SCSI命令的格式结构包括命令(SCSI命令字和命令参数,用来标志SCSI命令的类型和其他各类属性)、数据两个部分。步骤201中用户设备接收的SCSI命令只包括命令部分,不包括数据部分。例如是一个表示写入设定长度数据的写命令或读取设定长度数据的读命令。
因为APDU包(包括APDU命令包和APDU命令响应包)的数据单元中的数据字段最多只能存放255个字节,,所以用户设备获取从终端设备例如PC发出的SCSI命令后,需要对SCSI命令长度进行判断。
用户设备如果判断出SCSI命令长度大于255字节,则将SCSI命令分解,并封装成若干个含有的SCSI命令长度不大于255字节的APDU命令包,分解的SCSI命令是存放到各APDU命令包中的数据单元即data区域;如果判断出SCSI命令长度小于或等于255字节,则不需要分解SCSI命令,直接把SCSI命令存放到APDU命令包的数据单元,封装成一个APDU命令包。
在封装过程中,因为SCSI命令不携带数据部分,因此只需要把SCSI命令的命令部分封装到APDU命令包中。封装时,还需要设置标识参数例如P1和P2参数,这两个参数设置的值可用来表示一个SCSI命令是否完整,例如设置P1=0,P2=0表示是一个完整的SCSI命令,否则表示只是分解的SCSI命令的一部分,例如P1=0,P2=1表示部分的SCSI命令。当然,也可以采用其他取值的方式来进行区分,例如采用P1=1,P2=0表示部分的SCSI命令等。
步骤202、智能卡根据接收的APDU命令包获取SCSI命令;
智能卡接收用户设备传输的APDU命令包,从中获取SCSI命令。智能卡中含有处理模块,处理模块可以是SCSI APP(Application,应用程序)单元。
智能卡的处理模块可以根据APDU命令包中的P1和P2参数的取值,判断一条完整的SCSI命令是否接收完毕。假设APDU命令包为二进指读取命令(READ BINARY命令)。因为SCSI命令是存放在APDU命令包中的data区域中,所以智能卡的处理模块接收到data区域为非空的READ BINARY命令后,就认为该命令承载了SCSI命令,并根据P1和P2参数的取值判断SCSI命令是否传输完毕。
例如设置的规则为P1=0,P2=0表示是一个完整的SCSI命令,P1=0,P2=1表示部分的SCSI命令,那么智能卡的处理模块接收用户设备传输的APDU命令包后,判断其中的P1和P2参数的取值,如果判断出P1=0,P2=1时,表示APDU命令包携带的是部分SCSI命令,SCSI命令还没有传输完毕,则继续接收后续的APDU命令包,直到判断出接收到的APDU命令包中P1=0,P2=0,表示SCSI命令传输完毕。此时,智能卡的处理模块将从各APDU命令包中获取的SCSI命令按先后顺序组合成一条完整的SCSI命令。
如果智能卡的处理模块直接接收到的就是P1=0,P2=0的APDU命令包,表示该APDU命令包中的SCSI命令本身就是一个完整的SCSI命令,则直接获取该完整的SCSI命令而不需要再进行组合过程。
步骤203、智能卡解析获取的SCSI命令后,向用户设备返回APDU命令响应包;
智能卡的处理模块获取完整的SCSI命令,解析SCSI命令,根据智能卡的自身情况向用户设备返回APDU命令响应包,例如解析出SCSI命令是表示要写1000字节长度的数据时,处理模块判断智能卡的存储单元可以写入该字节长度的数据时,则回复SCSI响应命令表示可以接受,否则回复SCSI响应命令表示不可以接受。
智能卡的处理模块对SCSI响应命令长度进行判断,如果判断出SCSI响应命令长度大于255字节,则将SCSI响应命令分解,并封装成若干个含有的SCSI响应命令不大于255字节的APDU命令响应包,分解的SCSI响应命令是存放到各APDU命令响应包中的数据单元即data区域;如果判断出SCSI响应命令长度小于或等于255字节,则不需要分解SCSI响应命令,直接把SCSI响应命令存放到APDU命令响应包的数据单元,封装成一个APDU命令响应包。在封装过程中,需要设置标识参数例如SW1和SW2参数,这两个参数设置的值可用来表示一个SCSI响应命令是否完整,例如设置SW1=0 x 90,SW2=0 x 00表示是一个完整的SCSI响应命令,否则表示只是分解的SCSI响应命令的一部分,例如SW1=0 x 61,SW2=0 x F1表示部分的SCSI响应命令。当然,也可以采用其他取值的方式来进行区分等。
智能卡的处理模块根据SCSI响应命令生成APDU命令响应包后,传输给用户设备;
步骤204、用户设备根据接收的APDU命令响应包获取SCSI命令并传输给终端设备;
用户设备接收智能卡传输的APDU命令响应包,从中获取SCSI命令。
用户设备可以根据APDU命令响应包中的SW1和SW2参数的取值,判断一条完整的SCSI响应命令是否接收完毕。假设前面步骤中所提到的APDU命令包为二进制读取命令(READ BINARY命令)。因为APDU命令包和APDU命令响应包是成对出现的,所以在READ BINARY命令承载了SCSI命令后,用户设备把接收到的响应包当成承载SCSI响应命令的APDU命令响应包处理,并根据SW1和SW2参数的取值判断SCSI响应命令是否传输完毕。
例如设置的规则为SW1=0 x 90,SW2=0 x 00表示是一个完整的SCSI响应命令,SW1=0 x 61,SW2=0 x F1表示部分的SCSI响应命令,那么用户设备接收智能卡传输的APDU命令响应包后,判断其中的SW1和SW2参数的取值,如果判断出SW1=0 x 61,SW2=0 x F1时,表示APDU命令响应包携带的是部分SCSI响应命令,SCSI响应命令还没有传输完毕,则继续接收后续的APDU命令响应包,直到判断出接收到的APDU命令响应包中SW1=0 x 90,SW2=0 x 00,表示SCSI响应命令传输完毕。此时,用户设备将从各APDU命令响应包中获取的SCSI响应命令按先后顺序组合成一条完整的SCSI响应命令。
如果处理模块直接接收到的就是SW1=0 x 90,SW2=0 x 00的APDU命令响应包,表示该APDU命令响应包中的SCSI响应命令本身就是一个完整的SCSI响应命令,则直接获取该完整的SCSI响应命令而不需要再进行组合过程。
用户设备从APDU命令响应包获取完整的SCSI响应命令后,将该完整的SCSI响应命令按现有的标准协议传输给终端设备。
步骤205、用户设备接收终端设备发送的数据包,根据数据包生成APDU命令包,并传输给智能卡;
假设上述步骤中智能卡返回的响应命令是表示可以按照终端设备的命令进行操作,则终端设备向用户设备发送数据。因为APDU包(包括APDU命令包和APDU命令响应包)的数据单元中的数据字段最多只能存放255个字节,所以用户设备需要对数据包的字节长度进行判断。
用户设备如果判断出数据包长度大于255字节,则将数据包的数据分解,并封装成若干个含有的数据长度不大于255字节的APDU命令包,分解的数据是存放到各APDU命令包中的数据单元即data区域;如果判断出数据包长度小于或等于255字节,则不需要分解数据包,直接把数据包存放到APDU命令包的数据单元,封装成一个APDU命令包。封装时,还需要设置P1和P2参数,这两个参数设置的值可用来表示一个数据包是否完整,例如设置P1=0,P2=0表示是一个完整的数据包,否则表示只是分解的数据包的一部分数据,例如P1=0,P2=1表示部分的数据。当然,也可以采用其他取值的方式来进行区分,例如采用P1=1,P2=0表示部分的数据等。
步骤206、智能卡根据接收的APDU命令包获取数据包;
智能卡接收用户设备传输的APDU命令包,从中获取数据包。
智能卡的处理模块可以根据APDU命令包中的P1和P2参数的取值,判断一个数据包是否接收完毕。例如设置的规则为P1=0,P2=0表示是一个完整的数据包,P1=0,P2=1表示数据包的部分数据,那么智能卡的处理模块接收用户设备传输的APDU命令包后,判断其中的P1和P2参数的取值,如果判断出P1=0,P2=1时,表示APDU命令包携带的是部分数据,数据包还没有传输完毕,则继续接收后续的APDU命令包,直到判断出接收到的APDU命令包中P1=0,P2=0,表示数据传输完毕。此时,SCSI APP单元将从各APDU命令包中获取的数据按先后顺序组合成一个完整的数据包。
如果处理模块直接接收到的就是P1=0,P2=0的APDU命令包,表示该APDU命令包中的数据包本身就是一个完整的数据包,则直接获取该完整的数据包而不需要再进行组合过程。
步骤207、智能卡根据SCSI命令对获取的数据包执行操作;
智能卡中的处理模块按照之前接收的SCSI命令的指示,根据现有的标准协议执行SCSI命令,对获取的数据包执行操作,例如之前接收的SCSI命令表示是写入数据,则将获取的完整的数据包中的数据一次写入智能卡的存储单元。
智能卡中的存储单元可以是闪存(FLASH)单元。本发明实施例中的智能卡的存储单元,包括现有的标准存储区域和本发明实施例中新增的扩展存储区域。现有的标准存储区域,一般只用来存储容量较小的协议所规定的文件系统,而新增的扩展存储区域,则可以存储大容量的数据。扩展存储区域的容量根据需要进行设定。智能卡在接收APDU命令包后获取其中的信息内容,就可以根据所述信息内容及所述扩展的存储区域的信息执行操作,例如进行写入或读取数据的操作等。通过在智能卡中新增扩展存储区域,可以使得智能卡类似U盘这样的存储设备一样,可以进行大容量数据存储,从而更加方便用户使用。
步骤208、智能卡根据对数据包执行操作的结果,生成APDU命令响应包并传输给用户设备;
智能卡的处理模块执行SCSI命令,对获取的数据包执行操作后,得到执行结果,该执行结果依然是SCSI命令的格式,以下为描述的方便,称为SCSI响应命令。
智能卡的处理模块对执行结果即SCSI响应命令长度进行判断,如果判断出SCSI响应命令长度大于255字节,则将SCSI响应命令分解,并封装成若干个含有的SCSI响应命令不大于255字节的APDU命令响应包,分解的SCSI响应命令是存放到各APDU命令响应包中的数据单元即data区域;如果判断出SCSI响应命令长度小于或等于255字节,则不需要分解SCSI响应命令,直接把SCSI响应命令存放到APDU命令响应包的数据单元,封装成一个APDU命令响应包。在封装过程中,需要设置SW1和SW2参数,这两个参数设置的值可用来表示一个SCSI响应命令是否完整,例如设置SW1=0 x 90,SW2=0 x 00表示是一个完整的SCSI响应命令,否则表示只是分解的SCSI响应命令的一部分,例如SW1=0 x 61,SW2=0 x F1表示部分的SCSI响应命令。当然,也可以采用其他取值的方式来进行区分等。
处理模块生成APDU命令响应包后,传输给用户设备;
步骤209、用户设备根据接收的APDU命令响应包获取SCSI响应命令并传输给终端设备。
用户设备接收智能卡传输的APDU命令响应包,从中获取SCSI响应命令。
用户设备可以根据APDU命令响应包中的SW1和SW2参数的取值,判断一条完整的SCSI响应命令是否接收完毕。
例如设置的规则为SW1=0 x 90,SW2=0 x 00表示是一个完整的SCSI响应命令,SW1=0 x 61,SW2=0 x F1表示部分的SCSI响应命令,那么用户设备接收智能卡传输的APDU命令响应包后,判断其中的SW1和SW2参数的取值,如果判断出SW1=0 x 61,SW2=0 x F1时,表示APDU命令响应包携带的是部分SCSI响应命令,SCSI响应命令还没有传输完毕,则继续接收后续的APDU命令响应包,直到判断出接收到的APDU命令响应包中SW1=0 x 90,SW2=0 x 00,表示SCSI响应命令传输完毕。此时,用户设备将从各APDU命令响应包中获取的SCSI响应命令按先后顺序组合成一条完整的SCSI响应命令。
如果处理模块直接接收到的就是SW1=0 x 90,SW2=0 x 00的APDU命令响应包,表示该APDU命令响应包中的SCSI响应命令本身就是一个完整的SCSI响应命令,则直接获取该完整的SCSI响应命令而不需要再进行组合过程。
用户设备从APDU命令响应包获取完整的SCSI响应命令后,将该完整的SCSI响应命令按现有的标准协议传输给终端设备。
需要说明的是,上述在智能卡向用户设备返回对SCSI命令的响应后,是以终端设备要求向智能卡发送数据要求进行写入操作举例说明,如果智能卡接收的是关于读取数据的命令,则智能卡是按要求读取存储单元的数据,通过APDU命令响应包携带读取的数据传送给用户设备,再由用户设备传送给终端设备。通过APDU命令响应包携带读取的数据时,如果读取的数据大于255字节,智能卡需要进行数据分解的操作,用户设备也相应需要进行数据合并的操作,具体过程参见上述内容的描述。
从该实施例可以看出,通过对SCSI命令和数据的分解及合并操作,就可以利用APDU命令包传输SCSI命令和数据,由智能卡根据SCSI命令对数据执行操作,从而方便的实现终端设备与智能卡之间的数据交互。另外,通过在智能卡中新增扩展存储区域,可以使得智能卡类似U盘这样的存储设备一样,可以进行大容量数据存储,并且利用智能卡存储数据更安全,从而更加方便用户使用。还有,通过上述方法,可以增强用户使用智能卡的依赖性,从而有利于运营商更好的推出更多业务和绑定自己的客户。
请参阅图4,是本发明实施例四信息处理方法流程图。实施例四相比于实施例二,更详细的描述了本法实施例的信息处理方法。而实施例四与例三的不同主要在于用户设备接收SCSI命令后先进行解析,将解析结果通过APDU命令包发送给智能卡,而在用户设备接收数据包后如果判断处大于255字节则分解数据包后通过多次调用APDU命令包将数据传输给智能卡,由智能卡接收后执行操作。
如图4所示,包括步骤:
步骤301、用户设备接收终端设备发送的SCSI命令;
用户设备接收的终端设备发送的SCSI命令只包括命令部分,不包括数据。例如是一个表示写入设定长度数据的写命令或读取设定长度数据的读命令。
假设接收的SCSI命令的命令部分是2A 0 0 0 0 6F 32 0 03 E8 0,其中2A表示写数据,6F32是向智能卡写数据的起始地址,03E8表示数据的字节长度为1000。
步骤302、用户设备解析SCSI命令,根据解析结果向智能卡发送APDU命令包;
用户设备解析SCSI命令的命令部分,假设接收的SCSI命令的命令部分是2A 0 0 0 0 6F 32 0 03 E8 0,则用户设备解析出该命令表示要向智能卡写数据,向智能卡写数据的起始地址是6F32,写数据的字节长度为1000。用户设备将上述信息携带在APDU命令包的数据单元发送给智能卡。
步骤303、智能卡向用户设备返回APDU命令响应包;
智能卡获取APDU命令包中的信息,根据自身情况向用户设备返回APDU命令响应包,例如判断出存储单元可以从6F32开始写入1000字节时,则回复表示可以接受该操作的APDU命令响应包,否则回复表示不可以接受该操作的APDU命令响应包。
步骤304、用户设备向终端设备发送SCSI响应命令;
用户设备接收智能卡返回的响应结果后,根据响应情况向终端设备发送SCSI响应命令。例如智能卡返回的响应结果是可以接受SCSI命令中的操作,则用户设备向终端设备发送表示确认的SCSI响应命令,否则发送表示失败的SCSI响应命令。
步骤305、用户设备接收终端设备发送的数据包,调用APDU命令包将数据包传输给智能卡,由智能卡对数据进行操作;
因为APDU命令包的数据单元中的数据字段最多只能存放255个字节,因此对于大于255个字节的数据包,用户设备需要多次调用APDU命令包将数据写入到智能卡中。例如对于需要将1000个字节的数据从智能卡的存储地址6F32开始写入的操作,用户设备将数据的1000个字节进行分解,先调用一次APDU命令,把数据的255个字节存放到APDU命令包的数据单元,封装成一个APDU命令包,按照之前确定的存储地址6F32向智能卡传输,由智能卡接收后根据之前接收的命令,从该存储地址开始写入255个字节。之后用户设备再调用一次命令把数据的另外255个字节存放到APDU命令包的数据单元,封装成一个APDU命令包,根据已写入255个字节计算得到的下一存储地址向智能卡发送,由智能卡接收后再写入到存储单元的相应存储地址。依此类推,用户设备将全部1000字节通过调用4次APDU命令包向智能卡发送,由智能卡接收后写入存储单元。
智能卡的存储单元可以是FLASH单元。本发明实施例中的智能卡的存储单元,包括现有的标准存储区域和本发明实施例中新增的扩展存储区域。现有的标准存储区域,一般只用来存储容量较小的协议所规定的文件系统,而新增的扩展存储区域,则可以存储大量的读写数据。扩展存储区域的容量根据需要进行设定。智能卡在接收APDU命令包后获取其中的信息内容,就可以根据所述信息内容及所述扩展的存储区域的信息执行操作,例如进行写入或读取数据的操作等。通过在智能卡中新增扩展存储区域,可以使得智能卡类似U盘这样的存储设备一样,可以进行大容量数据存储,从而更加方便用户使用。
步骤306、用户设备将数据包传输完毕后,发送SCSI响应命令给终端设备。
用户设备将数据包向智能卡传输完毕后,按现有的标准协议将SCSI响应命令传输给终端设备,表示传输已经完成。
需要说明的是,上述在智能卡向用户设备返回对APDU命令的响应后,是以终端设备要求向智能卡发送数据要求进行写入操作举例说明,如果智能卡接收的是关于读取数据的命令,则智能卡是按要求读取存储单元的数据,通过APDU命令响应包携带读取的数据传送给用户设备,再由用户设备传送给终端设备。通过APDU命令响应包携带读取的数据时,如果读取的数据大于255字节,智能卡需要进行数据分解,将数据通过多个APDU命令响应包传输给用户设备,用户设备可以进行数据合并后传输给终端设备。
从该实施例可以看出,本实施例通过用户设备对数据的分解,就可以利用APDU命令包传输数据,由智能卡接收数据后对数据执行操作,从而也方便的实现终端设备与智能卡之间的数据交互。另外,通过在智能卡中新增扩展存储区域,可以使得智能卡类似U盘这样的存储设备一样,可以进行大容量数据存储,并且利用智能卡存储数据更安全,从而更加方便用户使用。还有,通过上述方法,可以增强用户使用智能卡的依赖性,从而有利于运营商更好的推出更多业务和绑定自己的客户。
上述内容详细介绍了本发明实施的信息处理方法,相应的,本发明实施例提供用户设备、智能卡和信息处理系统。
请参阅图5,是本发明实施例用户设备结构一示意图。
如图5所示,用户设备包括:
第一接收单元51,接收终端设备发送给智能卡的信息内容;
第一处理单元52,用于将所述信息内容存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;
第一发送单元53,用于将所述封装的APDU命令包传输给智能卡,由所述智能卡接收APDU命令包后获取所述信息内容并根据所述信息内容执行操作。
用户设备还包括:
第二接收单元54,用于接收智能卡返回的APDU命令响应包,所述APDU命令响应包的数据单元中携带发送给所述终端设备的信息内容;
第二发送单元55,用于从所述APDU命令响应包取出所述发送给所述终端设备的信息内容后,向所述终端设备发送。
所述第一处理单元52包括:
判断单元521,用于判断所述信息内容是否超过设定长度;
分解及封装单元522,用于在所述判断单元521判断出所述信息内容超过设定长度时,将所述信息内容分解,将分解后的内容信息分别存放到不同应用协议数据单元APDU命令包的数据单元并封装成APDU命令包,所述APDU命令包包含标识参数,所述标识参数用于标识所述信息内容是否完整,使得所述智能卡接收APDU命令包后根据所述标识参数判断所述信息内容是否接收完成,在判断出接收完成后,将获取的所述分解后的信息内容组合成完整的信息内容。
请参阅图6,是本发明实施例智能卡结构示意图。
如图6所示,智能卡包括:
第一接收单元61,用于接收用户设备发送的APDU命令包,所述APDU命令包是所述用户设备接收终端设备发送给智能卡的信息内容后,将所述信息内容存放到应用协议数据单元APDU命令包的数据单元并封装而成;
第一处理单元62,用于接收所述APDU命令包后获取所述信息内容,根据所述信息内容执行操作。
所述第一处理单元62包括:
获取单元620,用于获取所述APDU命令包中的信息内容;
判断单元621,用于在所述获取单元620获取所述APDU命令包中的信息内容后,判断发送给终端设备的信息内容是否超过设定长度;
分解及封装单元622,用于在所述判断单元621判断出所述发送给终端设备的信息内容超过设定长度时,根据所述设定长度将所述信息内容分解,得到分解信息内容,将所述分解信息内容存放到多个APDU命令响应包的数据单元并封装成多个APDU命令响应包,所述多个APDU命令响应包包含标识参数,所述标识参数用于标识所述信息内容是否完整,使得所述用户设备接收所述APDU命令响应包后根据所述标识参数判断所述信息内容是否接收完成,在判断出接收完成后,将获取的所述分解信息内容组合成完整的所述信息内容。
智能卡还包括:存储单元63,所述存储单元63含有标准存储区域和扩展的存储区域,用于存储信息;所述第一处理单元62获取所述信息内容后,根据所述信息内容及所述存储单元63的扩展的存储区域的信息执行操作。
请参阅图7,是本发明实施例用户设备结构二示意图。
如图7所示,用户设备包括:
第一接收单元71,用于接收终端设备发送给智能卡的小型计算机系统接口SCSI命令;
第一处理单元72,用于将所述SCSI命令进行解析,将解析结果存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;
第一发送单元73,用于将封装的所述APDU命令包传输给智能卡;
第二处理单元74,用于在接收所述智能卡返回的携带响应结果的APDU命令响应包后,将所述响应结果通过SCSI响应命令发送给所述终端设备。
用户设备还包括:
第二接收单元75,用于接收所述终端设备根据所述响应结果发送的数据包;
第三处理单元76,用于将所述数据包存放到APDU命令包的数据单元并封装成APDU命令包后传输给智能卡进行写入操作。
所述第三处理单元76具体用于在判断出所述数据包的数据超过设定长度时,根据所述设定长度将所述数据包进行分解,得到多个分解数据包,将所述多个分解数据包分别存放到多个APDU命令包的数据单元,使所述智能卡根据所述多个APDU命令包进行写入操作
或者,用户设备还包括:
第二接收单元75,用于接收所述智能卡根据所述解析结果读取数据后向用户设备发送的携带读取结果数据包的APDU命令响应包;
第三处理单元76,用于获取所述APDU命令响应包中的所述读取结果数据包后发送给所述终端设备。
请参阅图8,是本发明实施例信息处理系统结构一示意图。
如图8所示,信息处理系统包括:
用户设备82,用于接收终端设备发送给智能卡83的信息内容;将所述信息内容存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;发送封装的所述APDU命令包;
智能卡83,用于接收所述APDU命令包后获取所述信息内容并根据所述信息内容执行操作。
所述用户设备82还用于在所述智能卡83获取所述信息内容并根据所述信息内容执行操作后,接收智能卡83返回的APDU命令响应包,所述APDU命令响应包的数据单元中携带发送给所述终端设备的信息内容;
从所述APDU命令响应包取出所述发送给所述终端设备的信息内容,向所述终端设备发送所述发送给终端设备的信息内容。
请参阅图9,是本发明实施例信息处理系统结构二示意图。
如图9所示,信息处理系统包括:
用户设备92,用于接收终端设备发送给智能卡93的小型计算机系统接口SCSI命令;将所述SCSI命令进行解析,将解析结果存放到应用协议数据单元APDU命令包的数据单元并封装成APDU命令包;发送封装的所述APDU命令;
智能卡93,用于接收所述用户设备92发送的所述APDU命令包后,向所述用户设备92返回携带响应结果的APDU命令响应包;
所述用户设备92还用于接收所述智能卡93发送的所述APDU命令响应包,将所述响应结果通过SCSI响应命令发送给所述终端设备。
所述用户设备92还用于在将所述响应结果通过SCSI响应命令发送给所述终端设备后,接收所述终端设备根据所述响应结果发送的数据包,将所述数据包存放到APDU命令包的数据单元并封装成APDU命令包后传输给智能卡93进行写入操作;或者,
在将所述响应结果通过SCSI响应命令发送给所述终端设备后,接收所述智能卡93根据所述解析结果读取数据后向用户设备92发送的携带读取结果数据包的APDU命令响应包,获取所述APDU命令响应包中的读取结果数据包后发送给所述终端设备。
综上所述,本发明实施例通过用户设备将终端设备发送的信息内容存放到APDU命令包的数据单元,就可以利用APDU命令包将信息内容传输给智能卡,由智能卡接收后获取所述信息内容并根据所述信息内容执行操作,从而方便的实现了终端设备与智能卡之间的信息交互。
本发明实施例通过用户设备将终端设备发送的SCSI命令进行解析,将解析结果存放到APDU命令包的数据单元,就可以利用APDU命令包将解析结果传输给智能卡,由智能卡接收并获取所述解析结果后返回响应结果,从而也方便的实现了终端设备与智能卡之间的信息交互。
另外,通过在智能卡中新增扩展存储区域,可以使得智能卡进一步可以进行大容量数据存储,并且利用智能卡存储数据更安全,从而更加方便用户使用。
以上对本发明实施例所提供的信息处理方法、信息处理系统及相关设备,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。