动态令牌及其与主机通信的方法

文档序号:7655572阅读:120来源:国知局
专利名称:动态令牌及其与主机通信的方法
技术领域
本发明涉及信息安全领域,特别涉及一种动态令牌及其与主机通信的方法。
技术背景动态令牌是一种专用的用于生成动态密码的装置,通常以硬件形式存在,内置有密码生 成芯片,密码生成芯片运行专门的密码算法,根据当前时间或使用次数等因素生成当前动态 密码,常见的动态令牌上会带有按键,也叫确认键,用户按动该确认键即可生成当前动态密 码。目前,动态密码一般是6位数的数字组合,在动态令牌与主机的通信的过程中,用户通 常是以手动的方式将显示在动态令牌上的6位动态密码输入主机,同时还要输入一些标识用 户身份的用户个人信息,这样不可避免地会给用户带来一些不便,降低了动态令牌的易用性, 特别是当用户为了提高认证的安全性而将动态密码的形式变得复杂、信息量变得很大(比如, 动态密码是6位以上的数字)了后,这个问题就变得更为突出。发明内容为了省去用户手动将显示在动态令牌上的动态密码输入主机的麻烦,并为了在增加输入 信息量的同时提高动态令牌的易用性,本发明提供了一种动态令牌,该动态令牌包括声明模 块、输入模块、动态密码生成模块、存储模块、信息转换模块和通信模块;所述声明模块与所述通信模块相连,用于向主机声明所述动态令牌为USB键盘; 所述输入模块与所述动态密码生成模块相连,用于接收用户输入的触发信息并将所述触 发信息发送给所述动态密码生成模块;所述动态密码生成模块与所述信息转换模块、输入模块和存储模块相连,用于在接收到 所述触发信息后生成动态密码;所述存储模块与所述动态密码生成模块相连,用于存储生成动态密码的要素信息; 所述信息转换模块与所述通信模块和动态密码生成模块相连,用于根据USB键盘协议将 动态密码转换成USB键盘类按键信息,并传送所述按键信息给所述通信模块;
所述通信模块与所述声明模块、信息转换模块相连,用于连接所述动态令牌和所述主机, 并根据USB协议与所述主机进行通信。 所述输入模块具体为单个按钮。所述动态密码生成模块具体用于在接收到所述触发信息后,根据标识用户的用户个人信 息和生成动态密码的要素信息,生成动态密码;所述标识用户的用户个人信息预先存储在所 述存储模块中。所述动态密码生成模块具体用于在接收到所述触发信息后,根据生成动态密码的要素信 息生成动态密码。所述通信模块具体通过USB连接器连接所述主机,当所述存储模块存储的要素信息为计 次信息时,所述主机通过所述USB连接器向所述动态令牌提供电力。所述动态令牌还包括电力提供模块,所述电力提供模块用于当所述存储模块存储的要素 信息为计时信息时,向所述动态令牌提供其操作所需的电力。所述通信模块具体通过USB连接器连接所述主机,所述主机通过所述USB连接器向所 述动态令牌提供电力。所述信息转换模块具体包括信息转换单元、组包单元和存储单元;所述信息转换单元用于接收所述动态密码生成模块生成的动态密码,并根据USB键盘协 议将所述动态密码转换成USB键盘类按键信息,发送所述按键信息给所述组包单元;所述组包单元用于在接收到所述按键信息后按照USB键盘的组包格式将所述按键信息 组成信息包,并将所述信息包依次地发送给所述通信模块;所述存储单元用于存储所述信息包中按键信息的个数。所述信息包中按键信息的个数为1-6中的任意一个数值。本发明还提供了一种动态令牌与主机通信的方法,所述方法包括动态令牌与主机建立连接,所述动态令牌向所述主机声明自身为USB键盘;所述动态令牌等待接收触发信息;所述动态令牌接收到触发信息后,生成当前动态密码,并根据USB键盘协议将所述动态 密码转换成USB键盘类按键信息,将所述按键信息依次自动地连续传送给所述主机。所述生成当前动态密码的步骤具体为所述动态令牌根据标识用户的用户个人信息和生 成动态密码的要素信息生成当前动态密码,所述标识用户的用户个人信息和生成动态密码的 要素信息预先存储在所述动态令牌中。所述生成当前动态密码的步骤具体为所述动态令牌根据生成动态密码的要素信息生成 当前动态密码。所述生成动态密码的要素信息为计时信息或计次信息。所述根据USB键盘协议将所述动态密码转换成USB键盘类按键信息,将所述按键信息 依次自动地连续传送给所述主机的步骤具体为所述动态令牌根据USB键盘协议将所述动态 密码转换成USB键盘类按键信息,并按照USB键盘的组包格式将所述按键信息组成信息包, 将所述信息包依次自动地连续传送给所述主机。所述信息包中按键信息的个数为1-6中的任意一个数值。有益效果本发明提供了一种带单个按钮的动态令牌,单个按钮不仅能控制动态密码的 生成,而且还能控制将动态密码根据USB协议自动地传送给主机;本发明还将有线的动态令 牌模拟成了USB键盘,这样即使是在动态密码很复杂,包含的信息量很大的情况下也不会给 用户带来不便,在保证认证安全性的前提下还彻底解决了用户手动输入动态密码的麻烦。


