一种提高智能密钥设备易用性的方法和智能密钥设备的制作方法

文档序号:6597597阅读:128来源:国知局
专利名称:一种提高智能密钥设备易用性的方法和智能密钥设备的制作方法
技术领域
本发明涉及信息安全领域,特别涉及一种提高智能密钥设备易用性的方法和智能
密钥设备。
背景技术
随着电子技术的发展,人们开始使用电子钱包、网上银行等电子支付业务,为人们 的生活带来极大的便利。 一般人们在使用这种服务时,都会使用智能密钥设备(USB Key)。
智能密钥设备(USB Key)是一种具有USB接口的硬件设备,包括中央处理器 (Central Processing Unit, CPU)和存储器。存储器用以存储用户的私钥、数字证书及PIN 码;CPU对用户输入的PIN码及存储的PIN码进行验证,且在验证通过后利用内置的密码算 法对用户输入的签名进行计算获得签名数据,利用存储的私钥对签名数据进行加密,输出 加密后的签名数据至相应的电子支付业务服务器,以便对签名用户的身份进行认证。在电 子支付业务的服务器对签名用户的身份认证通过后,该服务器可对存储于存储器内的数字 证书进行使用。USB Key和PIN码构成了可以使用用户的数字证书的两个必要条件。如果 PIN码被泄漏,只要保存好USB Key就可以保护用户的数字证书不被盗用;如果USB Key丢 失,获得者由于不知道与硬件的PIN码,也无法盗用用户存在USB Key中的证书。
但是,USB Key和PIN码却不能抵御黑客或者木马程序的攻击。例如,用户在使用 USB Key时,黑客或木马程序可截获用户输入的PIN码,当黑客或木马程序判断出USB Key 插在电脑上时,就可以在用户不知情的状况下,用截获的PIN码调用存储于USB Key中的用 户的数字证书进行电子支付业务。 目前为了解决上述问题,通常在用户使用USB Key中的用户数字证书时强制用户 进行签名确认,以保证USB Key使用者的合法性。具体地,在调用USB Key中的用户数字证 书之前,用户除了需要输入与该USB Key对应的PIN码之外,还需通过木马程序无法伪造的 操作进行用户签名确认。这种通过木马程序无法伪造的操作进行的用户签名确认可以有 多种实现方式,包括手工按USB Key上的用于用户签名确认的按钮;通过USB Key具有的 声音、指纹等生物特征验证器对用户的输入的声音、指纹等生物特征进行验证,以证明USB Key使用者的合法性。 以上方法能够解决黑客或木马程序在窃取PIN码后暗中进行电子支付的问题,但 若频繁调用USB Key中的数字证书,且每次调用都需要用户进行签名确认,虽然提高了 USB Key的安全性,但大大降低了 USB Key的易用性。

