一种复合型usb设备及其实现方法

文档序号:6603585阅读:235来源:国知局
专利名称:一种复合型usb设备及其实现方法
技术领域
本发明涉及信息安全领域,特别涉及一种复合型usb设备及其实现方法。
背景技术
复合设备是指一种能完成两个或多个不同设备的功能的设备。现有的通用串行总线存储技术,是利用通用串行总线块传输协议,具有良好的使 用性。使用这种技术的设备通常有第一类可移动存储设备,主要包括磁盘、光盘、闪存盘等。第二类智能密钥设备,主要包括软件保护设备、身份验证安全设备等。信息安全设 备通常是usb接口,也称usbkey,它使用简单、成本较低。它内置单片机或智能卡芯片,可以 存储用户的密钥或数字证书,利用智能密钥设备内置的密码算法实现对用户身份的认证。 智能密钥设备具有电子邮件加密、数字签名、安全证书、安全网络登录和访问SSUSecurity Socket Layer,安全套接层协议层)安全网络等功能,并且具有保证用户的私钥永远不离开 硬件的特征,还具有物理上防攻击的特性,安全性极高。以上两类设备的外形差不多,但功能却是有很大的不同的。在现在技术中不仅可以将智能密钥设备在计算机中声明为CCIDOisbChip/Smart Card Interface Devices-usb,芯片智能卡接口设备)设备对其进行操作,还可以声明为HI D (Human Interface Device,人机接口设备)设备,使智能密钥设备遵守HID协议规范的通 信规则,完成智能密钥设备的各种功能。HID设备是Windows操作系统完全支持的usb设备 中的一种,在运行Windows 98或更高版本的计算机上,应用程序可以与使用操作系统内置 驱动的HID设备通信,因此,符合HID协议规范的usb设备在Windows系统中可以很容易的 设置并运行。现有智能密钥设备的通讯还可以通过SCSI (Small Computer Systemlnterface, 小型计算机系统接口 )命令的方式来实现,SCSI是计算机连接外接设备的一种接口标准, 能够提供更快的数据传输率。SCSI为方便开发者使用预留了扩展命令,为完成智能密钥设 备的SCSI通讯,开发者将SCSI扩展命令设计成智能密钥设备的命令,以完成智能密钥设备 的功能。

发明内容
目前,可移动存储设备和智能密钥设备已经广为普及,而且为了满足广大用户的 需要,开发出了既具有可移动存储设备的功能又具有智能密钥设备的功能的复合设备。本 发明提供了一种复合型usb设备及其实现方法,所述技术方案如下一种复合型usb设备的实现方法,其特征在于,包括复合型usb设备与主机建立连接,声明其自身的设备类型;所述复合型usb设备接收所述主机下发的操作指令,并判断所述操作指令是否是 智能密钥操作指令;
4
如果是,则执行所述操作指令中指示的智能密钥操作;否则,则执行数据读/写操作。所述复合型usb设备与主机建立连接,声明其自身的设备类型的方法具体还包 括所述复合型usb设备声明其自身为预定个数的大容量存储设备。所述大容量存储设备包括光盘、磁盘。所述主机下发的操作指令为按照SCSI协议规范封装的命令。所述复合型usb设备判断所述操作指令是否是智能密钥操作指令的方法具体为判断所述操作指令中指定域的值是否是约定值,如果是约定值,则所述操作指令 是智能密钥操作指令,否则是数据读/写操作指令;或者判断所述操作指令中特殊域中指定位的值是否是约定值,如果是约定值,则所述 操作指令是智能密钥操作指令,否则是数据读/写操作指令;或者判断所述操作指令是否是扩展SCSI指令,如果是扩展SCSI指令,则所述操作指令 是智能密钥操作指令,否则是数据读/写操作指令。所述操作指令中指定域具体为所述操作指令中的LUN域、预留域或LBA域;所述操作指令中特殊域中指定位具体为LUN域中特殊的位、预留域中特殊的位 或其它域中的预留位。所述复合型usb设备与主机建立连接,声明其自身的设备类型,所述方法还包括所述复合型usb设备声明为1个HID设备和预定个数的大容量存储设备。所述复合型usb设备接收所述主机下发的操作指令,并判断所述操作指令是否是 智能密钥操作指令的方法具体为所述复合型usb设备解析并判断所述操作指令是否是按照SCSI协议规范封装的, 如果是,则所述操作指令为数据读/写操作指令,否则所述操作指令是智能密钥操作指令;或者,所述复合型usb设备判断所述操作指令是否是通过usb控制传输管道传入的,如 果是,则所述操作指令为智能密钥操作指令,否则所述操作指令是数据读/写操作指令。所述复合型usb设备与主机建立连接,声明其自身的设备类型,所述方法还包括所述复合型usb设备声明为1个CCID设备和预定个数的大容量存储设备。所述复合型usb设备接收所述主机下发的操作指令,并判断所述操作指令是否是 智能密钥操作指令的方法具体为所述复合型usb设备解析并判断所述操作指令是否是按照SCSI协议规范封装的, 如果是,则所述操作指令为数据读/写操作指令,否则所述操作指令是智能密钥操作指令。所述智能密钥操作具体包括数字签名、身份认证、数据加/解密。—种复合型usb设备,其特征在于,所述设备包括接口模块,用于复合型usb设备与主机建立连接,进行基于usb协议的数据解析/ 封装及通信;指令判断模块,用于判断所述接口模块解析usb数据包得到的操作指令是是标准 的SCSI数据读/写操作指令还是智能密钥操作指令;
数据存储模块,用于存储数据,当所述操作指令是所述标准的SCSI数据读/写操 作指令时,执行所述操作指令进行数据读/写操作;智能密钥模块,用于当所述操作指令是所述智能密钥操作指令时执行相应的智能 密钥操作。所述智能密钥模块还包括数字签名单元,用于根据所述智能密钥操作指令中的签名指令对传入的数据进行 数据签名操作。所述智能密钥模块还包括身份认证单元,用于根据所述智能密钥操作指令中的身份认证指令进行身份认证 操作。所述智能密钥模块还包括数据加/解密单元,用于根据所述智能密钥操作指令中的数据加/解密指令,对传 入/传出的数据进行加/密操作;所述数据加/解密单元,还用于对传入/传出所述数据存储模块的数据进行加/ 解密操作。本发明提供的技术方案带来的有益效果是1.使用方便,用户只需要一个设备就可以满足大容量数据存储和智能密钥的相关 功能需求。2.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多。3.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过本发明 提供的技术方案可以存储的数据进行加密,以保护数据安全。


