发明内容
针对上述现有技术的不足,本发明目的在于提出一种具备大容量存储能力的集成电路卡***,使其能够实现大容量存储及***内部的多种数据交换方式,还能够实现安全认证、加密解密等应用功能。
为实现上述目的,本发明提出一种集成电路卡***,包括:
集成电路卡;读写器,用于对集成电路卡进行操作及与数据处理主机进行数据交换处理;数据处理主机,用于控制对读写器的操作,及通过读写器控制对集成电路卡的操作;其中所述读写器和所述集成电路卡至少其一具有大容量存储单元。
根据本发明的一种实施方案,上述***中的集成电路卡包括:存储单元,与所述大容量存储单元合而为一或分开设置,接口单元,用于与外部设备的接口进行通信,控制单元,用于控制所述接口单元与存储单元以及所述大容量存储单元的操作和进行数据处理;所述读写器包括:连接集成电路卡接口单元,用于与所述集成电路卡建立连接和进行数据交换,连接数据处理主机接口单元,用于与所述数据处理主机建立连接和数据交换,控制单元,用于控制所述读写器中各单元的操作;所述数据处理主机包括数据处理主机接口单元,用于与所述读写器建立连接和进行数据交换。
所述***中的集成电路卡进一步包括加密认证单元,用于对用户信息进行认证和对数据进行加密和解密;所述加密认证单元可以单独进行加密认证操作,或与读写器的加密认证单元共同完成加密认证操作。
另一方面,本发明提出另一种集成电路卡***,包括:集成电路卡,用于存储用户信息;读写器,用于对所述集成电路卡进行读写操作,所述读写器中具有用户输入单元,用于供用户输入操作指令和数据;以及输出单元,用于向用户输出操作指令执行结果或***状态信息,其中所述读写器和集成电路卡至少其一具有大容量存储单元。所述用户输入单元可采用按钮、键盘、手写笔或语音输入器件;所述输出单元可采用指示灯、显示屏或语音输出器件。
在上述各种***中,所述集成电路卡***中的读写器包括多个集成电路卡接口,分别或同时对多个集成电路卡连接并进行数据交换。可通过如下方式实现读写器分别或同时对多个集成电路卡连接和数据交换:在读写器中对应每个集成电路卡的序列号开辟一个虚拟存储空间,用于存储该序列号的集成电路卡中的数据;或者在读写器的大容量存储单元中,对应与集成电路卡的每次连接开辟一个虚拟存储空间,存储有关集成电路卡每次从连接直至断开之间的数据。
在上述各种***中,所述集成电路卡可包括存储单元,该存储单元选用易失或非易失存储介质,可以与所述大容量存储单元合二为一或分别设置。
当集成电路卡仅包括大容量存储单元时,可使用该大容量存储单元对***数据和用户文件进行存储;当集成电路卡包括采用非易失存储介质的大容量存储单元和采用易失存储介质的存储单元时,所述非易失大容量存储单元可用于数据的长期保存,而易失性存储单元可用于在操作过程中暂存数据;当所述集成电路卡中既包括了非易失性大容量存储单元,又包括采用非易失存储介质的存储单元时,所述非易失性大容量存储单元可用于用户数据文件的保存和交换;而非易失性存储单元可用于保存加密认证信息、密钥数据、***信息和***程序等;上述两个存储单元也可采用同样的非易失存储介质,可以合并为一个存储单元,根据用户要求和***设置进行数据的存储处理。
本发明还提出一种集成电路卡***,包括读写器和数据处理主机,所述读写器包括:连接数据处理主机的接口单元,用于与所述数据处理主机建立连接和数据交换,控制单元,用于控制所述读写器中所述各单元的操作;所述数据处理主机包括数据处理主机接口单元,用于与所述读写器建立连接和进行数据交换,其中读写器还包括大容量存储单元。
在上述集成电路卡***中,所述读写器可进一步包括加密认证单元,用于对用户信息进行认证和对数据进行加密和解密。上述集成电路卡***中的加密认证单元可通过硬件实现,或者使用软件由控制单元调用实现;所述加密认证单元可以单独实现,也可以与所述控制单元合二为一。
上述各种集成电路卡***中,所述集成电路卡选自接触型、非接触型、串行传输型、并行传输型、加密存储型、非加密存储型、智能型、超级智能型、微波型或电磁感应型集成电路卡。所述数据处理主机接口单元301具有多个接口,用于与多个读写器连接和进行数据交换。
上述集成电路卡***中所述的大容量存储单元是指存储容量大于现有的集成电路卡或读写器中已有的存储单元、能够满足储存诸如图形文件、视频音频文件、文字图表文件等用户大容量数据的存储装置。这种大容量存储单元可以采用磁介质、光介质或其它半导体存储介质,其中所述半导体存储介质选自快闪存储介质、MRAM、DRAM、EEPROM、SRAM、SDRAM、FRAM、MRAM或者Millipede,所述磁介质包括硬盘、移动硬盘、MicroDrive。
由于本发明提出的集成电路卡***对现有的集成电路卡及其读写器进行了改进,设置了大容量存储单元,不仅使集成电路卡***的数据处理能力增强,数据存储量增大,还使集成电路卡***具有了许多现有的集成电路卡技术不具备的应用功能,详述如下:
第一方面,本发明提供的具有大容量存储单元的集成电路卡不仅能按照预定的机制存储固定模式的大量信息,还能根据***设置,记录操作日志和***信息,还能根据用户的要求,存储用户指定的数据。而具有大容量存储单元的读写器不仅具有对集成电路卡进行读写的功能,还能够将集成电路卡中的大量数据存储到读写器中,可用于收集多个集成电路卡中的数据,也可用于用户数据的存储与转移,实现了大容量数据的移动存储;
第二方面,对具有大容量存储单元的集成电路卡***,本发明改进了安全认证机制,使得安全认证的方式方法更灵活多样,更安全可靠。在集成电路卡中设置安全认证机制,使集成电路卡对读写器、对数据处理主机具有安全认证的功能。例如,用户必须将特定的集成电路卡***读写器中,经过安全认证机制的认证,方可对读写器或集成电路卡中的特定数据进行权限内的操作;同理,可要求用户必须将集成电路卡经读写器与数据处理主机相连接,经过安全认证机制的认证,方可对数据处理主机或集成电路卡进行权限内的操作;
通过在读写器中设置安全认证机制,使得读写器能够对集成电路卡和数据处理主机进行安全认证控制,将对集成电路卡和数据处理主机的操作限制为必须是合法用户在合法权限内进行;
集成电路卡和读写器中的安全认证机制协作,可以实现更高性能的安全认证功能。
第三方面,在具有大容量存储单元的集成电路卡***基础上,本发明实现了更灵活可靠的数据加密机制。所述数据加密机制与前述的安全认证机制合称为加密认证机制。
在集成电路卡中设置数据加密机制,可利用集成电路卡对读写器、数据处理主机和集成电路卡自身的数据进行加密解密操作;在读写器中设置数据加密机制,可利用读写器对集成电路卡、数据处理主机和读写器自身进行加密解密操作;集成电路卡和读写器中的加密解密机制结合起来实现对集成电路卡、读写器和数据处理主机中数据的加密解密操作。例如,可由集成电路卡产生密钥,读写器利用该密钥对数据处理主机中的数据进行加密解密操作。
第四方面,本发明提出的集成电路卡***,与现有的集成电路卡及读写器技术相比,在数据传输通道方面进行了改进。现有的集成电路卡及其读写器产品多是根据预定的***运行机制和业务,对数据进行固定方向、固定通道的传输,例如将集成电路卡中的标志信息(例如***或用户代码)经读写器传给数据处理主机,再由数据处理主机将业务数据(例如金额、用电度数、日期等)经读写器传给集成电路卡,完成数据传输业务。采用本发明的数据处理主机***,可以在用户的控制下,在多个集成电路卡、多个读写器、数据处理主机三种设备之间灵活地传输、转储数据,不受预定***运行机制和业务逻辑的限制。
综上所述,采用本发明提供的具备大容量存储能力的集成电路卡***,不仅实现了数据的大容量存储及***内部多个设备间的多种数据交换方式,还实现了对传输数据进行严格地加密和保护,有效保护重要数据不被监听、截取和篡改,保证数据的有效性和完整性,可实现用户网络数字签名、身份认证、网络访问权限控制、文件加密管理、数据加解密、软件产权保护功能的多种应用功能。
本发明的集成电路卡***的产品具有安全、小巧、灵活、易用及便携等特点,可广泛应用于金融、工矿、国防、户籍、农业、商业、校园、交通、医疗、企业管理、计算机及网络应用、个人数据处理、物业管理、日常生活等多种领域。
具体实施方式
下面结合各附图详细说明本发明的具体实施方案。
图1示出了本发明的第一实施方案的集成电路卡***的结构框图。如图所示,该实施方案中的集成电路卡***包括集成电路卡100、读写器200以及数据处理主机300。
集成电路卡100包括控制单元101、存储单元102、集成电路卡接口单元103和大容量存储单元104,上述各单元间的连接均支持数据的双向传送。
控制单元101可以由一片或多片集成电路芯片组成,其中预设有卡内芯片操作***COS(Chip Operating System)、加密认证机制及安全认证机制(图1中未标明),用于控制集成电路卡100中其他单元的工作,并进行数据处理。
存储单元102接受控制单元101的控制,存储数据信息。存储单元102可以采用易失的或非易失的存储介质来实现,这类存储介质包括但不限于随机存储介质、只读存储介质、可编程程序存储介质或电可擦除存储介质、快闪存储介质和/或铁磁存储介质。在本发明的实施方案中,存储单元102采用了小容量非易失存储介质,例如ROM、EPROM等。大容量存储单元104则采用大容量非易失存储介质,可以选用快闪存储介质、电可擦写存储介质、可编程程序存储介质、铁磁存储介质等。
集成电路卡100中的大容量存储单元104接受集成电路卡控制单元101的控制,并可与其交换数据。在物理上,存储单元102可以集成在上述控制单元101中,也可以单独地存在。另外,存储单元102与大容量存储单元104也可以集成在一起,或者分别设置。存储单元102与大容量存储单元104可以选择采用相同的技术或不同的技术实现。
在图1所示的实施方案中,大容量存储单元104与集成电路卡存储单元102在逻辑上相互分开,采用不同电路实现。它们分别与控制单元101连接,分别与控制单元101进行数据交互,实现不同的数据存储功能。例如,存储单元102专用于存储与加密认证机制有关的密钥、身份认证信息;而大容量存储单元104则用于存储用户指定的文件、数据、或***产生的报表、临时文件、***文件。
另外,也可以将大容量存储单元104与集成电路卡存储单元102集成在一起,在物理上采用一套集成电路实现,将上述数据分类存放在存储空间的不同分区中。
集成电路卡接口单元103用于与外部接口设备(读写器200的连接集成电路卡接口单元202)进行通信和数据交换。根据集成电路卡类型的不同,采用相应的IC卡接口标准。集成电路卡接口单元103的接口标准与对应的读写器200的连接集成电路卡接口单元202的相应接口标准是相适配的。集成电路卡100通过集成电路卡接口单元103与读写器200进行数据通讯,由此可在集成电路卡100的大容量存储器104中保存大量数据,并与读写器200和/或数据处理主机300交换存储数据,实现大容量数据在集成电路卡100中的便携存储。
集成电路卡100可以通过电池供电,或通过与读写器200相连的集成电路卡接口单元103,由读写器200供电。
读写器200包括加密认证单元201、连接集成电路卡的接口单元202、控制单元203、连接数据处理主机的接口单元204、大容量存储单元205、以及供电单元(图1中未标明)。控制单元203分别对读写器200内部的其它单元的操作进行控制和协调,并进行数据处理。读写器200内部的各单元之间的连接支持数据的双向传送。在控制单元203和大容量存储单元205内预设操作***、应用软件或文件***。
加密认证单元201接受控制单元203的控制,对用户信息进行认证并将认证的结果反馈至控制单元203,以及对数据信息进行加密/解密。加密认证单元201可采用已有的专用芯片实现。此外,加密认证单元201也可以使用软件,由读写器200的控制单元203调用实现。加密认证单元201与控制单元203在物理上可以是独立的也可以是合而为一的。二者共同构成中央处理单元(图中未标出)
连接集成电路卡的接口单元202用于与集成电路卡100的集成电路卡接口单元103连接,进行数据和命令的传送。接口单元202可以采用IC卡接口标准。接口标准与所要连接的集成电路卡100的接口单元103的接口标准相适配。
连接集成电路卡的接口单元202可包括一个或多个集成电路卡接口,以便与一个或多个集成电路卡100连接和交换数据。根据用户请求,可将读写器200存储的数据文件输出到各集成电路卡100;或者作为数据输入的接口,将来自各集成电路卡100的数据输入到读写器200中进行处理或存储,或者再输出到其他设备中去。
在集成电路卡100与读写器200连接时,连接集成电路卡接口单元202识别所连接的集成电路卡接口单元103的接口标准,初始化与集成电路卡接口单元103之间的连接;按照接口标准协议的规范方法建立与集成电路卡100之间的逻辑连接;解释、转换、控制和传输各集成电路卡100与读写器200之间的各种控制信息和数据信息,实现读写器200与集成电路卡100之间的连接和数据交换。
读写器200的连接数据处理主机接口单元204可包括一个或多个连接数据处理主机接口,用于与一个或多个数据处理主机300连接及交换数据。根据用户请求将所述读写器200存储的数据文件输出到各数据处理主机300,或者作为数据输入的接口,将来自各数据处理主机300的数据输入到读写器200中进行处理或存储,或者再输出到其他设备中去。
读写器200与各数据处理主机300之间的接口应采用与各数据处理主机300的接口相应的接口标准。该连接数据处理主机接口单元204按照接口标准协议的规范方法对数据处理主机发出的问询指令进行应答,解释、转换、控制和传输数据处理主机300与读写器200之间的各种控制信息和数据信息,实现读写器200与各数据处理主机300之间的连接和数据交换。在本实施方案中,连接数据处理主机的接口单元204采用USB总线实现。
读写器200的大容量存储单元205接受读写器控制单元203的控制,与读写器控制单元203交换数据。该大容量存储单元205可以保存大量数据并与集成电路卡100和/或数据处理主机300交换存储数据,实现大容量数据在读写器200中的便携存储。
该大容量存储单元205可采用磁介质、光介质或其它半导体存储介质,如半导体存储介质包括快闪存储介质、MRAM、DRAM、EEPROM、SRAM、SDRAM、FRAM、MRAM或者Millipede(超高密度存储芯片)等,磁介质包括硬盘、移动硬盘、MicroDrive等。在本实施方案中,大容量存储单元205采用快闪存储介质实现。
读写器200可由外接直流电源、电池供电,或通过与数据处理主机300相连的连接数据处理主机接口单元204供电。在本实施方案中,当读写器200仅与集成电路卡100连接时,读写器200的供电单元采用电池或外接直流电源,当读写器200与数据处理主机300连接时,由数据处理主机300中数据处理主机接口单元301的USB接口供电。
在本发明中,数据处理主机300用于与集成电路卡100及其读写器200等设备连接并进行数据交互,控制集成电路卡100及其读写器200的操作并进行相应的数据处理。数据处理主机300可以是个人电脑、数据终端、手持数据设备等。该数据处理主机300具有数据处理主机接口单元301,数据处理主机300通过该数据处理主机接口单元301与读写器200进行连接和数据交换。数据处理主机接口单元301可以具有一个或多个接口,以便与本***中的一个或多个读写器200连接及进行数据双向传送。
数据处理主机接口单元301可以采用通用标准接口,例如可以采用GSM、GPRS、CDMA、2.75G、3G接口、CF接口、SM接口、MMC接口、SD接口、MS接口、PCMCIA接口、MD接口、x-D接口、IDE/SCSI接口、RS232接口、RS485接口、USB OTG(USB On-The-Go)接口、UWB(Ultra Wide Band(超宽带))接口、GPIO接口、UART接口、以太网接口、并行接口、USB接口、IEEE1394接口、蓝牙接口、IrDA红外接口、HomeRF接口、IEEE802.11x接口和/或IEEE802.16x接口中的一种或多种。在本实施方案中,数据处理主机端的数据处理主机接口单元301采用USB标准接口。
数据处理主机接口单元301与读写器200连接并输出数据,根据用户请求可将所述数据处理主机300存储的数据文件输出到读写器200,或者作为数据输入的接口,将来自读写器200的数据输入到数据处理主机300中进行处理或存储,或者再输出到其他设备中去。
当读写器200与数据处理主机300连接时,数据处理主机接口单元301识别所连接的读写器200的连接数据处理主机接口单元204的并行、串行和/或无线接口标准,初始化与各读写器200相应接口之间的连接;按照接口标准协议的规范方法建立与各读写器200之间的逻辑连接,解释、转换、控制和传输数据处理主机300与读写器200之间的控制信息和数据信息,从而实现各读写器200与数据处理主机300之间的连接和数据交换。
本集成电路卡***中的读写器200可以分别与所述集成电路卡100或数据处理主机300连接并分别交换数据,也可同时与集成电路卡100和数据处理主机300连接,建立集成电路卡100与数据处理主机300之间的信息通道,实现三方的数据交流。
这样,由集成电路卡100、读写器200和数据处理主机300三方共同构成的集成电路卡***能够进行三方的数据交换、认证、加密、存储等处理,也可以进行读写器200与数据处理主机300之间、读写器200与集成电路卡100之间的数据交换、认证、加密、存储等处理。
下面结合图2详细说明图1所示本发明实施方案的集成电路卡***的操作流程。
当读写器200***数据处理主机300时,读写器200进行初始化工作。检测读写器200中是否已经***了集成电路卡100。如果已***了集成电路卡100,则对该集成电路卡100进行复位,再初始化集成电路卡100,设置对应该集成电路卡的存在标志,标明该集成电路卡100已与读写器200连接。此时集成电路卡100已被读写器200识别。如果没有集成电路卡100***,则由数据处理主机300来识别读写器200。数据处理主机300发出问询信息,根据读写器200的应答对读写器200进行配置。
如果在读写器200***数据处理主机300之后,才将集成电路卡100***读写器200,则***集成电路卡100的动作将使读写器200产生一个中断,读写器200根据该中断来复位***的集成电路卡100,再进行集成电路卡100初始化工作。在初始化工作完毕,集成电路卡100已与读写器200建立连接后,读写器200设置对应的集成电路卡存在标志,以标明该集成电路卡100已与读写器200连接。至此,设备识别配置完毕。
接下来,读写器200接收数据处理主机300发来的指令,根据指令的格式判断指令的类型及操作对象。如果指令是对读写器200进行操作的,则读写器200执行该操作指令,并向数据处理主机300返回操作结果。然后等待数据处理主机300下达下一个操作指令,或移除读写器200,整个操作流程结束。
如果指令是对集成电路卡100进行操作的,则读写器200先根据该指令对应的集成电路卡存在标志的值判断是否已连接了该集成电路卡100。如果该集成电路卡100并未与读写器200建立连接,则返回错误信息,等待数据处理主机300下达下一个操作指令;反之读写器200就解释该指令,并根据该指令对集成电路卡100进行相应操作,再向数据处理主机300返回操作结果。在一个指令执行完毕后,等待直至数据处理主机300下达下一个操作指令。
在上述过程中,对读写器200的具体操作和对集成电路卡100的具体操作是不同的,以下将分别进行说明。
图3示出了在上述过程中数据处理主机300对读写器200进行操作的具体处理流程。当判断得知指令是对读写器200进行操作时,读写器200中的控制单元203解释该操作指令。根据指令的具体内容,可分为身份认证、读数据、写数据、格式化和移除读写器等操作。
对于身份认证操作指令,数据处理主机300将要求用户输入认证信息并将该命令传送给读写器200;读写器200将该认证信息与其存储单元205中预存的认证信息进行比较,如果认证信息与预存信息相符,则确定该用户对读写器200的操作权限并向数据处理主机300返回认证成功信息;如果认证信息与预存信息不符,则向数据处理主机300返回认证失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达下一操作指令。
例如,根据加密认证机制的设定,用户必须通过读写器200的加密认证单元201进行身份认证才能对数据处理主机300进行数据操作。在用户需要对数据处理主机300进行数据操作之前,数据处理主机300弹出对话框要求用户输入用户名、密码等认证信息。该认证信息通过数据处理主机接口单元301按照USB接口规范打包传送给连接数据处理主机接口单元204,连接数据处理主机接口单元204接收到数据后传送给读写器200的控制单元203。控制单元203调用加密认证单元201,将该认证信息与预先设定或预先存储的认证信息进行核对。如果核对正确,则控制单元202或加密认证单元201根据加密认证机制确定该用户对数据处理主机300具体的操作权限(例如只读、读写、格式化权限等),并进行标记,返回认证通过信息。如果核对不正确,则返回认证失败信息。返回给数据处理主机300的认证失败信息将传送给连接数据处理主机接口单元204,再经USB接口传送给数据处理主机接口单元301,由数据处理主机300反馈信息给用户。等待接收用户下一个操作指令。
如果根据加密认证机制,用户对读写器200进行操作必须通过身份认证,则认证处理流程与上述流程类似。
对于读数据操作指令,例如用户需要将大容量存储单元205中的指定数据读取出来,读写器200先检验该用户的操作权限,确定该用户是否拥有对读写器大容量存储单元205的读操作权限。如果用户不具备读数据权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达操作指令。如果用户具有读数据权限,则从大容量存储单元205中读取指令指定的数据,根据加密认证机制的设定,判断该笔数据是否经过加密和需要解密。如果需要解密,则读写器200调用加密认证单元201对该笔数据进行解密后返回给数据处理主机300;如果该笔数据不需解密,则直接返回给数据处理主机300。
对于写数据操作指令,例如用户需要将指定数据写到读写器200的大容量存储单元205中,指令的处理类似于读数据操作指令:读写器200先检验该用户的操作权限,确定该用户拥有对读写器大容量存储单元205的写操作权限;如果用户不具备写数据权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达操作指令。如果用户具有写数据权限,则根据加密认证机制的设定判断该笔数据是否需要加密。如果需要加密,则读写器200调用加密认证单元201对该笔数据进行加密后写入大容量存储单元205,再向数据处理主机300返回写数据成功信息。如果该笔数据不需加密,则直接写入大容量存储单元205,并向数据处理主机300返回写数据成功信息。
对于格式化操作指令,读写器200先检验该用户的操作权限,确定该用户是否拥有对读写器大容量存储单元205的格式化操作权限。如果用户不具备该操作权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达操作指令。如果用户具有该操作权限,则对大容量存储单元205进行格式化操作,并向数据处理主机300返回格式化操作成功信息。
对于移除读写器操作指令,读写器200保存与用户相关的信息。用户拔出读写器200后,整个***的操作流程结束。
图4显示了数据处理主机300下达的指令是对集成电路卡100进行操作时的处理过程。
当读写器200确定数据处理主机300下达的指令是对集成电路卡100进行操作时,读写器200解释该操作指令。根据指令的具体内容,可分为身份认证、读数据、写数据、格式化、拔出集成电路卡五种操作。
对于身份认证操作指令,数据处理主机300将要求用户输入指定的认证信息并将该信息传送给读写器200。读写器200将该认证信息与预存的认证信息进行比较。如果认证信息与预存信息相符,则确定该用户对集成电路卡100的操作权限并向数据处理主机300返回认证成功信息;如果认证信息与预存信息不符,则向数据处理主机300返回认证失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达操作指令。
如果根据加密认证机制,用户对集成电路卡100或者读写器200进行操作必须通过身份认证,则身份认证处理将采用上述流程进行。
对于读数据操作指令,例如用户要求从集成电路卡存储单元102和/或大容量存储单元104中读取指定数据,则集成电路卡100要先检验该用户的操作权限,确定该用户拥有对集成电路卡存储单元102和/或大容量存储单元104的读操作权限。如果用户不具备读操作权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200继续等待数据处理主机300下达操作指令。如果用户具有读操作权限,则读写器指示集成电路卡100从集成电路卡存储单元102和/或大容量存储单元104中读取指定数据,根据加密认证机制的设定,判断该笔数据是否经过加密和需要解密。如果需要解密,则集成电路卡100和/或读写器200对该笔数据进行解密后返回给数据处理主机300;如果该笔数据不需解密,则经读写器200返回给数据处理主机300。
对于写数据操作指令,例如向存储单元102和/或大容量存储单元104写入指定数据,其处理类似于读数据操作指令:集成电路卡100先检验该用户的操作权限,确定该用户拥有对集成电路卡存储单元102和/或大容量存储单元104的写操作权限;如果用户不具备写操作权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200和集成电路卡100继续等待数据处理主机300下达操作指令。如果用户具有写操作权限,则根据加密认证机制的设定判断该笔数据是否需要加密。如果需要加密,则读写器200和/或集成电路卡100对该笔数据进行加密后写入集成电路卡存储单元102和/或大容量存储单元104,再向数据处理主机300返回写数据成功信息;如果该笔数据不需加密,则直接写入集成电路卡存储单元102和/或大容量存储单元104,向数据处理主机300返回写数据成功信息。
对于格式化操作指令,读写器200先检验该用户的操作权限,确定该用户对指定要进行格式化操作的集成电路卡大容量存储单元104或存储单元102是否具有格式化操作权限。如果用户不具备该操作权限,则向数据处理主机300返回操作失败信息。操作流程回到图2的①处,读写器200和集成电路卡100继续等待数据处理主机300下达操作指令。如果用户具有该操作权限,则对大容量存储单元205或存储单元102进行格式化操作,向数据处理主机300返回格式化操作成功信息。
对于用户退出操作命令,读写器200收到用户要求退出的指令后,等待所有有关该用户的程序运行结束,保存用户信息;再提示下一位用户进行身份验证,如果验证通过,则调用该用户的信息、确定其使用权限,接收并执行用户指令。
对于拔出集成电路卡操作指令,读写器200收到指令后按照时序释放集成电路卡100。用户拔出集成电路卡100后,将对应的集成电路卡存在标志清空,标明无此集成电路卡连接。操作流程回到图2的②处,读写器200将处于等待状态,直至有集成电路卡100重新***读写器200,再次产生中断,对新***的集成电路卡100进行上述的复位和初始化等操作。
利用本发明的集成电路卡***和操作方法,可以将集成电路卡100作为读写器200的电子钥匙,在对读写器200进行操作前,必须***集成电路卡100,通过身份认证后才能对读写器200进行权限内的数据操作。另一方面,也可以将读写器200作为集成电路卡100的专用读写器,在集成电路卡100***读写器200后,需经过身份认证才能对集成电路卡100进行权限内的数据操作。再有,集成电路卡100也可以作为读写器200或数据处理主机300的电子钥匙或加密解密工具。同理也可以将读写器200作为数据处理主机300的电子钥匙或加密解密、认证工具。由此可严格控制集成电路卡***内集成电路卡100、读写器200、数据处理主机300等设备的安全合法使用,并可以有效地保护各个设备内数据的安全。
在本发明的一个实施例中,可以仅由多个集成电路卡100及其读写器200构成集成电路卡***。此时,读写器200的供电单元可以采用电池或外接直流电源供电。读写器200依次或同时与多个集成电路卡连接,对其进行读取、写入操作。该***可根据加密认证机制及密钥***的要求进行加密认证工作,根据预设的卡内芯片操作***进行数据交换工作。在这种情况下,读写器200中设置用户输入单元供用户输入操作指令和数据。此外,还设置输出单元向用户报告操作指令执行结果或***状态信息。该输入单元可以是按钮、键盘、手写笔或语音输入器件等。输出器件可以是指示灯、显示屏或语音输出器件等。
此时集成电路卡100即可作为读写器200的安全认证或加密解密工具,例如作为读写器200的电子钥匙,由用户持有集成电路卡100,当用户要对读写器200进行操作时,读写器200通过用户***的集成电路卡100对用户进行身份认证、确定操作权限,才可对读写器200进行权限内的数据操作。类似地,读写器200也可作为集成电路卡100的加密解密工具或安全认证工具。进行身份认证操作和对数据进行加密解密处理。集成电路卡100与读写器200可以交换保存的数据。
此时集成电路卡***的操作流程是,当有一个或多个集成电路卡100与读写器200连接时,读写器200的集成电路卡接口单元202识别到有集成电路卡100接入,辨认所连接的各集成电路卡接口单元103的接口标准,初始化与各集成电路卡接口单元103相应接口之间的连接;按照接口标准协议的规范方法建立与各集成电路卡100之间的逻辑连接;解释、转换、控制和传输各集成电路卡100与读写器200之间的各种控制信息和数据信息。当集成电路卡100与读写器200连接成功后,读写器200开始通过输入装置接收用户操作指令,解释该操作指令。根据指令的具体内容,进行身份认证、读数据、写数据、格式化、拔出集成电路卡等操作。各个指令执行的具体操作流程与图4所示的操作流程相似。
对比图4所示的流程,此时集成电路卡***的操作流程改为读写器200通过用户输入单元(图1中未示出)来接收用户操作指令,而不是接收数据处理主机300传来的操作指令。指令执行产生的***信息或数据也不再返回给数据处理主机300,而是直接通过输出单元(图1中未示出)反馈给用户。
在本发明的又一实施例中,可以仅以读写器200与数据处理主机300连接而构成一集成电路卡***,读写器200可以是一个或多个。此时,读写器200的供电单元可以采用电池、外接直流电源,也可以采用USB接口供电。读写器200与数据处理主机300构成的集成电路卡***根据读写器200的操作***、固化软件和数据处理主机300的操作***进行数据交换处理,根据加密认证单元201和预设的加密认证机制进行加密认证工作。
此时读写器200可作为数据处理主机300的电子钥匙,用户必须通过身份认证、确定操作权限,才可对数据处理主机300进行权限内的数据操作。另外,读写器200也可以作为数据的加密解密工具,利用所述读写器200的加密认证单元对数据进行加密/解密处理。读写器200还可以作为移动存储器,利用其大容量存储单元205存储大量数据并与数据处理主机300进行数据交互。
在该实施例中,集成电路卡***的操作流程是,当有一个或多个读写器200与数据处理主机300连接时,数据处理主机300的数据处理主机接口单元301识别到有读写器200接入,辨认所连接的各连接数据处理主机接口单元204的接口标准,初始化与各连接数据处理主机接口单元204相应接口之间的连接;按照接口标准协议的规范方法建立与各读写器200之间的逻辑连接;解释、转换、控制和传输读写器200与数据处理主机300之间的控制信息和数据信息。当读写器200与数据处理主机300连接成功后,数据处理主机300开始通过自身的输入器件如键盘、手写笔、触摸屏、鼠标、语音输入器件等接收用户操作指令,并解释该操作指令。在用户指令中,对读写器200的操作指令根据具体内容可以分为身份认证、读数据、写数据、格式化、移除读写器、用户切换等操作。各个指令执行的具体操作流程与图3所示的操作流程类似,不再赘述。
在这些实施例中,需要在集成电路卡存储单元102和/或大容量存储单元104、读写器大容量存储单元205和/或数据处理主机300之间交换大量的存储数据。为了使一个读写器200能够处理多个集成电路卡100,要求读写器200能够合理保存多个集成电路卡的多笔信息。为此,在本发明的实施例中,在读写器的大容量存储单元205中对应每个集成电路卡的序列号开辟一个虚拟存储空间,用于存储该序列号的集成电路卡中的数据。这样,对于一个读写器200中同时接入多个集成电路卡情况,读写器200为每个序列号的集成电路卡建立一个虚拟存储空间,当对某个序列号的集成电路卡进行操作产生的需要存储的数据或信息,读写器200将其存储在大容量存储单元205中,对应该集成电路卡的虚拟存储空间中,如此可实现读写器200对多个集成电路卡同时进行连接及数据操作。
另外,也可以在读写器200的大容量存储单元205中,开辟一个虚拟存储空间,用于存储有关集成电路卡每次从连接直至断开之间的数据。这样,对于一个读写器200中同时接入多个集成电路卡,读写器200为每个接入的集成电路卡建立一个虚拟存储空间,当对某个集成电路卡进行操作产生需要存储的数据或信息时,读写器200将其存储在大容量存储单元205中与该集成电路卡本次接入所对应的虚拟存储空间中,如此可实现读写器200对多个集成电路卡同时进行连接及数据操作。为了使读写器200可以由多个用户使用,在本发明的上述实施例中,还建立了多用户机制,为每位用户预先设置或存储相应的身份认证信息,并分配一个虚拟存储空间。读写器200还应支持读写器200在工作状态中的用户切换,在用户要求退出时,等待所有有关该用户的程序运行结束,保存用户信息;再提示下一位用户进行身份验证,如果验证通过,则调用该用户的信息、确定其使用权限,接收并执行用户指令。本实施方案中的集成电路卡***使用示意图如图5所示,其中100为集成电路卡,200为读写器,300为数据处理主机。集成电路卡100通过IC卡接口***读写器200,读写器200通过通用接口***数据处理主机300。集成电路卡100与读写器200之间通过集成电路卡插口连接;读写器200与数据处理主机300之间通过USB接口连接。为清楚起见,读写器200的用户输入单元和输出单元在图5中也未示出。
图6示出了本发明的第二实施方案的逻辑框图。该实施方案的集成电路卡***包括集成设备400及数据处理主机300,其中集成设备400将集成电路卡及其读写器集成为一体。
如图6所示,集成设备400包括加密认证单元401、控制单元402、连接数据处理主机接口单元404、大容量存储单元405。各单元间的连接支持数据的双向传送。此外集成设备400还包括供电单元(图6中未示出)。集成设备400的控制单元402和大容量存储单元405中保存有操作***、应用软件、文件***。加密认证单元401的功能与第一实施方案中的加密认证单元201的功能相同,在此不再赘述。
本实施方案中,集成设备400中的加密认证单元401可以通过硬件实现,也可以使用软件,由集成设备400的控制单元402调用实现。加密认证单元401与控制单元402在物理上可以是独立的也可以是合而为一的。二者共同组成了集成设备400的中央处理单元403。
在本实施方案的一个实施例中,大容量存储单元405采用快闪存储器件实现,连接数据处理主机接口单元404采用IEEE1394总线接口实现。
数据处理主机300具有数据处理主机接口单元301,数据处理主机端的数据处理主机接口单元301采用IEEE1394总线接口。数据处理主机300通过该数据处理主机接口单元301与集成设备400进行连接和数据交换。数据处理主机接口单元301可以具有一个或多个接口,以便与本***中的一个或多个集成设备400连接及进行数据双向传送。
数据处理主机接口单元301与各集成设备400连接并输出数据,根据用户请求可将所述数据处理主机300存储的数据文件输出到各集成设备400;该数据处理主机接口单元301也可作为数据输入的接口,将来自各集成设备400的数据输入到数据处理主机300中进行处理或存储,或者再输出到其他设备中去。
当多个集成设备400与数据处理主机连接时,数据处理主机接口单元301识别所连接的各集成设备400的连接数据处理主机接口单元404的并行、串行和/或无线接口标准,初始化与各集成设备400相应接口之间的连接;按照接口标准协议的规范方法建立与各集成设备400之间的逻辑连接;解释、转换、控制和传输数据处理主机300与各集成设备400之间的各种控制信息和数据信息,实现各集成设备400与数据处理主机300之间的连接和数据交换。
集成设备400的供电单元(图6中未示出)可以采用电池、外接直流电源。当集成设备400与数据处理主机300连接时,也可以采用IEEE1394总线接口由数据处理主机供电。集成设备400与数据处理主机300构成的集成电路卡***根据集成设备400的固化软件和数据处理主机300的操作***进行数据交换处理,根据集成设备400的加密认证单元401和预设的加密认证机制进行加密认证工作。后文将对这些操作进行更详细的说明。
在该实施方案的一个实施例中,集成设备400也可以允许多个用户使用。为此在集成设备400中建立了多用户机制,为每位用户设置相应的身份认证信息,并分配一个虚拟存储空间。允许集成设备400在工作状态中的用户切换,在用户要求退出时,等待所有有关该用户的程序运行结束,保存用户信息;再提示下一位用户进行身份验证,如果验证通过,则调用该用户的信息、确定其使用权限,再接收并执行用户指令。图7显示了根据本发明第二实施方案的集成电路卡***的操作流程。结合附图详述如下:
当集成设备400***数据处理主机300时,集成设备400进行初始化工作,由数据处理主机300识别集成设备400,发出问询信息,根据集成设备400的应答,对其进行配置。在集成设备400被数据处理主机300安装配置完毕后,集成设备400开始接收数据处理主机300发来的指令,根据指令的格式判断指令的类型及操作对象。针对不同类型的指令,解释执行该指令并进行相应操作,再向数据处理主机300返回操作结果。在一个指令执行完毕后,等待直至数据处理主机300下达下一个操作指令。
数据处理主机300发来的指令大致可分为身份认证、读数据、写数据、格式化、切换用户和移除集成设备等六种操作。
对于身份认证操作指令,数据处理主机300将要求用户输入指定的认证信息并将该信息传送给集成设备400;集成设备400将该认证信息与预存的认证信息进行比较,如果认证信息与预存信息相符,则确定该用户对集成设备400的操作权限并向数据处理主机300返回认证成功信息;如果认证信息与预存信息不符,则向数据处理主机300返回认证失败信息,并回到图7的①处继续等待数据处理主机300下达操作指令。
对于读数据操作指令,集成设备400先检验该用户的操作权限,确定该用户拥有对集成设备大容量存储单元405的读操作权限;如果用户不具备读数据权限,则向数据处理主机300返回操作失败信息,回到图7的①处继续等待数据处理主机300下达操作指令。如果用户具有读数据权限,则集成设备从大容量存储单元504中读取指令指定的数据,根据加密认证机制的设定,判断该笔数据是否是经过加密和需要解密;如果需要解密,则调用加密认证单元401对该笔数据进行解密后返回给数据处理主机300;如果该笔数据不需解密,则直接返回给数据处理主机300。
对于写数据操作指令的处理类似于读数据操作指令:集成设备400先检验该用户的操作权限,确定该用户拥有对其大容量存储单元405的写操作权限;如果用户不具备写数据权限,则向数据处理主机300返回操作失败信息,回到图7的①处继续等待数据处理主机300下达操作指令。如果用户具有写数据权限,则根据加密认证机制的设定判断该笔数据是否需要加密;如果需要加密,则调用加密认证单元401对该笔数据进行加密后写入大容量存储单元405,再向数据处理主机300返回写数据成功信息;如果该笔数据不需加密,则直接写入大容量存储单元405,返回写数据成功信息。
对于格式化操作指令,集成设备400先检验该用户的操作权限,确定该用户拥有对其大容量存储单元405的格式化操作权限;如果用户不具备该操作权限,则向数据处理主机300返回操作失败信息,回到图7的①处继续等待数据处理主机300下达操作指令。如果用户具有该操作权限,则对大容量存储单元405进行格式化操作,返回格式化操作成功信息。
当集成设备400的多个用户之间进行切换时,要进行切换用户操作。具体处理是:集成设备400保存当前用户的信息,数据处理主机300重置集成设备400,操作流程回到图7的①处,集成设备400继续等待数据处理主机300下达操作指令。只有下一位用户完成身份认证操作后,才可以访问集成设备400。
对于移除集成设备操作指令,集成设备400保存与用户相关的信息;用户拔出集成设备400后,整个***的操作流程结束。
可将本实施方案中的集成设备400作为数据处理主机300的电子钥匙,只有在将集成设备400接入数据处理主机300,并且用户通过了认证检验和确定操作权限后,才能够对数据处理主机300进行权限内的数据操作;同理也可以保护集成设备400中的数据。
另外,集成设备400也可以作为数据的加密解密工具,利用集成设备400的加密认证单元401对数据进行加密解密处理。
再有,集成设备400也可以作为移动存储器,存储大量数据并与数据处理主机300进行数据交互。
此外,还可以将集成设备400作为数据处理主机300的专用设备,仅能够在设定的一台或多台数据处理主机上使用。
在一个实施例中,集成设备400与数据处理主机300之间可以通过无线连接方式例如蓝牙接口实现。在这种情况下,集成设备400中的连接数据处理主机接口单元404与数据处理主机300中的数据处理主机接口单元301都采用蓝牙接口标准构造并进行通信。集成设备400通过外接直流电源或电池供电。
综上所述,采用具有大容量存储和通用接口的集成设备和/或集成电路卡及其读写器,不仅可以实现传输数据进行加密和保护、用户网络数字签名、身份认证、网络访问权限控制、文件加密管理、数据加解密、软件产权保护等多项功能,有效保护重要数据不被监听、截取和篡改,有效保证数据的有效性和完整性,还能够实现大量数据的交换、处理及移动存储,对数据的处理速度和能力都大大提高,可广泛应用于要求身份认证、识别、数据加密的移动存储领域和安全领域。
以上是对本发明示例性地说明,本领域普通技术人员可以理解,对大容量存储单元的设置的方案不是唯一的,数据交换通道、加密解密和加密认证机制也可采用各种已知的成熟技术。本发明的精髓是大容量存储技术、加密解密技术、加密认证机制及通用数据接口的有机结合与功能拓展。因此,不偏离本发明思想的对本发明技术方案的各种改型将落入本发明权利要求所限定的保留范围中。