发明内容
有鉴于此,本发明的目的在于提供一种提高智能密钥设备易用性的方法,该方法 能够在保证安全性的前提下提高智能密钥设备的易用性。 本发明的另一 目的在于提供一种智能密钥设备,该设备能够在保证安全性的前提 下提高设备的易用性。
5
为达到上述目的,本发明的技术方案具体是这样实现的
—种提高智能密钥设备易用性的方法,该方法包括
A、设置免签名确认的有效期; B、在完成第一次签名确认后进行第一次用户签名; C、判断免签名确认是否在其有效期内,如果是,确定并非第一次用户签名,则进行
第N次用户签名,否则清除免签名确认并结束第N次用户签名; 所述N为大于1的整数。
较佳地,所述步骤C之后进一步包括 D、縮短免签名确认的有效期,利用縮短后的免签名确认的有效期对步骤A所述的 免签名确认的有效期进行更新。 上述方法中,所述步骤A包括设置免签名确认的有效期并生成免签名确认标识; 存储免签名确认的有效期和免签名确认标识; 步骤B所述完成第一次签名确认包括判断第一次签名确认是否正确,如果是,生 成第一次签名确认标识并存储,否则结束第一次用户签名; 步骤C所述确定并非第一次用户签名包括判断是否存储有第一次签名确认标 识,如果是则确定为第一次用户签名,否则确定并非第一次用户签名。
步骤C所述清除免签名确认为清除存储的免签名确认标识。 上述方法中,步骤A所述免签名确认的有效期为免签名确认可用时间,步骤C所述 判断免签名确认是否在其有效期内为判断免签名确认的时刻是否在由第一次签名确认的 时刻和免签名确认可用时间计算获得的免签名确认的期限内。 上述方法中,步骤A所述免签名确认的有效期为免签名确认可用次数,步骤C所述 判断免签名确认是否在其有效期内为判断免签名确认可用次数是否大于0,步骤D所述縮 短免签名确认的有效期为免签名确认可用次数减1 ; 或者步骤A所述免签名确认的有效期为免签名确认可用时间和时间周期,步骤C
所述判断免签名确认是否在其有效期内为判断免签名确认可用时间是否大于O,步骤D所
述縮短免签名确认的有效期为免签名确认可用时间縮短1个时间周期; 或者步骤A所述免签名确认的有效期为免签名确认可用次数、免签名确认可用时
间和时间周期,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用次数
是否大于O和免签名确认可用时间是否大于O,步骤D所述縮短免签名确认的有效期为免签
名确认可用次数减1和免签名确认可用时间縮短1个时间周期 或者步骤A所述免签名确认的有效期为免签名确认可用次数和免签名确认可用 时间,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用次数是否大于 O且免签名确认的时刻是否在免签名确认的期限内,步骤D所述縮短免签名确认的有效期 为免签名确认可用次数减1 ;所述免签名确认的期限为第一次签名确认的时刻加上免签名 确认可用时间获得的免签名确认有效的最终时刻。 较佳地,所述步骤B之后进一步包括当智能密钥设备掉电时,智能密钥设备清除 存储的第一次用户确认标识及免签名确认标识,并结束第N次用户签名。
—种智能密钥设备,该设备包括 中央处理器CPU,根据设置的免签名确认的有效期生成免签名确认标识,输出免签
6名确认标识及免签名确认的有效期至存储器存储;验证第一次签名确认正确,生成第一次 签名确认标识并输出至存储器存储,利用从存储器存储的私钥进行第一次用户签名;判断 免签名确认是否在其有效期内,如果是则进行第N次用户签名,縮短免签名确认的有效期, 否则清除存储器存储的免签名确认标识和第一次签名确认标识,结束第N次用户签名;
存储器,存储私钥、数字证书、与该设备对应的PIN码、CPU输出的免签名确认标 识、免签名确认的有效期及第一次签名确认标识,且在掉电后清除免签名确认标识和第一 次签名确认标识; 所述N为大于1的正整数。
上述设备中,所述存储器包括 第一存储器,存储私钥、数字证书、签名确认数据及免签名确认的有效期; 第二存储器,存储CPU输出的免签名确认标识和第一次签名确认标识,且在掉电
后清除免签名确认标识和第一次签名确认标识。 上述设备中,所述CPU包括 验证模块,根据设置的免签名确认的有效期生成免签名确认标识并输出至第二存 储器存储,将设置的免签名确认的有效期输出至有效期模块及第一存储器;根据第一存储 器存储的签名确认数据验证第一次签名确认正确后,生成第一次签名确认标识并输出至第 二存储器存储;输出第一次用户签名指令至签名模块及有效期模块;输出有效期查询指令 至有效期模块,在获得有效期模块输出的免签名确认有效的指令后,验证第二存储器中是 否已存储有第一次签名确认标识,如果是输出第N次用户签名指令至签名模块,否则清除
第二存储器存储的免签名确认的有效期、免签名确认标识和第一次签名确认标识; 有效期模块,存储验证模块输出的免签名确认的有效期,并根据验证模块输出的
第一次用户签名指令的时刻及免签名确认的有效期计算获得免签名确认的期限;根据验证
模块的有效期查询指令判断免签名确认是否在其有效期内,如果是则縮短免签名确认的有
效期,利用縮短后的免签名确认的有效期对存储的验证模块输出的免签名确认的有效期进
行更新,输出免签名确认有效的指令至验证模块,否则输出免签名确认无效的指令至验证
模块;或者根据验证模块的有效期查询指令判断免签名确认的时刻是否在免签名确认的期
限内,如果是则输出免签名确认有效的指令至验证模块,否则输出免签名确认无效的指令
至验证模块; 签名模块,根据验证模块的第一次用户签名指令对用户输入的第一次签名结果进 行算法计算获得第一签名数据,利用第一存储器存储的私钥对第一次签名数据加密后输 出;或者根据验证模块的第N次用户签名指令对用户输入的第N次签名结果进行算法计算 获得第N次签名数据,利用第一存储器存储的私钥对第N次签名数据加密后输出。
上述设备中,所述有效期模块包括 有效期存储单元,存储验证模块输出的免签名确认的有效期,利用第一判读单元 输出的免签名确认的有效期更新存储的验证模块输出的免签名确认的有效期,或者存储根 据验证模块输出的第一次用户签名指令的时刻和免签名确认的有效期计算获得的免签名 确认的期限; 第一判断单元,获得验证模块输出的有效期查询指令后,从有效期存储单元读取 免签名确认的有效期,判断免签名确认的有效期是否大于O,如果是,则縮短免签名确认的有效期并输出至有效期存储单元,输出免签名确认有效的指令至验证模块,否则,输出免签 名无效的指令至验证模块;或者在获得验证模块输出的有效期查询指令后,从有效期存储 单元读取免签名确认的期限,判断验证模块输出有效期查询指令的时刻是否在免签名确认 的期限内,如果是,输出免签名确认有效的指令至验证模块,否则输出免签名无效的指令至 验证模块。 上述设备中,所述验证模块包括 控制单元,判断输入的数据为免签名确认的有效期后,输出免签名确认的有效期
至有效期存储单元及第一存储器,输出免签名确认指令至标识产生单元; 所述控制单元接收到外部输入的用户签名指令,判断第二存储器中未保存第一次
签名确认标识,则确定为第一次用户签名,根据第一存储器存储的签名确认数据判断外部
输入的第一次签名确认是否正确,如果是,则输出第一次签名确认指令至标识产生单元,否
则结束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标识;控制单
元输出第一次用户签名指令至签名模块及有效期存储单元,输出有效期查询指令至第一判
断单元,否则结束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标
识; 所述控制单元接收到外部输入的用户签名指令,判断第二存储器中保存有第一次 签名确认标识,则确定为第N次用户签名,在接收到第一判断单元输出的免签名确认有效 的指令后,输出第N次用户签名指令至签名模块,输出有效期查询指令至第一判断单元,否
则结束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标识; 标识产生单元,根据获得的免签名确认指令产生免签名确认标识,并输出至第二
存储器;根据获得的第一次签名确认指令产生第一次签名确认标识,并输出至第二存储器。 由上述的技术方案可见,本发明提供了一种提高智能密钥设备易用性的方法及智
能密钥设备。当智能密钥设备插入用户端后需要完成多次签名操作时,本发明的方法及装
置预先设置了免签名确认的有效期,只需在第一次用户签名通过验证第一次签名确认和
PIN码的正确性确定智能密钥设备使用者的身份合法性,第N次用户签名只需验证了PIN码
的正确性就可进行第N次用户签名,省略了用户第N次签名确认的操作,且在智能密钥设备
掉电后自动清除免签名确认的有效期,在不降低智能密钥设备安全性的前提下提高了智能
密钥设备的易用性。