图1是本发明实施例一提供的--种复合型usb设备的实现方法;
图2是本发明实施例二提供的--种复合型usb设备的实现方法;
图3是本发明实施例三提供的--种复合型usb设备的的实现方法;
图4是本发明实施例四提供的--种复合型usb设备的的实现方法;
图5是本发明实施例五提供的--种复合型usb设备的功能模块图6是本发明实施例六提供的--种复合型usb设备的 !件结构示意图
图7是本发明实施例七提供的--种复合型usb设备的 !件结构示意图
图8是本发明实施例八提供的--种复合型usb设备的 !件结构示意图
图9是本发明实施例九提供的--种复合型usb设备的 !件结构示意图。
图10是本发明实施例十提供的-一种复合型usb设备的彳 件结构示意图
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。实施例一
本发明的目的是提供一种复合型usb设备的实现方法。解决了将存储设备和智能 密钥设备集成到一个设备中的问题,复合设备中的存储设备的功能和智能密钥设备的功能 是通过一个微处理器或多个微处理器芯片来实现的;参见图1,实现的步骤具体如下步骤101.复合设备与主机连接,声明设备类型为大容量存储设备;复合设备通过usb接口连接到主机,主机向复合设备发送usb枚举命令,以获取复 合设备的类型;复合设备接收到主机下发的枚举命令后,向主机报告其为大容量存储设备,并且 支持SCSI协议的接口标准。步骤102.主机获取复合设备的逻辑单元个数;usb大容量存储设备支持具有共同设备特性的多个逻辑单元,逻辑单元可以是物 理存储单元或者逻辑地址空间,每个逻辑单元可以由LUN (Logic UnitNumber,逻辑单元号) 来标识。具体地,主机向复合设备发送的获取LUN的命令为GET_MAX_LUN命令,复合设备向 主机返回预先约定的LUN值,LUN的取值范围为0至15。在本发明实施例中,复合设备返回给主机的LUN值可以为0至15的任意值;此处 以LUN值为1举例说明,表示该复合设备可以实现两种设备的功能。步骤103.主机获取复合设备的具体信息;主机向复合设备中的各个逻辑单元(LUN从0到最大)下发INQUIRY命令,查询设 备具体信息;每个逻辑单元被认为是单独的存储设备,响应INQUIRY命令,报告每个存储设 备的特性。复合设备收到主机下发的INQUIRY命令后,向主机发送字符集描述(Unicode),包 括生产厂商、产品描述、型号等信息;在字符集描述中包含有该大容量存储设备的具体类型,包括磁盘、光盘等。本发明 实施例中,复合设备向主机声明自身为光盘设备。另外,如果在步骤102中,若复合设备返回的LUN大于0,即复合设备向主机报告有 多个逻辑单元,则在步骤103中复合设备可将这多个逻辑单元分别声明为不同的类型。步骤104.主机加载该复合设备的驱动程序。主机根据上述步骤中复合设备的应答信息,选择设备通信的接口,加载设备驱动 程序。步骤105.主机中生成操作指令,下发给复合设备;如果主机是要对复合设备进行数据的读取或写入操作,则按照SCSI协议生成标 准的数据读/写操作指令,然后将操作指令下发给复合设备;如果主机要使用复合设备的智能密钥功能,则主机根据预先约定的规则生成智能 密钥操作指令,然后将智能密钥操作指令下发给复合设备。其中,复合设备的智能密钥功能包括数字签名、数据加/解密、身份认证等;其中,当主机使用复合设备的智能密钥功能时,下发的智能密钥操作指令为特定 的SCSI指令;一般通过在SCSI指令中特殊的域或位使用特殊的值来表示此命令为特定的SCSI 指令,上述特殊的域包括LUN域、预留域,特殊的位包括LUN域中特殊的位、预留域中特殊的
7位或其它域中的预留位;例如,主机下发的SCSI指令序列如下0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 0a 28 00 00 00 00 48 0000 04 00 00 00 00 00 00 00其中,该指令序列的前4个字节数据0x55 53 42 43表示该指令序列为SCSI请 求;第13个字节0x80表示复合设备需要向主机返回数据,如果该字节为0x00则表示主机 将要向复合设备发送数据;第15个字节0x0a表示该字节后有10字节的SCSI指令,SCSI 指令为0x28 00 00 00 00 48 00 00 04 00在该10字节的SCSI指令中,第一字节0x28为操作码,表示该SCSI指令为readlO 指令(读数据指令),若操作码为0x2a,则表示该SCSI指令为writelO指令(写数据指 令);第2个字节0x00为LUN域,该指令中LUN值为0 ;第3字节至第6字节为LBA (Logical Block Address,逻辑块地址)域,域中的值0x0000 00 48表示的是LBA地址;第7字节至 第9字节0x00 00 04表示偏移量;第10字节为控制参数。在本发明实施例中,智能密钥操作指令采用的是使用SCSI指令中特殊的域的形 式若当前主机要对复合设备进行数据读/写操作,则LUN的值不变,为0 ;若是执行 数字签名操作,则LUN的值为1。例如,主机下发的指令序列为0x55 53 42 43 28 9b a5 85 00 08 00 00 00 00 0a 2a 01 00 00 aO e8 0000 a4 00 00 00 00 00 00 00在该指令序列中,SCSI指令的操作码为0x2a,表示该SCSI指令为writelO指令; LUN值为1,表示该指令为签名指令;该指令序列的第13个字节为0x00,表示主机将要向复 合设备发送待签名数据;主机下发上述指令序列后,将待签名数据按SCSI协议发送给复合设备。步骤106.复合设备接收操作指令,并对接收到的操作指令进行分析,判断其是否 是数据读/写操作指令;具体地,复合设备判断接收到的操作指令是否是数据读/写操作指令的方法为复合设备根据接收到的SCSI指令中特殊域的值、或域中特殊的位判断该操作指 令是否是数据读/写操作指令,若是,则执行步骤107 ;否则执行步骤108。在本发明实施例中,复合设备判断LUN域的值若LUN域的值为0,则该SCSI指令 为数据读/写操作指令,执行步骤107 ;若LUN域的值为1,则该SCSI指令为智能密钥操作 指令,执行步骤108。步骤107.复合设备执行数据读/写操作指令,并向主机返回指令执行结果;在本发明实施例中,在步骤106中判断接收到的SCSI指令中LUN域的值为0,则该 操作指令是读/写操作指令,此时复合设执行该SCSI指令进行数据的读/写操作;然后将 指令的执行结果(读取到的数据或写入数据成功的信息)返回给主机。步骤108.复合设备执行接收到的操作指令,进行智能密钥操作;复合设备判断接收到的SCSI指令为智能密钥操作指令后,解析接收到的SCSI指
8令,判断智能密钥操作的具体类型(数字签名、数据加/解密、身份认证等),然后接收待操 作数据,根据该智能密钥操作指令对待操作数据进行相应的智能密钥操作。在本发明实施例中,步骤106中解析出接收到的SCSI指令中LUN域的值为1,则复 合设备可以判断出该操作指令是智能密钥操作指令中的签名指令,然后接收待签名数据, 并对待签名数据进行数字签名操作。步骤109.复合设备将操作指令的执行结果返回给主机,结束。在复合设备将操作指令的执行结果返回给主机之前,主机还可以向复合设备下发 获取签名结果的指令;如,主机可以向复合设备发送特殊的读数据指令或预定的扩展SCSI指令;复合设备将操作指令的执行结果按SCSI协议封装后返回给主机。在本发明实施例中,主机向复合设备下发的获取签名结果指令如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 0a 28 01 00 00 aO e8 0000 a4 00 00 00 00 00 00 00复合设备接收到该指令后将数字签名的结果按SCSI协议封装后返回给主机。在本发明实施例中,复合设备中的智能密钥功能至少包括数字签名、身份认证、数 据加/解密等功能中的至少一个功能;例如,若复设备响应主机的GET-MAX-LUN命令时所返回的LUN值为4 ;则相应地,当SCSI指令中的LUN值为0时,该指令为数据读/写指令;当LUN值为 1时,该指令为签名指令;当LUN值为2时,该指令为数据加密指令;当LUN值为3时,该指 令还可以为数据解密指令;当LUN值为4时,该指令为身份认证指令;相应地,复合设备实现身份认证、数据加/解密等功能的方法,可以参照上述的实 现数据字签名功能的方法。其中,数据加/解密使用的方法包括自定义算法加密和标准算法加密;标准加密算法包括RSA、DES、3DES、MD5、SHA-1、SSF33、AES、ECC、RC、PGP、BASE64
算法;自定义的算法加密中使用的方法为用户自定义的算法。本发明的有益效果从以上技术方案可以看出,本发明实施例1所提供的设备在接 入操作系统后表现为一个或多个海量存储设备,在海量存储设备的基础上,还实现了智能 密钥设备的功能,所占有的优势是1.使用方便,用户只需要一个设备就可以满足存储和智能密钥相关功能;2.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多;3.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过本发明 提供的技术方案可以存储的数据进行加密,以保护数据安全。4.完全兼容现在有各种操作系统提供的接口。实施例二本发明的目的是提供一种复合型usb设备的实现方法。解决了将存储设备和智能 密钥设备集成到一个设备中的问题,复合设备中的存储设备的功能和智能密钥设备的功能 是通过一个微处理器或多个微处理器芯片来实现的;参见图2,实现的步骤具体如下
9
步骤201.复合设备与主机连接,声明设备类型为大容量存储设备;复合设备通过usb接口连接到主机,主机向复合设备发送usb枚举命令,以获取复 合设备的类型;复合设备接收到主机下发的的枚举命令后,向主机报告其为大容量存储设备,并 且支持SCSI协议的接口标准。步骤202.主机获取复合设备的逻辑单元个数;具体地,主机向复合设备发送的获取LUN的命令为GET_MAX_LUN命令,复合设备向 主机返回预先约定的LUN值,LUN的取值为0至15。在本发明实施例中,复合设备返回给主机的LUN值为0,表示该复合设备只有一个 逻辑单元。步骤203.主机获取复合设备的具体信息;主机向复合设备中的各个逻辑单元(LUN从0到最大)下发INQUIRY命令,查询设 备具体信息;每个逻辑单元被认为是单独的存储设备,响应INQUIRY命令,报告每个存储设 备的特性。复合设备收到主机下发的INQUIRY命令后,向主机发送字符集描述(Unicode),包 括生产厂商、产品描述、型号等信息;在字符集描述中包含有该大容量存储设备的具体类型,包括磁盘、光盘等。本发明实施例中,复合设备向主机声明自身为磁盘设备。步骤204.主机加载该复合设备的驱动程序。主机根据上述步骤中复合设备的应答信息,选择设备通信的接口,加载设备驱动 程序。步骤205.主机中生成操作指令,下发给复合设备;主机与复合设备通信过程中收发的指令是按照SCSI接口协议的规范进行封装 的。在主机中,如果主机是要对复合设备进行数据的读取或写入操作,则按照SCSI协 议的标准生成数据读/写操作指令,然后将操作指令下发给复合设备;如果主机要使用复合设备的智能密钥功能,则主机根据预先约定的规则生成操作 指令,然后将操作指令下发给复合设备。其中,复合设备的智能密钥功能包括数字签名、数据加/解密、身份认证等;具体地,当主机使用复合设备的智能密钥功能时,下发的操作指令为访问磁盘中 特定位置的SCSI指令;磁盘中特定位置包括,磁盘中的特定文件,磁盘中特定扇区等;该特定文件或特定扇区为复合设备中预先约定的。例如,主机向复合设备下发的签名指令序列如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 00 00 0a 2a 00 aa aa aa aa 0000 a4 00 00 00 00 00 00 00上述指令序列中,主机通过一个特殊的LBA地址Oxaa aa aa aa,表示了该SCSI指 令是签名指令;主机下发上述指令序列后,将待签名数据按SCSI协议发送给复合设备。
10
步骤206.复合设备接收到操作指令,并对接收到的操作指令进行分析,判断其是 否是数据读/写操作指令;若判断出该操作指令是数据读/写操作指令,则执行步骤207,否则该操作指令为 智能密钥操作指令,执行步骤208。复合设备判断接收到的操作指令是否是数据读/写操作指令的方法为复合设备解析并判断接收到的操作指令是否是访问磁盘中特定文件或特定扇区 或文件的操作指令,如果是,则该操作指令为智能密钥操作指令,否则该操作指令是数据读 /写操作指令。具体地,本发明实施例中,复合设备根据接收到的操作指令中的LBA地址为Oxaa aa aa aa,可以判断出该操作指令为签名指令;复合设备判断出该指令为签名指令后接收主机下发的待签名数据。步骤207.复合设备执行数据读/写操作指令,并向主机返回指令执行结果;在本发明实施例中,在步骤206中判断出接收到的SCSI指令是读/写操作指令, 此时复合设备执行该SCSI指令进行数据的读/写操作;然后将指令的执行结果(读取到的 数据或写入数据成功的信息)返回给主机。步骤208.复合设备执行接收到的SCSI指令,进行智能密钥操作;复合设备判断接收到的SCSI指令为智能密钥操作指令后,根据该SCSI指令执行 相应的智能密钥操作,进行数字签名、数据加/解密或身份认证等智能密钥操作。在本发明实施例中,步骤206中判断出接收到的SCSI指令为签名指令后,对指令 中传入的待签名数据进行数字签名操作。步骤209.复合设备将操作指令的执行结果返回给主机,结束。在复合设备将操作指令的执行结果返回给主机之前,主机还可能向复合设备下发 获取签名结果的指令;在本发明实施例中,主机向复合设备下发的获取签名结果指令如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 Oa 28 01 aa aa aa aa 0000 a4 00 00 00 00 00 00 00复合设备接收到获取签名结果的指令后,将智能密钥操作指令的执行结果按SCSI 协议封装后返回给主机。在本发明实施例中,复合设备中的智能密钥功能至少包括数字签名、身份认证、数 据加/解密等功能中的至少一个功能;例如,可以通过不同的特殊的LBA地址对智能密钥操作类型加以区分。数据加/解密使用的方法包括自定义算法加密和标准算法加密;标准加密算法包括RSA、DES、3DES、MD5、SHA-1、SSF33、AES、ECC、RC、PGP、BASE64
算法;自定义的算法加密中使用的方法为用户自定义的算法。本发明的有益效果从以上技术方案可以看出,本发明实施例二所提供的设备在接 入操作系统后表现为一个海量存储设备,在海量存储设备的基础上,还实现了智能密钥设 备的功能,所占有的优势是1.使用方便,用户只需要一个设备就可以满足存储和智能密钥相关功能;
2.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多;3.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过本发明 提供的技术方案可以存储的数据进行加密,以保护数据安全;4.完全兼容现在有各种操作系统提供的接口。实施例三本发明的目的是提供一种复合型usb设备的实现方法。解决了将存储设备和智能 密钥设备集成到一个设备中的问题,复合设备中的存储设备的功能和智能密钥设备的功能 是通过一个微处理器或多个微处理器芯片来实现的;参见图3,实现的步骤具体如下步骤301.复合设备与主机连接,声明设备类型为大容量存储设备; 复合设备通过usb接口连接到主机,主机向复合设备发送usb枚举命令,以获取复 合设备的类型;复合设备接收到主机下发的的枚举命令后,向主机报告其为大容量存储设备,并 且支持SCSI协议的接口标准。步骤302.主机获取复合设备的逻辑单元个数;具体地,主机向复合设备发送的获取LUN的命令为GET_MAX_LUN命令,复合设备向 主机返回预先约定的LUN值,LUN的取值为0至15。在本发明实施例中,复合设备返回给主机的LUN值为0,表示该复合设备只有一个 逻辑单元。步骤303.主机获取复合设备的具体信息;主机向复合设备中的各个逻辑单元(LUN从0到最大)下发INQUIRY命令,查询设 备具体信息;每个逻辑单元被认为是单独的存储设备,响应INQUIRY命令,报告每个存储设 备的特性。复合设备收到主机下发的INQUIRY命令后,向主机发送字符集描述(Unicode),包 括生产厂商、产品描述、型号等信息;在字符集描述中包含有该大容量存储设备的具体类型,包括磁盘、光盘等。本发明实施例中,复合设备向主机声明自身为磁盘设备。步骤304.主机加载该复合设备的驱动程序。主机根据上述步骤中复合设备的应答信息,选择设备通信的接口,加载设备驱动 程序。步骤305.主机中生成操作指令,下发给复合设备;主机与复合设备通信过程中收发的指令是按照SCSI接口协议的规范进行封装 的。在主机中,如果主机是要对复合设备进行数据的读取或写入操作,则按照SCSI协 议的标准生成标准的数据读/写操作指令,然后将操作指令下发给复合设备;如果主机要使用复合设备的智能密钥功能,则主机根据预先约定的规则生成操作 指令,然后将操作指令下发给复合设备。其中,复合设备的智能密钥功能包括数字签名、数据加/解密、身份认证等;为扩展SCSI指令;所谓扩展SCSI指令,是在SCSI指令序列中使用了在标准的SCSI协议中没有使用 的操作码(即在标准的SCSI协议中没有规定该操作码的用法及意义),主机通过预先约定 的扩展SCSI指令控制复合设备进行多种类型的智能密钥操作。例如,主机向复合设备下发的签名指令序列如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 00 00 0a ee Oe 34 00 4a 00 0000 a4 00 00 00 00 00 00 00在上述指令序列中,0x0a之后的10个字节中,第一个字节操作码Oxee在标准 SCSI协议中没有被使用,这表示这条SCSI指令是扩展SCSI指令,操作码之后的其余9个字 节的值可以是预先约定的值或随机数;主机下发上述指令序列后,将待签名数据按SCSI协议发送给复合设备。另外,若该复设备还同时拥有除数字签名功能以外的其它智能密钥功能,如数据 加密等,则主机生成智能密钥操作指令时可以使用不同的操作码,或是使用操作码后的9 个字节数据来约定不同的智能密钥操作类型。步骤306.复合设备接收操作指令,并对接收到的操作指令进行分析,判断其是否 是数据读/写操作指令;若判断出该操作指令是数据读/写操作指令,则执行步骤307,否则该操作指令为 智能密钥操作指令,执行步骤308。复合设备判断接收到的操作指令是否是数据读/写操作指令的方法为复合设备根据接收到的操作指令中的操作码判断该操作指令是否是扩展SCSI指 令,如果是,则该操作指令为智能密钥操作指令,否则该操作指令是数据读/写操作指令。具体地,本发明实施例中,复合设备根据接收到的SCSI操作指令中的操作码Oxee 判断出该操作指令是扩展SCSI指令,于是可知该操作指令为签名指令;复合设备判断出该指令为签名指令后接收主机下发的待签名数据。步骤307.复合设备执行数据读/写操作指令,并向主机返回指令执行结果;在本发明实施例中,在步骤306中判断出接收到的操作指令是标准SCSI指令中的 数据读/写操作指令,此时复合设备执行该操作指令进行数据的读/写操作;然后将指令的 执行结果(读取到的数据或写入数据成功的信息)返回给主机。步骤308.复合设备执行接收到的扩展SCSI指令,进行智能密钥操作;复合设备判断接收到的操作指令为扩展SCSI指令后,根据该扩展SCSI指令执行 相应的智能密钥操作,进行数字签名、数据加/解密或身份认证等智能密钥操作。在本发明实施例中,步骤306中判断出接收到的操作指令为签名指令后,对指令 中传入的待签名数据进行数字签名操作。步骤309.复合设备将操作指令的执行结果返回给主机,结束。在复合设备将操作指令的执行结果返回给主机之前,主机还可能向复合设备下发 获取签名结果的指令;在本发明实施例中,主机向复合设备下发的获取签名结果指令如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 Oa dd 00 00 00 00 00 0000 a4 00 00 00 00 00 00 00
13
在该扩展SCSI指令序列中,操作码Oxdd表示该操作指令为获取签名结果指令;或者,主机对之前下发的签名指令进行修改,将签名指令的第13个字节由0x00改 为0x80,该操作指令表示复合设备需要向主机返回数据,即签名结果,该获取签名结果指令 如下所示0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 Oa ee Oe 34 00 4a 00 0000 a4 00 00 00 00 00 00 00另外,还可以使用操作码之后的9个字节来表示该扩展SCSI指令为区别于签名指 令的获取签名结果指令,相应地,获取签名结果指令还可以是下面这样一种形式0x55 53 42 43 28 9b a5 85 00 08 00 00 80 00 Oa ee Oe 34 00 4a 00 0000 a4 00 00 00 00 00 00 00复合设备接收到获取签名结果的指令后,将智能密钥操作指令的执行结果按SCSI 协议封装后返回给主机。在本发明实施例中,复合设备中的智能密钥功能至少包括数字签名、身份认证、数 据加/解密等功能中的至少一个功能;数据加/解密使用的方法包括自定义算法加密和标准算法加密;标准加密算法包括RSA、DES、3DES、MD5、SHA-1、SSF33、AES、ECC,RC、PGP、BASE64
算法;自定义的算法加密中使用的方法为用户自定义的算法。本发明的有益效果从以上技术方案可以看出,本发明实施例三所提供的设备在接 入操作系统后表现为一个海量存储设备,在海量存储设备的基础上,还实现了智能密钥设 备的功能,所占有的优势是1.使用方便,用户只需要一个设备就可以满足存储和智能密钥相关功能;2.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多;3.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过本发明 提供的技术方案可以存储的数据进行加密,以保护数据安全;4.完全兼容现在有各种操作系统提供的接口。实施例四本发明的目的是提供一种复合型usb设备的实现方法。解决了将存储设备和智能 密钥设备集成到一个设备中的问题,复合设备中的存储设备的功能和智能密钥设备的功能 是通过一个微处理器或多个微处理器芯片来实现的;参见图3,实现的步骤具体如下步骤401.复合设备与主机建立连接,报告设备信息及设备类型;复合设备通过usb接口连接到主机,主机向复合设备发送usb枚举命令,以获取复 合设备的类型;复合设备接收到主机下发的枚举命令后,向主机报告其为一个支持SCSI协议接 口标准的大容量存储设备和一个HID设备;或者,复合设备声明自身设备类型为SCSI协议的大容量存储设备与一个 CCID(usbChip/Smart Card Interface Devices,usb 芯片智能卡接口设备)设备。
在本发明实施例中,大容量存储设备可以包含有1个或1个以上至16个逻辑单元,每个逻辑单元的设备类型既可以是磁盘也可以是光盘。步骤402.主机加载该复合设备的驱动程序。主机根据复合设备的应答信息,选择相应的设备通信的接口协议,加载设备驱动 程序。步骤403.主机中生成操作指令,下发给复合设备;如果主机是要对复合设备进行数据的读取或写入操作,则按照SCSI协议的标准 生成数据读/写操作指令,然后通过批量传输管道下发给复合设备;如果主机要使用复合设备的智能密钥功能,则主机调用PCSC接口生成符合7816 协议标准的APDU(Application Protocol Data Unit,应用协议数据单元)指令,并按HID 协议对APDU指令进行封装,然后通过控制传输管道下发给复合设备;或者,如果主机要使用复合设备的智能密钥功能,则主机调用PCSC接口生成符合7816 协议标准的APDU指令,并按CCID协议对APDU指令进行封装,然后通过批量传输管道下发
给复合设备。其中,复合设备的智能密钥功能包括数字签名、数据加/解密、身份认证等。例如,主机调用PCSC接口生成一条APDU指令,该指令为取随机数指令0x00 84 00 00 08然后,主机使用CCID协议中规定的指令头对接收到的数据进行封装,指令头为0x6f 05 00 00 00 00 10 00 00 00封装后得到指令为0x6f 05 00 00 00 00 10 00 00 00 00 84 00 00 08步骤404.复合设备接收到操作指令,并对接收到的操作指令进行分析,判断其是 否是数据读/写操作指令;若判断出该操作指令是数据读/写操作指令,则执行步骤405,否则该操作指令为 智能密钥操作指令,执行步骤406。具体地,复合设备判断接收到的操作指令是否是数据读/写操作指令的方法为复合设备判断接收到的操作指令是否是按照SCSI协议规范封装的,如果是,则该 操作指令为SCSI协议的数据读/写操作指令,否则该操作指令是按照HID协议或CCID协 议封装的智能密钥操作指令;或者,当复合设备声明设备类型为HID设备与SCSI协议的大容量存储设备时,复合设备 判断接收到的操作指令是否是通过控制传输管道传入的,如果是,则该操作指令为HID协 议封装的智能密钥操作指令,否则该操作指令是SCSI协议的数据读/写操作指令。步骤405.复合设备执行数据读/写操作指令,并向主机返回指令执行结果;在本发明实施例中,在步骤404中判断出接收到的操作指令是读/写操作指令,此 时复合设备执行该SCSI指令进行数据的读/写操作;然后将指令的执行结果(读取到的数 据或写入数据成功的信息)返回给主机。步骤406.复合设备执行接收到的智能密钥操作指令,进行智能密钥操作;
复合设备判断接收到的操作指令为智能密钥操作指令后,解析该操作指令并执行 相应的智能密钥操作,进行数字签名、数据加/解密或身份认证等操作。例如,复 合设备对接收到的CCID指令0x6f 05 00 00 00 00 10 00 00 00 0084 00 00 08进行解析,得到APDU指令0x00 84 00 00 08后,复合设备根据该APDU指令执行 取随机数的操作。步骤407.复合设备将操作指令的执行结果返回给主机,结束。复合设备将智能密钥操作指令的执行结果按HID协议封装后通过中断传输管道 返回给主机;或者,复合设备将智能密钥操作指令的执行结果按CCID协议封装后通过批量传输管道 返回给主机。在本发明实施例中,复合设备中的智能密钥功能至少包括数字签名、身份认证、数 据加/解密等功能中的至少一个功能。本发明的有益效果从以上技术方案可以看出,本发明实施例四所提供的设备在接 入操作系统后表现为一个海量存储设备和一个HID设备,或者表现为一个海量存储设备和 一个CCID设备,所占有的优势是1.可以方便的通过计算机访问复合设备,设备管理方便,完全兼容现在有各种操 作系统提供的接口;2.使用方便,用户只需要一个设备就可以满足存储和智能密钥相关功能;3.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多;4.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过本发明 实施例提供的技术方案可以存储的数据进行加密,以保护数据安全。实施例五本发明实施例提供一种usb接口的复合设备。该复合设备将存储设备和智能密钥 设备集成到一个设备中,该复合设备中的存储的功能和智能密钥的功能可以是通过一个微 处理器或多个微处理器芯片来实现的。如图5所示,本发明实施例提供的复合型usb设备500包括usb接口模块501、指 令判断模块502、数据存储模块503和智能密钥模块504。usb接口模块501,用于复合型usb设备500与主机建立连接,进行基于usb协议 的数据解析/封装及通信;指令判断模块502,用于判断usb接口模块501解析usb数据包得到的操作指令是 标准的SCSI数据读/写指令还是智能密钥操作指令,然后将标准的SCSI数据读/写操作 指令发送给数据存储模块503,将智能密钥操作指令发送给智能密钥模块504 ;数据存储模块503,用于存储数据,并执行数据读/写操作;智能密钥模块504,用于根据智能密钥操作指令执行相应的智能密钥操作。其中,智能密钥操作包括数字签名和/或身份认证和/或数据加/解密等;相应地,智能密钥模块包括数字签名单元504A、身份认证单元504B、数据加/解 密单元504C ;
数字签名单元504A,用于根据智能密钥操作指令中的签名指令对传入的数据进行 数据签名操作;身份认证单元504B,用于根据智能密钥操作指令中的身份认证指令进行身份认证 操作;数据加/解密单元504C,用于根据智能密钥操作指令中的数据加/解密指令,对传 入的数据进行加/密操作,然后将加/密操作后的密文/明文返回给主机或发送到数据存 储模块503进行存储;数据加/解密单元504C还用于对从存储模块503读出数据的数据进 行加/解密操作,然后将加/密操作后的密文/明文返回给主机。 复合型usb设备500通过usb接口模块501与主机建立连接,向主机声明其自身 为预定个数的大容量存储设备;USb接口模块501接收到主机下发的USb数据包,对接收到 的usb数据包进行解析后得到操作指令,指令判断模块502判断该操作指令是否是智能密 钥操作指令,若是智能密钥操作指令,则由智能密钥模块504根据该智能密钥操作执行相 应的智能密钥操作,否则将解析后的数据包转给数据存储模块503,由数据存储模块503执 行数据读/写操作。复合型usb设备500还可以进行加密存储,usb接口模块501接收到主机下发的数 据读取指令后,数据存储模块503执行该数据读取指令读取数据的密文,智能密钥模块504 中的数据加/解密单元504C对读取出的密文进行解密操作,然后通过usb接口模块501将 数据的明文发送给主机。本发明实施例提供了一种复合型usb设备,该复合型usb设备既具有U盘的存储 功能又具有usbkey的智能密钥功能,该复合型usb设备还使用现有的接口技术,对现有主 机系统不需要进行修改,有着良好的便携性和易用性。实施例六在本发明实施例六中,提供了一种复合型usb设备,该复合型usb设备既具有U盘 的存储功能又具有usbkey的智能密钥功能。如图6所示,该复合型usb设备中包括usb_ Hub芯片、usbkey芯片、U盘芯片、NAND-Flash芯片。其中,usb-Hub芯片分别与Host (主机)、usbkey芯片、U盘芯片连接;usbkey芯片用于实现数据的加密、解密、数字签名等智能密钥功能,通过usb-Hub 芯片与主机进行USb协议的数据通信;U盘芯片还与NAND-Flash芯片相连接,U盘芯片用于控制大容量闪存芯片 NAND-Flash芯片执行写数据、读数据等操作。具体地,usbkey芯片中包括第一 usb接口单元、数据运算单元、密钥存储单元,U 盘芯片中包括第二 USb接口单元、数据读写单元、第一总线接口单元,NAND-Flash芯片包括 Flash存储单元和第二总线接口单元;第一 usb接口单元,用于按照usb协议对数据进行解析或封装,并以usb协议通过 usb-Hub芯片与主机进行数据通信;数据运算单元,用于根据接收到的操作指令,从密钥存储单元中读取密钥,执行操 作指令中所指示的数据加/解密、数字签名等智能密钥功能;密钥存储单元,用于存储用户的密钥;第二 usb接口单元,用于按照usb协议对数据进行解析或封装,并以usb协议通过usb-Hub芯片与主机进行数据通信;数据读写单元,用于根据接收到的读/写数据的操作指令,向NAND-Flash芯片中的Flash存储单元发送指令,执行读/写数据的操作;第一总线接口单元,用于与NAND-Flash芯片中第二总线接口单元连接,按照总线 接口协议的规范与NAND-Flash芯片进行通信;Flash存储单元,用于存储数据,并执行U盘芯片发送的读/写数据指令,向U盘芯 片返回读取的数据或指令的执行结果;第二总线接口单元,用于与U盘芯片中的第一总线接口单元连接,按照总线接口 协议的规范与U盘芯片进行通信。实施例七在本发明实施例七中,提供了一种复合型usb设备,该复合型usb设备既具有U盘 的存储功能又具有usbkey的智能密钥功能。如图7所示,该复合型usb设备中包括U盘 控制芯片、usbkey芯片、NAND-Flash芯片。其中,U盘控制芯片分别与Host (主机)、usbkey芯片、NAND-Flash芯片连接;本实施例中的U盘控制芯片中集成了本发明实施例六中所述的U盘芯片的功能和 usb-Hub芯片的功能,usbkey芯片通过U盘控制芯片与主机进行usb协议的数据通信;usbkey芯片用于实现数据的加密、解密、数字签名等智能密钥功能,U盘控制芯片还与NAND-Flash芯片相连接,控制NAND-Flash芯片执行写数据、读 数据等操作。具体地,U盘控制芯片中包括usb-Hub单元、第一 usb接口单元、数据读写单元、 第一总线接口单元,usbkey芯片中包括第二 usb接口单元、数据运算单元、密钥存储单元, NAND-Flash芯片包括Flash存储单元和第二总线接口单元;第一 usb接口单元,用于按照usb协议对数据进行解析或封装,并以usb协议与主 机进行数据通信;数据读写单元,用于根据接收到的读/写数据的操作指令,向NAND-Flash芯片中 的Flash存储单元发送指令,执行读/写数据的操作;第一总线接口单元,用于与NAND-Flash芯片中第二总线接口单元连接,按照总线 接口协议的规范与NAND-Flash芯片进行通信;第二 usb接口单元,用于按照usb协议对数据进行解析或封装,并以usb协议通过 U盘控制芯片中的usb-Hub单元与主机进行数据通信;数据运算单元,用于根据接收到的操作指令,从密钥存储单元中读取密钥,执行操 作指令中所指示的数据加/解密、数字签名等智能密钥功能;密钥存储单元,用于存储用户的密钥;Flash存储单元,用于存储数据,并执行U盘控制芯片发送的读/写数据指令,向U 盘控制芯片返回读取的数据或指令的执行结果;第二总线接口单元,用于与U盘控制芯片中的第一总线接口单元连接,按照总线 接口协议的规范与U盘控制芯片进行通信。实施例八在本发明实施例八中,提供了一种复合型usb设备电路图,该复合型usb设备既具有U盘的存储功能又具有usbkey的智能密钥功能。如图8所示,该复合型USb设备中包括 U盘控制芯片、usbkey芯片、NAND-Flash芯片。其中,U盘控制芯片分别与Host (主机)、usbkey芯片、NAND-Flash芯片连接;本实施例八提供的U盘控制芯片中集成了实施例六中的U盘芯片的功能,同时还集成了数据封装和解析的功能,与主机进行usb协议的数据通信,与usbkey芯片进行7816 或spi协议的数据通信;U盘控制芯片还用于控制与之相连的NAND-Flash芯片执行写数据、读数据等操 作;usbkey芯片用于实现数据的加密、解密、数字签名等智能密钥功能。具体地,U盘控制芯片中包括usb接口单元、第一接口单元、数据读写单元、第一总 线接口单元,usbkey芯片中包括第二接口单元、数据运算单元、密钥存储单元,NAND-Flash 芯片包括Flash存储单元和第二总线接口单元;usb接口单元,用于按照usb协议对主机下发的数据进行解析并发送给第一接口 单元或数据读写单元,或者将第一接口单元或数据读写单元返回的数据按照USb协议封装 后发送给主机;第一接口单元,用于提供7816接口或SPI接口(Serial Peripherallnterface,串 行外围接口),使U盘控制芯片与usbkey芯片进行数据交互;数据读写单元,用于根据接收到的读/写数据的操作指令,向NAND-Flash芯片中 的Flash存储单元发送指令,执行读/写数据的操作;第一总线接口单元,用于与NAND-Flash芯片中第二总线接口单元连接,按照总线 接口协议的规范与NAND-Flash芯片进行通信;第二 usb接口单元,用于按照usb协议对数据进行解析或封装,并以usb协议通过 U盘控制芯片中的usb-Hub单元与主机进行数据通信;数据运算单元,用于根据接收到的操作指令,从密钥存储单元中读取密钥,执行操 作指令中所指示的数据加/解密、数字签名等智能密钥功能;密钥存储单元,用于存储用户的密钥;Flash存储单元,用于存储数据,并执行U盘控制芯片发送的读/写数据指令,向U 盘控制芯片返回读取的数据或指令的执行结果;第二总线接口单元,用于与U盘控制芯片中的第一总线接口单元连接,按照总线 接口协议的规范与U盘控制芯片进行通信。实施例九在本发明实施例九中,提供了一种复合型usb设备,该复合型usb设备既具有U盘 的存储功能又具有usbkey的智能密钥功能。如图9所示,该复合型usb设备中包括USbkey 芯片、SPI-Flash芯片。其中,usbkey芯片分别与Host (主机)、SPI-Flash芯片连接;usbkey芯片中集成了 Flash读写控制功能和智能密钥功能,通过SPI接口(Serial Peripheral Interface,串行外围接口 )控制SPI-Flash芯片执行写数据、读数据等操作。SPI-Flash芯片是一种使用SPI接口的闪存芯片,其容量一般小于NAND-Flash芯 片。
具体地,usbkey芯片中包括usb接口单元、数据运算单元、密钥存储单元、数据读 写单元、第一 SPI接口单元,SPI-Flash芯片中包括Flash存储单元和第二 SPI接口单元;
usb接口单元,用于按照usb协议对主机下发的数据进行解析并发送给第一 SPI接 口单元或数据读写单元,或者将第二 SPI接口单元、数据读写单元返回的数据按照usb协议 封装后发送给主机;数据运算单元,用于根据接收到的操作指令,从密钥存储单元中读取密钥,执行操 作指令中所指示的数据加/解密、数字签名等智能密钥功能;密钥存储单元,用于存储用户的密钥;数据读写单元,用于根据接收到的读/写数据的操作指令,向SPI-Flash芯片中的 Flash存储单元发送指令,执行读/写数据的操作;第一SPI 接口单元,用于提供 SPI 接口(Serial Peripheral Interface,串行外围 接口),按照SPI接口规范对数据进行封装或解析,使usbkey芯片与SPI-Flash芯片进行数 据交互;Flash存储单元,用于存储数据,并执行usbkey芯片的数据读写单元发送的读/写 数据指令,向usbkey芯片返回读取的数据或指令的执行结果;第二SPI 接口单元,用于提供 SPI 接口(Serial Peripheral Interface,串行外围 接口),按照SPI接口规范对数据进行封装或解析,使SPI-Flash芯片与usbkey芯片进行数 据交互。实施例十在本发明实施例十中,提供了一种复合型usb设备,该复合型usb设备既具有U 盘的存储功能又具有usbkey的智能密钥功能。如图10所示,该复合型usb设备中包括 usbkey 芯片、NAND-Flash 芯片。其中,usbkey芯片分别与Host (主机)、NAND-Flash芯片连接;usbkey芯片中集成了 U盘芯片的功能,通过总线接口控制NAND-Flash芯片中的 Flash存储单元执行写数据、读数据等操作。具体地,usbkey芯片中包括usb接口单元、数据运算单元、密钥存储单元、数据读 写单元、第一总线接口单元,NAND-Flash芯片中包括Flash存储单元和第二总线接口单元;usb接口单元,用于按照usb协议对主机下发的数据进行解析并发送给第一总线 接口单元或数据读写单元,或者将第二总线接口单元、数据读写单元返回的数据按照USb 协议封装后发送给主机;数据运算单元,用于根据接收到的操作指令,从密钥存储单元中读取密钥,执行操 作指令中所指示的数据加/解密、数字签名等智能密钥功能;密钥存储单元,用于存储用户的密钥;数据读写单元,用于根据接收到的读/写数据的操作指令,向NAND-Flash芯片中 的Flash存储单元发送指令,执行读/写数据的操作;第一总线接口单元,用于与NAND-Flash芯片中第二总线接口单元连接,按照总线 接口协议的规范与NAND-Flash芯片进行数据交互; Flash存储单元,用于存储数据,并执行usbkey芯片的数据读写单元发送的读/写 数据指令,向usbkey芯片返回读取的数据或指令的执行结果;
第二总线接口单元,用于与usbkey芯片中的第一总线接口单元连接,按照总线接 口协议的规范与usbkey芯片进行数据交互。本发明的有益效果从以上技术方案可以看出,本发明所提供的复合型usb设备在 连接到主机后可以表现为多种类型的设备,同时具有海量存储设备的功能和智能密钥设备 的功能,所占有的优势是
1.使用方便,用户只需要一个设备就可以满足存储和智能密钥相关功能;2.解决智能密钥设备存储空间小的问题,智能密钥设备一般因为安全和成本的原 因,存储空间往往比普通存储设备小得多;3.解决存储设备的安全性问题,存储设备存储的数据往往容易获取,通过一定的 算法和API实现,可以利用智能密钥设备将存储设备进行加密,以保护数据安全;4.完全兼容现在有各种操作系统提供的接口。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和 原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
一种复合型usb设备的实现方法,其特征在于,包括复合型usb设备与主机建立连接,声明其自身的设备类型;所述复合型usb设备接收所述主机下发的操作指令,并判断所述操作指令是否是智能密钥操作指令;如果是,则执行所述操作指令中指示的智能密钥操作;否则,则执行数据读/写操作。
2.如权利要求1所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设备 与主机建立连接,声明其自身的设备类型的方法具体还包括所述复合型usb设备声明其自身为预定个数的大容量存储设备。
3.如权利要求2所述的复合型usb设备的实现方法,其特征在于,所述大容量存储设备 包括光盘、磁盘。
4.如权利要求2所述的复合型usb设备的实现方法,其特征在于,所述主机下发的操作 指令为按照SCSI协议规范封装的命令。
5.如权利要求4所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设备 判断所述操作指令是否是智能密钥操作指令的方法具体为判断所述操作指令中指定域的值是否是约定值,如果是约定值,则所述操作指令是智 能密钥操作指令,否则是数据读/写操作指令;或者判断所述操作指令中特殊域中指定位的值是否是约定值,如果是约定值,则所述操作 指令是智能密钥操作指令,否则是数据读/写操作指令;或者判断所述操作指令是否是扩展SCSI指令,如果是扩展SCSI指令,则所述操作指令是智 能密钥操作指令,否则是数据读/写操作指令。
6.如权利要求5所述的复合型usb设备的实现方法,其特征在于,所述操作指令中指定域具体为所述操作指令中的LUN域、预留域或LBA域; 所述操作指令中特殊域中指定位具体为LUN域中特殊的位、预留域中特殊的位或其 它域中的预留位。
7.如权利要求1所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设备 与主机建立连接,声明其自身的设备类型,所述方法还包括所述复合型usb设备声明为1个HID设备和预定个数的大容量存储设备。
8.如权利要求7所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设备 接收所述主机下发的操作指令,并判断所述操作指令是否是智能密钥操作指令的方法具体 为所述复合型usb设备解析并判断所述操作指令是否是按照SCSI协议规范封装的,如果 是,则所述操作指令为数据读/写操作指令,否则所述操作指令是智能密钥操作指令; 或者,所述复合型usb设备判断所述操作指令是否是通过usb控制传输管道传入的,如果是, 则所述操作指令为智能密钥操作指令,否则所述操作指令是数据读/写操作指令。
9.如权利要求1所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设备 与主机建立连接,声明其自身的设备类型,所述方法还包括所述复合型usb设备声明为1个CCID设备和预定个数的大容量存储设备。
10.如权利要求9所述的复合型usb设备的实现方法,其特征在于,所述复合型usb设 备接收所述主机下发的操作指令,并判断所述操作指令是否是智能密钥操作指令的方法具 体为所述复合型usb设备解析并判断所述操作指令是否是按照SCSI协议规范封装的,如果 是,则所述操作指令为数据读/写操作指令,否则所述操作指令是智能密钥操作指令。
11.如权利要求1所述的复合型usb设备的实现方法,其特征在于,所述智能密钥操作 具体包括数字签名、身份认证、数据加/解密。
12.一种复合型usb设备,其特征在于,所述设备包括接口模块,用于复合型usb设备与主机建立连接,进行基于usb协议的数据解析/封装 及通信;指令判断模块,用于判断所述接口模块解析usb数据包得到的操作指令是是标准的 SCSI数据读/写操作指令还是智能密钥操作指令;数据存储模块,用于存储数据,当所述操作指令是所述标准的SCSI数据读/写操作指 令时,执行所述操作指令进行数据读/写操作;智能密钥模块,用于当所述操作指令是所述智能密钥操作指令时执行相应的智能密钥 操作。
13.如权利要求12所述的复合型usb设备,其特征在于,所述智能密钥模块还包括 数字签名单元,用于根据所述智能密钥操作指令中的签名指令对传入的数据进行数据签名操作。
14.如权利要求12所述的复合型usb设备,其特征在于,所述智能密钥模块还包括 身份认证单元,用于根据所述智能密钥操作指令中的身份认证指令进行身份认证操作。
15.如权利要求12所述的复合型usb设备,其特征在于,所述智能密钥模块还包括 数据加/解密单元,用于根据所述智能密钥操作指令中的数据加/解密指令,对传入/传出的数据进行加/密操作;所述数据加/解密单元,还用于对传入/传出所述数据存储模块的数据进行加/解密 操作。
全文摘要
本发明公开了一种复合型usb设备及其实现方法,涉及信息安全领域,解决了在单一设备中集成大容量存储功能和智能密钥功能的问题。复合型usb设备与主机建立连接,声明其自身的设备类型;所述复合型usb设备接收所述主机下发的操作指令,并判断所述操作指令是否是智能密钥操作指令;如果是,则执行所述操作指令中指示的智能密钥操作;否则,则执行数据读/写操作。本发明在一个设备中集成了大容量存储和信息安全功能,使用方便,提高了数据安全性,增强了用户的体验。
文档编号G06F13/42GK101872334SQ201010191950
公开日2010年10月27日 申请日期2010年5月26日 优先权日2010年5月26日
发明者于华章, 陆舟 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1