图1是本发明提供的动态令牌的结构示意图;图2是本发明提供的动态令牌与主机通信的方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进 一步地详细描述。本发明提供的动态令牌的优选实施例如图1所示,本实施例提供的动态令牌IOO包括通信模块101、声明模块102、输入模块 103、动态密码生成模块104、信息转换模块105、存储模块106和电力提供模块107,声明模块102与通信模块101相连,用于通过通信模块101向主机声明动态令牌100为 USB键盘;输入模块103与动态密码生成模块104相连,用于接收用户输入的触发信息并将触发信 息发送给动态密码生成模块104,输入模块103具体为单个按钮;动态密码生成模块104与信息转换模块105、存储模块106和输入模块103相连,用于 在接收到输入模块103发送的触发信息后,根据标识用户的用户个人信息和生成动态密码的 要素信息生成动态密码,并将该动态密码发送给信息转换模块105,优选地,本实施例中生 成动态密码的要素信息为计时信息;
存储模块106与动态密码生成模块104相连,用于存储标识用户的用户个人信息和生成 动态密码的要素信息;信息转换模块105与通信模块101和动态密码生成模块104相连,用于根据USB键盘协 议将接收到的动态密码转换成主机能够识别的USB键盘类按键信息,并将按键信息传送给通 信模块101;通信模块101与声明模块102、信息转换模块105相连,用于连接动态令牌100和主机, 并根据USB协议与主机进行通信。电力提供模块107用于向动态令牌100中的时钟提供其操作所需的电力。 信息转换模块105具体包括信息转换单元、组包单元和存储单元,信息转换单元用于接收动态密码生成模块生成的动态密码,并根据USB键盘协议将动态 密码转换成USB键盘类按键信息,发送按键信息给组包单元;组包单元用于在接收到按键信息后按照USB键盘的组包格式将按键信息组成信息包,并 将信息包依次地发送给通信模块101,其中,USB键盘的组包格式为IModifierkeyl Reserved I Keycodel | Keycode2 | Keycode3 | Keycode4 | Keycode5 | Keycode6 |;存储单元用于存储组包单元组成的信息包中按键信息的个数,其中,信息包中按键信息 的个数为1-6中的任意一个数值。信息转换单元转换按键的方式具体为将按键l、 2、 3、 4、 5、 6、 7、 8、 9、 0相应地转 换为按键信息0xlE、 0xlF、 0x20、 0x21、 0x22、 0x23、 0x24、 0x25、 0x26、 0x27。另外,根 据USB键盘协议,每个按键对应的抬键信息为0x00。在通信模块101根据USB协议向主机传送信息包的过程中,通信模块101首先向主机发 送按键信息的信息包,其次向主机发送抬键信息的信息包,主机只有收到按键信息和抬键信 息后,才能识别到一次完整的按键过程,并相应地显示该按键信息。优选地,在本实施例中,存储在存储单元中的信息包中的按键信息的个数为1,依此, 信息转换模块105发送给通信模块101的按键信息包的形式为(00, 00, 一个按键对应的按 键信息,00, 00, 00, 00, 00),抬键信息包的形式为(00, 00, 0x00, 00, 00, 00, 00, 00), 通信模块101接收到按键信息包和抬键信息包后将其发送给主机,这样,通信模块101连续地将按键信息的信息包发送给主机,直到发送完毕,由于传送速度是非常快地,所以用户实 际看到的是完整的按键信息。实际应用中,存储在存储单元中的信息包中的按键信息的个数还可以为2或3或4或5 或6,信息转换模块105仍然是首先以包的形式向通信模块101发送按键信息,其次以包的
形式向通信模块101发送抬键信息,然后通信模块101再将收到的按键信息包和抬键信息包发送给主机,依此传送按键信息,直到传送完毕。如果存储在存储单元中的信息包中的按键信息的个数为6,则信息转换模块105首先将按键信息组成信息包,该信息包的形式为(00, 00,第一个按键对应的按键信息,第二个按键对应的按键信息,第三个按键对应的按键信息, 第四个按键对应的按键信息,第五个按键对应的按键信息,第六个按键对应的按键信息),将 该信息包发送给通信模块101,其次将抬键信息以包的形式(00, 00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00)发送给通信模块101,然后通信模块101再将按键信息包和抬键信息包 发送给主机,这样,通信模块101连续地将按键信息的信息包发送给主机,直到发送完毕, 由于传送速度是非常快地,所以用户实际看到的是完整的按键信息,当存储在存储单元中的 信息包中的按键信息的个数为2或3或4或5时,可以依此类推其组包内容。优选地,我们可以通过USB连接器连接动态令牌100和主机,而且主机通过USB连接 器向动态令牌100提供电力。实际应用中,我们还可以采用计次信息替换计时信息的方式来实现本发明,而且当生成 动态密码的要素信息为计次信息时,动态令牌100可以不包括电力提供模块107,而只通过 USB连接器来提供电力。实际应用中,我们也可以手动的方式将标识用户的用户个人信息输入主机来实现本发明, 而不需要将其预先存储在存储模块106中,此时,动态密码生成模块104根据生成动态密码 的要素信息(计时信息或计次信息)来生成动态密码。本实施例提供的动态令牌100的工作原理为用户输入触发信息后,输入模块103将触 发信息传送给动态密码生成模块104;动态密码生成模块104接收到触发信息后生成当前动 态密码并将其传送给信息转换模块105;信息转换模块105根据USB键盘协议将动态密码转 换成主机能够识别的USB键盘类按键信息,并将该按键信息按照USB键盘的组包格式组成 信息包,然后向通信模块IOI发送该按键信息包和抬键信息包;通信模块101将收到的按键 信息包和抬键信息包自动连续地传送给主机,直到全部按键信息传送完毕。基于上面实施例提供的动态令牌,本发明实施例还提供了一种动态令牌与主机通信的方 法,具体包括以下步骤,如图2所示步骤201:通过USB连接器建立动态令牌和主机的连接;步骤202:声明模块向主机声明其所连接的动态令牌为USB键盘,并等待接收触发信息; 步骤203:用户通过输入模块输入触发信息,
优选地,输入模块具体为单个按钮;步骤204:动态密码生成模块接收到触发信息后生成当前动态密码838007122509,并将 该动态密码传送给信息转换模块,动态密码生成模块根据存储在动态令牌中的生成动态密码的要素信息生成动态密码,生 成动态密码的要素信息为计时信息或计次信息,优选地,本实施例以计次信息1010为例来说 明;步骤205:信息转换模块接收动态密码838007122509,根据USB键盘协议将该动态密码 转换成USB键盘类按键信息,并将该按键信息按照USB键盘的组包格式组成信息包,然后 将该信息包依次连续地传送给通信模块;信息转换模块转换按键的具体的方式为将按键l、 2、 3、 4、 5、 6、 7、 8、 9、 0相应地 转换为按键信息OxlE、 OxIF、 0x20、 0x21、 0x22、 0x23、 0x24、 0x25、 0x26、 0x27,另外, 根据USB键盘协议,每一个按键信息对应的抬键信息为0x00,针对本实施例,信息转换模 块将动态密码838007122509根据USB键盘协议具体转换为按键信息0x25, 0x20, 0x25, 0x27, 0x27, 0x24, OxlE, OxlF, OxlF, 0x22, 0x27, 0x26;步骤206:通信模块接收到信息转换模块传送来的按键信息的信息包后,根据USB协议 自动地将该按键信息的信息包传送给主机。在信息转换模块向通信模块传送按键信息的过程中,信息转换模块首先以包的形式向通 信模块发送按键信息,其次以包的形式向通信模块发送抬键信息,然后通信模块再将按键信 息和抬键信息以包的形式发送给主机,主机只有收到按键信息和抬键信息后,才能识别到一 次完整的按键过程,并相应地显示该按键信息,其中,USB键盘的组包格式为IModifierkeyl Reserved | Keycodel | Keycode2 | Keycode3 | Keycode4 | Keycode5 | Keycode6 |。在本实施例中,优选地,我们将预先固化在动态令牌中的信息包中的按键信息的个数设置为1,依此,信息转换模块向通信模块传送按键信息的具体过程为信息转换模块首先将按键8的按键信息(00, 00, 0x25, 00, 00, 00, 00, 00 )和抬键信息(00, 00, 0x00, 00, 00, 00, 00, 00)分别以包的形式传送给通信模块,通信模块再将按键信息和抬键信息发送 给主机,主机识别到按键8,然后再将按键3的按键信息(00, 00, 0x20, 00, 00, 00, 00, 00 )和抬键信息(00, 00, 0x00, 00, 00, 00, 00, 00)分别以包的形式传送给通信模块, 通信模块将按键信息和抬键信息发送给主机,主机识别到按键3,这样,通信模块依次连续 地将后续的按键8007122509发送给主机,主机最终识别到完成的按键信息838007122509, 由于传送速度非常快,所以用户看到的是完整的按键信息838007122509。 另外,动态密码生成模块还可以根据标识用户的用户个人信息和生成动态密码的要素信 息生成当前动态密码,标识用户的用户个人信息预先存储在动态令牌中,采用这种方案实现 本发明的方法与本实施例基本相同,只是步骤204和205不同,步骤204和205变为步骤204':动态密码生成模块接收到触发信息后生成当前动态密码8380071225090101, 并将该动态密码传送给信息转换模块;动态密码生成模块根据存储在动态令牌中的生成动态密码的要素信息和标识用户的用户 个人信息生成动态密码,生成动态密码的要素信息为计时信息或计次信息,优选地,本实施 例以计次信息1010,用户个人信息为机器码OIOI为例来说明;步骤205':信息转换模块接收动态密码8380071225090101,根据USB键盘协议将该动 态密码转换成USB键盘类按键信息,并将该按键信息按照USB键盘的组包格式组成信息包, 然后将该信息包依次连续地传送给通信模块;实际应用中,预先固化在动态令牌中的信息包中的按键信息的个数可以为1-6中的任意 一个数值,根据需要,我们将本实施例预先固化在动态令牌中的信息包中的按键信息的个数 1替换为2、 3、 4、 5或6也可以实现本发明。当信息包中的按键信息的个数为2、 3、 4、 5 或6时,信息转换模块仍然是将按键信息和抬键信息分别以包的形式传送给通信模块,通信 模块再将接收到的按键信息包和抬键信息包发送给主机。如果信息包中的按键信息的个数为 6,那么信息转换模块将838007的按键信息(00, 00, 0x25, 0x20, 0x25, 0x27, 0x27, 0x24 ) 和838007的抬键信息(00, 00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00)分别以包的形式传 送给通信模块,通信模块再将其传送给主机,依此方式连续传送,如果按键信息不足6位, 则对应的位补00,比如,在本实施例中,838007和122509传送给主机后,只剩按键0101, 不足6位,此时的传送过程如下信息转换模块将0101的按键信息(00, 00, 0x27, OxlE, 0x27, OxlE, 00, 00 )和0101的抬键信息(00, 00, 0x00, 0x00, 0x00, 0x00, 00, 00) 分别以包的形式传送给通信模块,通信模块将按键信息和抬键信息发送给主机。当固化在动 态令牌中的信息包中的按键信息的个数为2或3或4或5时,可依此类推。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之 内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种动态令牌,其特征在于,所述动态令牌包括声明模块、输入模块、动态密码生成模块、存储模块、信息转换模块和通信模块;所述声明模块与所述通信模块相连,用于向主机声明所述动态令牌为USB键盘;所述输入模块与所述动态密码生成模块相连,用于接收用户输入的触发信息并将所述触发信息发送给所述动态密码生成模块;所述动态密码生成模块与所述信息转换模块、输入模块和存储模块相连,用于在接收到所述触发信息后生成动态密码;所述存储模块与所述动态密码生成模块相连,用于存储生成动态密码的要素信息;所述信息转换模块与所述通信模块和动态密码生成模块相连,用于根据USB键盘协议将动态密码转换成USB键盘类按键信息,并传送所述按键信息给所述通信模块;所述通信模块与所述声明模块、信息转换模块相连,用于连接所述动态令牌和所述主机,并根据USB协议与所述主机进行通信。
2. 如权利要求1所述的动态令牌,其特征在于,所述输入模块具体为单个按钮。
3. 如权利要求1所述的动态令牌,其特征在于,所述动态密码生成模块具体用于在接收 到所述触发信息后,根据标识用户的用户个人信息和生成动态密码的要素信息,生成动态密 码;所述标识用户的用户个人信息预先存储在所述存储模块中。
4. 如权利要求1所述的动态令牌,其特征在于,所述动态密码生成模块具体用于在接收 到所述触发信息后,根据生成动态密码的要素信息生成动态密码。
5. 如权利要求1所述的动态令牌,其特征在于,所述通信模块具体通过USB连接器连 接所述主机,当所述存储模块存储的要素信息为计次信息时,所述主机通过所述USB连接器 向所述动态令牌提供电力。
6. 如权利要求1所述的动态令牌,其特征在于,所述动态令牌还包括电力提供模块,所 述电力提供模块用于当所述存储模块存储的要素信息为计时信息时,向所述动态令脾提供其 操作所需的电力。
7. 如权利要求6所述的动态令牌,其特征在于,所述通信模块具体通过USB连接器连 接所述主机,所述主机通过所述USB连接器向所述动态令牌提供电力。
8. 如权利要求1所述的动态令牌,其特征在于,所述信息转换模块具体包括信息转换单 元、组包单元和存储单元;所述信息转换单元用于接收所述动态密码生成模块生成的动态密码,并根据USB键盘协 议将所述动态密码转换成USB键盘类按键信息,发送所述按键信息给所述组包单元;所述组包单元用于在接收到所述按键信息后按照USB键盘的组包格式将所述按键信息 组成信息包,并将所述信息包依次地发送给所述通信模块;所述存储单元用于存储所述信息包中按键信息的个数。
9. 如权利要求8所述的动态令牌,其特征在于,所述信息包中按键信息的个数为1-6中 的任意一个数值。
10. —种动态令牌与主机通信的方法,其特征在于,所述方法包括 动态令牌与主机建立连接,所述动态令牌向所述主机声明自身为USB键盘; 所述动态令牌等待接收触发信息;所述动态令牌接收到触发信息后,生成当前动态密码,并根据USB键盘协议将所述动态 密码转换成USB键盘类按键信息,将所述按键信息依次自动地连续传送给所述主机。
11. 如权利要求10所述的动态令牌与主机通信的方法,其特征在于,所述生成当前动态 密码的步骤具体为所述动态令牌根据标识用户的用户个人信息和生成动态密码的要素信息 生成当前动态密码,所述标识用户的用户个人信息和生成动态密码的要素信息预先存储在所 述动态令牌中。
12. 如权利要求10所述的动态令牌与主机通信的方法,其特征在于,所述生成当前动态 密码的步骤具体为所述动态令牌根据生成动态密码的要素信息生成当前动态密码。
13. 如权利要求11或12所述的动态令牌与主机通信的方法,其特征在于,所述生成动 态密码的要素信息为计时信息或计次信息。
14. 如权利要求10所述的动态令牌与主机通信的方法,其特征在于,所述根据USB键 盘协议将所述动态密码转换成USB键盘类按键信息,将所述按键信息依次自动地连续传送给 所述主机的步骤具体为所述动态令牌根据USB键盘协议将所述动态密码转换成USB键盘 类按键信息,并按照USB键盘的组包格式将所述按键信息组成信息包,将所述信息包依次自 动地连续传送给所述主机。
15. 如权利要求14所述的动态令牌与主机通信的方法,其特征在于,所述信息包中按键 信息的个数为1-6中的任意一个数值。
全文摘要
本发明公开了一种动态令牌及其与主机通信的方法,属于信息安全领域。所述动态令牌包括声明模块、输入模块、动态密码生成模块、存储模块、信息转换模块和通信模块。本发明还提供了一种动态令牌与主机通信的方法,所述方法包括动态令牌与主机建立连接,动态令牌向主机声明自身为USB键盘;动态令牌等待接收触发信息;动态令牌接收到触发信息后,生成当前动态密码,并根据USB键盘协议将动态密码转换成USB键盘类按键信息,然后将按键信息自动连续地传送给主机。本发明在保证认证安全性的前提下,解决了用户手动输入动态密码的麻烦。
文档编号H04L12/407GK101102182SQ20071011977
公开日2008年1月9日 申请日期2007年7月31日 优先权日2007年7月31日
发明者于华章, 舟 陆 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1