图1为本发明提高智能密钥设备易用性的方法流程图。
图2为本发明提高智能密钥设备易用性实施例一的方法流程图。 图3为本发明智能密钥设备的结构示意图。
具体实施例方式
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例, 对本发明进一步详细说明。 本发明提供了一种提高智能密钥设备易用性的方法,该方法包括A、设置免签名 确认的有效期;B、在完成第一次签名确认后进行第一次用户签名;C、判断免签名确认是否在其有效期内,如果是,确定并非第一次用户签名,则进行第N次用户签名,否则清除免签 名确认并结束第N次用户签名;所述N为大于1的整数。 本发明提供了一种智能密钥设备,该设备包括中央处理器CPU,根据设置的免签 名确认的有效期,生成免签名确认标识并输出至存储器存储;验证第一次签名确认正确,生 成第一次签名确认标识并输出至存储器存储,利用从存储器存储的私钥进行第一次用户签 名;判断免签名确认是否在其有效期内,如果是则进行第N次用户签名,縮短免签名确认的 有效期,否则清除存储器存储的免签名确认标识和第一次签名确认标识,结束第N次用户 签名;存储器,存储私钥、数字证书、免签名确认标识、免签名确认的有效期和第一次签名确 认标识,且在掉电后清除免签名确认标识、免签名确认的有效期和第一次签名确认标识;所 述N为大于1的正整数。 图1为本发明提高智能密钥设备易用性的方法流程图。现结合图l,对本发明提高 智能密钥设备易用性的方法进行说明,具体如下
步骤101 :设置免签名确认; 首先设置免签名的有效期,生成免签名确认标识,免签名的有效期存储于USB Key 的CPU及存储器中,免签名确认标识存储于存储器中。免签名确认的有效期为免签名确认 可用次数和/或免签名确认可用时间。在设置免签名确认可用时间段时,需要设置可用时 间段及一次签名对应的时间周期。 在本步骤可进一步设置缓存PIN码,将存储器存储的与该USB Key对应的PIN码 缓存于CPU中;设置了缓存PIN码后,无需用户输入PIN码进行验证,将CPU中缓存的与该 USB Key对应的PIN码与USB Key中存储的与该USB Key对应的PIN码进行验证,提高了 USB Key的易用性。 在设置免签名确认的有效期之前,需要对设置免签名确认的有效期的用户身份进 行认证;具体地,在本步骤之前进一步包括获得用户输入的管理员PIN码,且在验证了管理 员PIN码正确后执行本步骤。 步骤102 :判断第一次签名确认是否正确,如果是执行步骤103,否则执行步骤
109 ; 当用户将USB Key插入客户端后,可能在将USB Key拔出客户端之前,利用该USB Key进行多次网上交易;在利用USB Key进行首次网上交易时,用户需要进行第一次签名确 认操作,以证明USB Key使用者的合法性。 判断用户进行的第一次签名确认是否正确,如果正确则证明该用户为合法用户, 执行步骤103 ;否则,该用户为非法用户,执行步骤109。 可采用现有的用户签名确认方法对用户进行的第一次签名确认的正确性进行判 断,比如通过USB Key上设置的用户签名确认按钮判断用户进行的第一次签名是否正确, 或者通过USB Key上的声音、指纹等生物特征验证器验证用户进行的第一次签名确认是否 正确。对于用户签名确认的方法属于现有技术的内容,在此不再赘述。
步骤103 :判断是否设置了缓存PIN码,如果是执行步骤105,否则执行步骤104 ;
判断是否设置了缓存PIN码也就是判断USB Key中是否保存有缓存PIN码标识, 如果存在则设置了缓存PIN码,执行步骤105 ;否则执行步骤104。 步骤104 :判断输入的PIN码是否正确,如果是执行步骤105,否则执行步骤109 ;
对用户输入的PIN码进行验证,如果用户输入的PIN码与USB Key的存储器中保 存的PIN码相同,则执行步骤105,否则执行步骤109。
步骤105 :进行签名; 进行签名为USB Key利用算法对用户输入的签名结果进行计算和加密获得加密的 签名数据;具体地,USB Key利用其内部保存的算法对用户输入的签名结果进行计算获得签 名数据,利用保存的私钥对签名数据加密后输出,以便需要调用USB Key存储的数字证书的 服务器对USB Key的使用者进行身份认证。 本步骤用户的签名操作可采用现有的签名操作,本步骤USB Key对用户的签名进 行处理的方法可采用现有的签名处理方法,对于具体的操作及处理方法在此不再赘述。
步骤106 :判断免签名确认是否有效,如果是执行步骤107,否则执行步骤108 ;
判断免签名确认是否有效包括三种方法,可根据设置的免签名确认的有效期采用 相应的判断方法。 若设置的免签名确认的有效期为免签名确认可用次数,则判断免签名确认可用次 数是否大于0,若小于等于0则免签名确认无效,执行步骤108 ;若大于0则免签名确认有 效,执行步骤107。 若设置的免签名确认的有效期为免签名确认可用时间,则判断设置的免签名确认 可用时间是否大于0,如果大于0则免签名确认有效,执行步骤107 ;若小于等于0则免签名 确认无效,执行步骤108。 若设置的免签名确认的有效期包括免签名确认可用次数和免签名确认可用时间, 则判断免签名确认可用次数是否大于0且免签名确认可用时间是否大于0时,如果是则免 签名确认有效,执行步骤107,否则免签名确认无效,执行步骤108。
步骤107 :縮短免签名确认的有效期,之后执行步骤103 ; 可根据设置来縮短免签名确认的有效期,并将縮短后的到的免签名确认的有效期 作为新的免签名确认的有效期进行保存。 本发明的实施例中,设置免签名确认的有效期包括三种方法,针对本发明实施例 中设置的三种免签名确认的有效期,采用如下的縮短免签名确认的有效期的方法
当设置的免签名确认的有效期为免签名确认可用次数时,縮短免签名确认的有 效期为将免签名确认可用次数减1;当设置的免签名确认的有效期为免签名确认可用时间 时,縮短免签名确认的有效期为将免签名确认可用时间减去一个时间周期;当设置的免签 名确认的有效期为免签名确认可用次数和免签名确认可用时间时,縮短免签名确认的有效 期包括将免签名确认可用次数减l,且将免签名确认可用时间减去一个时间周期。
USB Key縮短免签名确认的有效期的方法可以为 当设置的免签名确认的有效期为免签名确认可用次数时,将设置的免签名确认可 用次数作为USB Key中CPU的计数初值。当判断免签名确认有效后,也就是USB Key的CPU 确认免签名确认可用次数大于0后,将其计数初值减1,并将计数初值减1后获得的次数作 为新的计数初值进行保存。 当设置的免签名确认的有效期为免签名确认可用时间时,将设置的免签名确认可 用时间和时间周期作为USB Key的CPU的时间初值。当判断免签名确认有效后,也就是USB Key的CPU确认免签名确认可用时间大于0后,CPU将其时间初值减去一个时间周期,并将
10时间初值减去一个时间周期后获得的剩余时间作为新的时间初值进行保存。
当设置的免签名确认的有效期为免签名确认可用次数和免签名确认可用时间时, 将设置的免签名确认可用次数作为USB Key中CPU的计数初值和时间初值。当判断免签名 确认有效后,也就是USB Key的CPU确认免签名确认可用次数大于0且免签名确认可用时 间大于0后,CPU将其计数初值减1且将其时间初值减去一个时间周期,并将计数初值减1 后获得的次数作为新的计数初值进行保存,且将时间初值减去一个时间周期后获得的剩余 时间作为新的时间初值进行保存。
步骤108 :清除免签名确认; 清除在步骤106设置的免签名确认,也就是清除在设置免签名确认时在USB Key
中保存的免签名确认标识、免签名确认的有效期及第一次签名确认标识。 步骤109 :结束。 步骤102之后进一步包括当USB Key掉电时,清除保存的免签名确认标识、免签 名确认的有效期及第一次签名确认标识,并结束用户签名。 本发明的上述实施例中,当将USB Key插入用户端且需要利用USB Key进行多次 签名操作时,可按照步骤101至步骤108的方法进行用户签名,这就保证USB Key不会在合 法用户不知情的状况下被黑客或木马病毒调用,同时省略了部分用户签名确认操作,提高 了易用性;而在步骤102之后,一旦USB Key掉电时,清除保存的免签名确认标识、免签名确 认的有效期及第一次签名确认标识,这就使得下次再将USB Key插入用户端时需要重新采 用步骤101至108的方法进行用户签名,实现了不降低安全性的前提下提高了易用性。
以上仅为本发明的较佳实施例,本发明的步骤101设置免签名确认时还可仅将免 签名确认可用时间设置为免签名确认的有效期,则步骤106判断免签名确认是否有效为判 断免签名确认的时刻是否在由第一次签名确认的时刻和免签名确认可用时间计算获得的 免签名确认的有效期内,如果是则省略步骤107直接执行步骤103,否则执行步骤108 ;该方 法的其它步骤与本发明的上述较佳实施例的相应步骤相同,在此不再赘述。本发明的实施 例中,也可在步骤101设置免签名确认时将免签名确认可用时间和免签名确认可用次数作 为免签名确认的有效期,这样,步骤106所述判断免签名确认是否有效为判断免签名确认 的时刻是否在由第一次签名确认的时刻和免签名确认可用时间计算获得的免签名确认的 期限内,且免签名确认可用次数是否大于0,如果免签名确认的时刻在计算获得的免签名确 认的期限内且免签名确认可用次数大于0,则免签名确认有效,执行步骤107,否则免签名 确认无效,执行步骤108 ;在步骤107中,縮短免签名确认的有效期为将免签名确认可用次 数减1 ;该实施例的其它步骤与本发明上述较佳实施例的相应步骤相同,在此不再赘述。
免签名确认的期限为将第一次签名确认的时刻和免签名确认可用时间相加获得 的免签名确认有效的最终时刻,且每次用户签名的时刻都根据时间向前推进,因此,采用免 签名确认的期限进行免签名确认的有效期判断时,可根据用户签名的时刻进行实时判断免 签名确认是否有效,无需增加縮短免签名确认的有效期的步骤,具有较高的易用性。
图2为本发明提高智能密钥设备易用性实施例一的方法流程图。本发明的实施例 一的USB Key设备为iToken身份认证设备,该iToken身份认证设备内部具有CPU、第一存 储器、第二存储器,外部装设有签名确认按钮。其中,第一存储器为只读存储器,存储有私钥 和数字证书;第二存储器为随机存取存储器,可存储使用过程中产生的标识;签名确认按钮可输出签名确认信号至CPU。现对iToken身份认证设备的使用方法进行说明,具体如下 步骤201:开始; 首先将iToken身份认证设备插入用户端,对iToken身份认证设备的免签名确认 的有效期进行设置,也就是对iToken身份认证设备的免签名确认可用次数和免签名确认 可用时间进行设置。 iToken身份认证设备的第一存储器预先存储了管理员PIN码和与该设备对应的 PIN码。 步骤202 :判断管理员PIN码是否正确,如果是执行步骤203,否则执行步骤211 ;
判断iToken身份认证设备使用者输入的管理员PIN码与iToken身份认证设备中 存储的管理员PIN码是否相同,如果相同则iToken身份认证设备的使用者具有管理员权 限,执行步骤203,否则执行步骤211。
步骤203 :设置免签名确认可用次数和免签名确认可用时间; 在验证了 iToken身份认证设备的使用者具有管理员权限后,对iToken身份认证 设备的免签名确认的有效期进行设置,生成免签名确认标识,将免签名确认标识及免签名 确认的有效期存储于第二存储器。具体地,设置免签名确认可用次数和免签名确认可用时 间,在设置免签名确认可用时间时进一步设置执行签名操作的时间周期;将设置的免签名 确认可用次数作为iToken身份认证设备的CPU的计数初值,将设置的免签名确认可用时间 作为iToken身份认证设备的CPU的时间初值,并将设置的时间周期作为CPU的检查周期; 比如设置的免签名可用次数为10,设置的免签名确认可用时间为600秒,检查周期为60 秒。 若iToken身份认证设备的具有管理员权限的使用者希望省略验证PIN码,可在本 步骤进一步设置缓存PIN码,生成缓存PIN码标识。缓存PIN码标识存储于iToken身份认 证设备的第二存储器中,一旦iToken身份认证设备掉电,第二存储器中的缓存PIN码标识 被清除。 由于第二存储器为随机存取存储器,因此,一旦iToken身份认证设备掉电,第二 存储器存储的免签名确认标识被清除。 步骤204 :判断第一次签名确认是否正确,如果是执行步骤205,否则执行步骤 211 ; 当iToken身份认证设备的使用者使用iToken身份认证设备进行电子支付等网上 交易时,首先需要对iToken身份认证设备的使用者的身份进行验证。 判断iToken身份认证设备的使用进行的第一次签名确认是否正确,如果是执行 步骤205,否则执行步骤211。本实施例中,当iToken身份认证设备的CPU获得外部签名确 认按钮输入的信号时,生成第一次签名确认标识并存储于第二存储器中,执行步骤205,否 则执行步骤211。 由于第二存储器为随机存取存储器,因此一旦iToken身份认证设备掉电,第二存 储器中存储的第一次签名确认标识被清除。 步骤205 :判断是否设置了缓存PIN码,如果是执行步骤207,否则执行步骤206 ;
iToken身份认证设备的CPU中判断其是否缓存了与该USB Key对应的PIN码,如 果存在则设置了缓存PIN码,执行步骤207,否则执行步骤206。
步骤206 :判断输入的PIN码是否正确,如果是执行步骤207,否则执行步骤211 ;
iToken身份认证设备比较外部输入的PIN码保存于第一存储器中的PIN码是否相 同,如果相同执行步骤207,否则执行步骤211。
步骤207:进行签名; iToken身份认证设备中的CPU利用算法对用户输入的签名结果进行计算获得签 名数据,利用保存的私钥对签名数据加密后输出至相应的服务器,以便对用户身份进行验 证。 本步骤用户的签名操作可采用现有的签名操作,本步骤iToken身份认证设备对 用户的签名进行处理的方法可采用现有的签名处理方法,对于具体的操作及处理方法在此 不再赘述。 步骤208 :判断免签名确认可用次数和免签名确认可用时间是否都大于O,如果是 执行步骤209,否则执行步骤210 ; iToken身份认证设备的CPU判断计数初值是否大于0且时间初值是否大于O,若 同时满足上述两个条件,执行步骤209,否则执行步骤210。 步骤209 :减小免签名确认可用次数和縮短免签名确认可用时间,之后执行步骤
205 ; iToken身份认证设备的CPU的计数初值减1,且控制定时单元的时间初值縮短一 个时间周期,将计数初值减1后获得的次数作为新的计数初值保存于CPU中,且将时间初值 縮短一个时间周期后获得的时间作为新的时间初值保存于CPU ;比如设置的免签名确认 可用时间为600秒,时间周期为60秒,则CPU的时间初值縮短60秒,并将縮短后的时间作 为新的时间初值。 CPU控制定时单元的时间初值縮短一个时间周期的方法可采用现有的定时器的工
作方法,在此不再赘述。 步骤210 :清除免签名确认; iToken身份认证设备清除免签名确认为iToken身份认证设备的CPU清除存储于
第二存储器的免签名确认标识、免签名确认的有效期及第一次签名确认标识。
步骤211:结束。 本发明的上述实施例一中,也可在步骤203中设置免签名确认时将免签名确认可 用时间和免签名确认可用次数作为免签名确认的有效期,不再设置与免签名确认可用时间 对应的检查周期,这样,步骤208为判断免签名确认可用次数是否大于0,且免签名确认的 时刻是否在由第一次签名确认的时刻和免签名确认可用时间计算获得的免签名确认的期 限内,如果免签名确认的时刻在计算获得的免签名确认的期限内且免签名确认可用次数大 于0,则免签名确认有效,执行步骤209,否则免签名确认无效,执行步骤210 ;步骤209为减 小免签名确认可用次数,也就是将免签名确认可用次数减1 ;该方法的其它步骤与本发明 实施例一的相应步骤相同,在此不再赘述。 免签名确认的期限为将第一次签名确认的时刻和免签名确认可用时间相加获得 的免签名确认有效的最终时刻,且每次用户签名的时刻都根据时间向前推进,因此,采用免 签名确认的期限进行免签名确认的有效期判断时,可根据用户签名的时刻进行实时判断免 签名确认是否有效,无需增加縮短免签名确认的有效期的步骤,具有较高的易用性。
图3为本发明智能密钥设备的结构示意图。现结合图3,对智能密钥设备的结构进 行说明,具体如下 本发明的智能密钥设备包括中央处理器CPU31和存储器32。 中央处理器CPU31,根据设置的免签名确认的有效期生成免签名确认标识,输出免 签名确认标识及免签名确认的有效期至存储器32存储;验证第一次签名确认正确,生成第 一次签名确认标识并输出至存储器32存储,验证PIN码正确后利用从存储器32存储的私 钥进行第一次用户签名;判断免签名确认是否在其有效期内,如果是则縮短免签名确认的 有效期,且在验证PIN码后进行第N次用户签名,否则清除存储器32存储的免签名确认的 有效期、免签名确认标识和第一次签名确认标识,结束第N次用户签名。所述N为大于1的 正整数。 存储器32,存储私钥、数字证书、与该设备对应的PIN码、CPU31输出的免签名确认 标识、免签名确认的有效期及第一次签名确认标识,且在掉电后清除免签名确认标识及第 一次签名确认标识。 本发明的免签名确认的有效期为免签名确认可用次数,或者免签名确认的有效期 为免签名确认可用时间,或者免签名确认的有效期为免签名确认可用次数和免签名确认可 用时间;在设置免签名确认可用时间的同时,设置一个的时间周期,以对免签名确认可用时 间进行更新,也可不设置时间周期,根据第一次签名确认的时刻和免签名确认可用时间计 算获得一免签名确认的期限,根据免签名确认的时刻是否在计算获得的免签名确认的期限 内来判断免签名确认是否有效。下述表述中,不再对免签名确认的有效期的具体内容进行 区分。 本发明的智能密钥设备还可包括签名确认按钮或签名生物特征验证器,签名确认 按钮或签名生物特征验证器将用户进行的签名确认输出至CPU31,签名确认按钮或签名生 物特征验证器可采用现有技术的结构,在此不再赘述。
存储器32包括第一存储器321和第二存储器322。 第一存储器321为只读存储器,存储私钥、数字证书、该设备对应的PIN码、用户的 签名确认数据及免签名确认的有效期;用户的签名确认数据为表示用户同意此次签名的数 据。在智能密钥设备掉电后,第一存储器321中存储的内容不会被清除。
第二存储器322为随机存取存储器,存储CPU331输出的免签名确认标识和第一次 签名确认标识;第二存储器322中的内容可被清除,且在智能密钥设备掉电后,第二存储器 322中的内容自动被清除。 CPU31包括验证模块311、有效期模块312和签名模块313。 验证模块311,根据设置的免签名确认的有效期生成免签名确认标识并输出至第 二存储器322存储,将设置的免签名确认的有效期输出至有效期模块312及第二存储器 322 ;根据第一存储器321存储的签名确认数据验证第一次签名确认正确后,生成第一次签 名确认标识并输出至第二存储器322存储;验证获得的PIN码与第一存储器321存储的PIN 码正确后,输出第一次用户签名指令至签名模块313及有效期模块312 ;输出有效期指令查 询指令至有效期模块312,在获得有效期模块312输出的免签名确认有效的指令后,验证第 二存储器322中是否已存储有第一次签名确认标识,如果是则验证获得的PIN码与第一存 储器321存储的PIN码是否相同,如果是输出第N次用户签名指令至签名模块313,否则清除第二存储器322存储的免签名确认标识、免签名确认的有效期和第一次签名确认标识。
有效期模块312,存储验证模块311输出的免签名确认的有效期,并根据验证模块 311输出的第一次用户签名指令的时刻及免签名确认的有效期计算获得免签名确认的期 限;根据验证模块311的有效期查询指令判断免签名确认是否在其有效期内,如果是则縮 短免签名确认的有效期,利用縮短后的免签名确认的有效期对存储的验证模块311输出的 免签名确认的有效期进行更新,输出免签名确认有效的指令至验证模块311,否则输出免签 名确认无效的指令至验证模块311 ;或者根据验证模块311的有效期查询指令判断免签名 确认的时刻是否在免签名确认的期限内,如果是则输出免签名确认有效的指令至验证模块 311,否则输出免签名确认无效的指令至验证模块311。用于计算免签名确认的期限的免签 名确认的有效期为免签名确认可用时间,不包含时间周期或检测周期。
验证模块311在接收到免签名确认有效的指令后,将外部输入的用户的第一次签 名结果随第一次用户签名指令输出至签名模块313,或者将外部输入的用户的第N次签名 结果随第N次用户签名指令输出至签名模块313。 签名模块313,根据验证模块311的第一次用户签名指令对用户输入的第一次签 名结果进行算法计算获得第一签名数据,利用第一存储器321存储的私钥对第一次签名数 据加密后输出;或者根据验证模块311的第N次用户签名指令对用户输入的第N次签名结 果进行算法计算获得第N次签名数据,利用第一存储器321存储的私钥对第N次签名数据 加密后输出。 有效期模块312包括有效期存储单元3121和第一判断单元3122。 有效期存储单元3121存储验证模块311输出的免签名确认的有效期,利用第一判
读单元3122输出的免签名确认的有效期更新存储的验证模块311输出的免签名确认的有
效期;具体地,有效期存储单元3121存储验证模块311输出的免签名确认的有效期,在接收
到第一判断单元3122输出的免签名确认的有效期后,利用接收到的第一判断单元3122输
出的免签名确认的有效期对已存储的免签名确认的有效期进行更新,删除验证模块311输
出的免签名确认的有效期,存储第一判读单元3122输出的免签名确认的有效期;或者存储
根据验证模块311输出的第一次用户签名指令的时刻和免签名确认的有效期计算获得的
免签名确认的期限;用于计算免签名确认的期限的免签名确认的有效期为免签名确认可用
次数;免签名确认的期限为第一次用户签名指令的时刻与免签名确认可用时间相加获得的
免签名确认有效的最终时刻。 第一判断单元3122,获得验证模块311输出的有效期查询指令后,从有效期存储 单元3121读取免签名确认的有效期,判断免签名确认的有效期是否大于O,如果是,则縮短 免签名确认的有效期并输出至有效期存储单元3121,输出免签名确认有效的指令至验证模 块311,否则,输出免签名无效的指令至验证模块311。当免签名确认的有效期为免签名确 认可用次数时,第一判断单元3122縮短免签名确认的有效期为将免签名确认可用次数减 1 ;当免签名确认的有效期为免签名确认可用时间时,第一判断单元3122縮短免签名确认 的有效期为将免签名确认可用时间减去一个时间周期;当免签名确认的有效期为免签名确 认可用次数和免签名确认可用时间时,第一判断单元3122縮短免签名确认的有效期为将 将免签名确认可用次数减1,且将免签名确认可用时间减去一个时间周期。或者第一判断单 元3122在获得验证模块311输出的有效期查询指令后,从有效期存储单元3121读取免签
15名确认的期限,判断验证模块输出有效期查询指令的时刻是否在免签名确认的期限内,如 果是,输出免签名确认有效的指令至验证模块311,否则输出免签名无效的指令至验证模块 311,此时第一判断单元3122无需縮短免签名确认的有效期。
验证模块311包括控制单元3111和标识产生单元3112。 控制单元3111,判断输入的数据为免签名确认的有效期后,输出免签名确认的 有效期至有效期存储单元3121及第一存储器321,输出免签名确认指令至标识产生单元 3112。 控制单元3111接收到外部输入的用户签名指令,判断第二存储器322中未保存第 一次签名确认标识,则确定为第一次用户签名,根据第一存储器存储321的签名确认数据 判断外部输入的第一次签名确认是否正确,如果是,则输出第一次签名确认指令至标识产 生单元3112,否则结束用户签名并清除第二存储器322存储的免签名确认标识和第一次签 名确认标识。控制单元3111在确定第一次签名确认正确的情况下,根据第一存储器321存 储的该设备对应的PIN码验证获得的PIN码是否正确,如果是,则输出第一次用户签名指令 至签名模块313及有效期存储单元3121,输出有效期查询指令至第一判断单元3122,否则 结束用户签名并清除第二存储器322存储的免签名确认标识和第一次签名确认标识。
控制单元3111接收到外部输入的用户签名指令,判断第二存储器322中保存有第 一次签名确认标识,则确定为第N次用户签名,在接收到第一判断单元3122输出的免签名 确认有效的指令后,根据第一存储器321存储的该设备对应的PIN码验证获得的PIN码是 否正确,如果是,则输出第N次用户签名指令至签名模块313,输出有效期查询指令至第一 判断单元3122,否则结束用户签名并清除第二存储器322存储的免签名确认标识和第一次 签名确认标识。 控制单元3111输出第一次用户签名指令时,将获得的外部输入的第一次用户签 名数据输出至签名模块313 ;控制单元3111输出第N次用户签名指令时,将获得的外部输 入的第N次用户签名数据输出至签名模块313。 标识产生单元3112根据获得的免签名确认指令产生免签名确认标识,并输出至 第二存储器322 ;根据获得的第一次签名确认指令产生第一次签名确认标识,并输出至第 二存储器322。 为了进一步提高智能密钥设备的易用性,验证模块311还包括缓存PIN码单元 3113 ;缓存PIN码单元3113接收到外部输入的缓存PIN码指令,从第一存储器321中获取 该设备对应的PIN码,输出获取的PIN码至控制单元3111。 以上为本发明的较佳实施例,在利用智能密钥设备进行用户签名确认操作时,可 省略PIN码验证操作,对于图1所示的实施例,也就是省略步骤103和步骤104,在步骤102 判断第一次签名确认正确后,执行步骤105进行签名,当执行步骤109縮短免签名确认的有 效期后,执行步骤105进行签名;对于图2所示的实施例,也就是省略步骤205和步骤206, 在步骤204判断第一次签名确认正确后,执行步骤207进行签名,当执行步骤209减小免签 名确认可用次数和縮短免签名确认可用时间后,执行步骤207进行签名;对于装置的实施 例来说,也可省略PIN码验证操作,相应地可不对PIN码进行存储。 本发明的上述实施例中,当智能密钥设备插入用户端且需要完成多次签名操作 时,本发明的方法及装置预先设置了免签名确认的有效期,只需在第一次用户签名通过验
16证第一次签名确认和PIN码的正确性确定智能密钥设备使用者的身份合法性,后续的第N
次用户签名只需验证了 PIN码的正确性就可进行第N次用户签名,省略了用户第N次签名
确认的操作,提高了智能密钥设备的易用性;而一旦智能密钥设备掉电,其存储的免签名确
认的有效期、免签名确认标识和第一次签名确认标识被清除,在提高易用性的同时未降低
智能密钥设备的安全性。为了进一步提高智能密钥设备的易用性,预先设置缓存PIN码,这
样在每次签名操作时都无需验证PIN码的正确性,提高了智能密钥设备的易用性。 综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的
保护范围之内。
权利要求
一种提高智能密钥设备易用性的方法,其特征在于,该方法包括A、设置免签名确认的有效期;B、在完成第一次签名确认后进行第一次用户签名;C、判断免签名确认是否在其有效期内,如果是,确定并非第一次用户签名,则进行第N次用户签名,否则清除免签名确认并结束第N次用户签名;所述N为大于1的整数。
2. 根据权利要求1所述的方法,其特征在于,所述步骤C之后进一步包括D、 縮短免签名确认的有效期,利用縮短后的免签名确认的有效期对步骤A所述的免签名确认的有效期进行更新。
3. 根据权利要求1或2所述的方法,其特征在于,所述步骤A包括设置免签名确认的有效期并生成免签名确认标识;存储免签名确认的有效期和免签名确认标识;步骤B所述完成第一次签名确认包括判断第一次签名确认是否正确,如果是,生成第一次签名确认标识并存储,否则结束第一次用户签名;步骤C所述确定并非第一次用户签名包括判断是否存储有第一次签名确认标识,如果是则确定为第一次用户签名,否则确定并非第一次用户签名。步骤C所述清除免签名确认为清除存储的免签名确认标识。
4. 根据权利要求l所述的方法,其特征在于,步骤A所述免签名确认的有效期为免签名确认可用时间,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认的时刻是否在由第一次签名确认的时刻和免签名确认可用时间计算获得的免签名确认的期限内。
5. 根据权利要求2所述的方法,其特征在于,步骤A所述免签名确认的有效期为免签名确认可用次数,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用次数是否大于0,步骤D所述縮短免签名确认的有效期为免签名确认可用次数减1 ;或者步骤A所述免签名确认的有效期为免签名确认可用时间和时间周期,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用时间是否大于0,步骤D所述縮短免签名确认的有效期为免签名确认可用时间縮短1个时间周期;或者步骤A所述免签名确认的有效期为免签名确认可用次数、免签名确认可用时间和时间周期,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用次数是否大于O和免签名确认可用时间是否大于O,步骤D所述縮短免签名确认的有效期为免签名确认可用次数减1和免签名确认可用时间縮短1个时间周期或者步骤A所述免签名确认的有效期为免签名确认可用次数和免签名确认可用时间,步骤C所述判断免签名确认是否在其有效期内为判断免签名确认可用次数是否大于0且免签名确认的时刻是否在免签名确认的期限内,步骤D所述縮短免签名确认的有效期为免签名确认可用次数减1 ;所述免签名确认的期限为第一次签名确认的时刻加上免签名确认可用时间获得的免签名确认有效的最终时刻。
6. 根据权利要求1或2所述的方法,其特征在于,所述步骤B之后进一步包括当智能密钥设备掉电时,智能密钥设备清除存储的第一次用户确认标识及免签名确认标识,并结束第N次用户签名。
7. —种智能密钥设备,其特征在于,该设备包括中央处理器CPU,根据设置的免签名确认的有效期生成免签名确认标识,输出免签名确 认标识及免签名确认的有效期至存储器存储;验证第一次签名确认正确,生成第一次签名 确认标识并输出至存储器存储,利用从存储器存储的私钥进行第一次用户签名;判断免签 名确认是否在其有效期内,如果是则进行第N次用户签名,縮短免签名确认的有效期,否则 清除存储器存储的免签名确认标识和第一次签名确认标识,结束第N次用户签名;存储器,存储私钥、数字证书、与该设备对应的PIN码、CPU输出的免签名确认标识、免 签名确认的有效期及第一次签名确认标识,且在掉电后清除免签名确认标识和第一次签名 确认标识;所述N为大于1的正整数。
8. 根据权利要求7所述的设备,其特征在于,所述存储器包括 第一存储器,存储私钥、数字证书、签名确认数据及免签名确认的有效期; 第二存储器,存储CPU输出的免签名确认标识和第一次签名确认标识,且在掉电后清除免签名确认标识和第 一次签名确认标识。
9. 根据权利要求7所述的设备,其特征在于,所述CPU包括验证模块,根据设置的免签名确认的有效期生成免签名确认标识并输出至第二存储器 存储,将设置的免签名确认的有效期输出至有效期模块及第一存储器;根据第一存储器存 储的签名确认数据验证第一次签名确认正确后,生成第一次签名确认标识并输出至第二存 储器存储;输出第一次用户签名指令至签名模块及有效期模块;输出有效期查询指令至有 效期模块,在获得有效期模块输出的免签名确认有效的指令后,验证第二存储器中是否已 存储有第一次签名确认标识,如果是输出第N次用户签名指令至签名模块,否则清除第二 存储器存储的免签名确认的有效期、免签名确认标识和第一次签名确认标识;有效期模块,存储验证模块输出的免签名确认的有效期,并根据验证模块输出的第一 次用户签名指令的时刻及免签名确认的有效期计算获得免签名确认的期限;根据验证模 块的有效期查询指令判断免签名确认是否在其有效期内,如果是则縮短免签名确认的有效 期,利用縮短后的免签名确认的有效期对存储的验证模块输出的免签名确认的有效期进行 更新,输出免签名确认有效的指令至验证模块,否则输出免签名确认无效的指令至验证模 块;或者根据验证模块的有效期查询指令判断免签名确认的时刻是否在免签名确认的期限 内,如果是则输出免签名确认有效的指令至验证模块,否则输出免签名确认无效的指令至 验证模块;签名模块,根据验证模块的第一次用户签名指令对用户输入的第一次签名结果进行算 法计算获得第一签名数据,利用第一存储器存储的私钥对第一次签名数据加密后输出;或 者根据验证模块的第N次用户签名指令对用户输入的第N次签名结果进行算法计算获得第 N次签名数据,利用第一存储器存储的私钥对第N次签名数据加密后输出。
10. 根据权利要求9所述的设备,其特征在于,所述有效期模块包括 有效期存储单元,存储验证模块输出的免签名确认的有效期,利用第一判读单元输出的免签名确认的有效期更新存储的验证模块输出的免签名确认的有效期,或者存储根据验 证模块输出的第一次用户签名指令的时刻和免签名确认的有效期计算获得的免签名确认的期限;第一判断单元,获得验证模块输出的有效期查询指令后,从有效期存储单元读取免签 名确认的有效期,判断免签名确认的有效期是否大于0,如果是,则縮短免签名确认的有效 期并输出至有效期存储单元,输出免签名确认有效的指令至验证模块,否则,输出免签名无 效的指令至验证模块;或者在获得验证模块输出的有效期查询指令后,从有效期存储单元 读取免签名确认的期限,判断验证模块输出有效期查询指令的时刻是否在免签名确认的期 限内,如果是,输出免签名确认有效的指令至验证模块,否则输出免签名无效的指令至验证 模块。
11.根据权利要求9所述的设备,其特征在于,所述验证模块包括控制单元,判断输入的数据为免签名确认的有效期后,输出免签名确认的有效期至有 效期存储单元及第一存储器,输出免签名确认指令至标识产生单元;所述控制单元接收到外部输入的用户签名指令,判断第二存储器中未保存第一次签名 确认标识,则确定为第一次用户签名,根据第一存储器存储的签名确认数据判断外部输入 的第一次签名确认是否正确,如果是,则输出第一次签名确认指令至标识产生单元,否则结 束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标识;控制单元输 出第一次用户签名指令至签名模块及有效期存储单元,输出有效期查询指令至第一判断单 元,否则结束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标识;所述控制单元接收到外部输入的用户签名指令,判断第二存储器中保存有第一次签名 确认标识,则确定为第N次用户签名,在接收到第一判断单元输出的免签名确认有效的指 令后,输出第N次用户签名指令至签名模块,输出有效期查询指令至第一判断单元,否则结 束用户签名并清除第二存储器存储的免签名确认标识和第一次签名确认标识;标识产生单元,根据获得的免签名确认指令产生免签名确认标识,并输出至第二存储 器;根据获得的第一次签名确认指令产生第一次签名确认标识,并输出至第二存储器。
全文摘要
本发明提供了一种提高智能密钥设备易用性的方法,该方法包括A、设置免签名确认的有效期;B、在完成第一次签名确认后进行第一次用户签名;C、判断免签名确认是否在其有效期内,如果是,确定并非第一次用户签名,则进行第N次用户签名,否则清除免签名确认并结束第N次用户签名;所述N为大于1的整数。本发明还提供了一种智能密钥设备。当智能密钥设备一旦插入用户端且完成多次用户签名操作时,本发明的方法及装置预先设置了免签名确认的有效期,只需在第一次用户签名通过验证第一次签名确认的正确性来确定智能密钥设备使用者的身份合法性,省略了后续用户签名确认,提高了智能密钥设备的易用性。
文档编号G06Q20/00GK101777101SQ201010100190
公开日2010年7月14日 申请日期2010年1月22日 优先权日2010年1月22日
发明者孙吉平, 韩勇 申请人:北京深思洛克软件技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1