数字证书认证方法、系统、USBKey设备和服务器的制作方法

文档序号:7763528阅读:393来源:国知局
专利名称:数字证书认证方法、系统、USB Key设备和服务器的制作方法
技术领域
本发明方案涉及信息安全领域,尤其涉及一种数字证书的认证方法、系统、USB Key设备和服务器。
背景技术
随着互联网和电子商务的发展,USB Key作为网络用户身份识别和数据保护的“电子钥匙”,正在被越来越多的用户所认识和使用。USB Key设备是一种基于USB接口的智能存储身份认证设备,内置有CPU、存储器、 芯片操作系统(COS)和安全文件系统,用于在服务器和用户之间相互进行身份认证。每一个USB Key设备中都可保存数字证书,所述数字证书是由一个第三方的权威机构——数字证书认证中心(Certificate Authority,CA)发行的,是一种权威性的电子文档,使用USB Key设备的用户通过数字证书来表明身份。由此可见,数字证书对于USB Key 设备来讲是至关重要的。如图1所示,为现有技术中,USB Key设备从服务器处下载数字证书的一种典型方式,包括以下步骤步骤101 =USB Key设备通过USB接口接入客户端,并通过客户端向服务器发送一个携带用户登录信息的请求消息。所述用户信息可以是表明使用该USB Key设备用户的信息,如用户名、登录密码寸。步骤102 服务器接收到来自客户端的请求消息后,首先根据请求消息中携带的用户信息校验用户的合法性,校验通过后查找到记录在本地数据库中与该用户对应的USB Key设备的硬件标识。在现有的方案中,当用户申请USB Key设备时,银行等柜台工作人员将该用户的用户信息与对应的USB Key设备进行绑定,用户与硬件标识之间的对应关系存储到服务器数据库中,因此,在本步骤102中,当服务器接收到携带用户信息的请求消息后,可以从服务器数据库存储的用户信息与USB Key设备的对应关系中,查找出请求消息中的用户信息对应的USB Key设备的硬件标识。步骤103 服务器将查找的USB Key设备的硬件标识发送给客户端。步骤104 客户端接收到服务器发送的USB Key设备的硬件标识后,与客户端从当前接入的USB Key设备中读取的USB Key设备的硬件标识进行比较,若两个USB Key设备的硬件标识一致,则确定当前接入的USB Key设备是合法设备,跳转至步骤105 ;否则,确定 USB Key设备是非法设备,提示用户使用正确的硬件设备,结束数字证书的下载过程。步骤105 =USB Key设备在本地生成一组公私密钥对,并利用私钥对用户公钥、用户信息的摘要信息(如md5哈希值)进行签名,将公钥信息、用户信息及签名信息生成一个用于下载数字证书的Pkcs#10格式的证书请求数据包。步骤106 =USB Key设备通过客户端将携带所述数据包的证书下载请求发送给服务器。步骤107 服务器接收到所述下载请求后,首先利用公钥解密签名信息,若签名认证通过,则提取证书请求包中的公钥和用户信息生成X. 509数字证书发送给客户端,并通过客户端存储到USB Key设备中;否则,返回给用户错误提示信息。在图1所示的下载数字证书的方案中,是由客户端对服务器发送的USB Key设备的硬件标识以及从USB Key设备中获取的硬件标识进行比较,如果客户端受的攻击(例如, 受到木马程序的攻击),成为非法客户端,则客户端对USB Key设备的硬件标识进行比较的过程很容易被模拟,进而绕过硬件识别,非法用户可以将一个与合法的USB Key设备同型号的非法USB Key设备与非法客户端进行连接,利用木马窃取的的用户登录信息、硬件标识模拟上述步骤101 步骤107的过程,使非法USB Key设备获取到合法的数字证书,导致数字证书的非法使用,合法用户的业务安全性受到较大威胁。另外,与非法客户端连接的合法USB Key设备还可以通过两码(指参考码和授权码,作用是为USB Key设备和服务器建立关联)方式,从服务器处获取数字证书,非法客户端在盗取该两码信息后,利用与合法USB Key设备同型号的非法USB Key设备,也可以从服务器处非法获取数字证书,导致数字证书的非法使用,合法用户的业务安全性受到较大威胁。

发明内容
本发明方案提供了一种数字证书的认证方法、系统、USB Key设备和服务器,用于解决数字证书非法使用的问题,提高合法用户的业务安全性。一种数字证书的认证方法,该方法包括服务器接收USB Key设备发送的第一运算结果以及用户信息,所述第一运算结果是USB Key设备根据接收到的数字证书和存储在安全存储区内的保密标识进行加密运算后得到的;服务器根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并对确定的数字证书和保密标识进行加密运算,得到第二运算结果; 服务器将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key 设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。一种数字证书的认证系统,该系统包括USB Key设备,用于根据接收到来自服务器的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果,并发送该第一运算结果和用户信息;服务器,用于接收USB Key设备发送的第一运算结果以及用户信息,并根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果,以及,将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。一种服务器,所述服务器包括信息接收模块,用于接收USB Key设备发送的第一运算结果以及用户信息,所述第一运算结果是USB Key设备根据接收到的数字证书和存储在安全存储区内的保密标识进行加密运算后得到的;运算模块,用于根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果;比较模块,用于将所述第一运算结果和第二运算结果进行比较,若相同,则允许该 USB Key设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。一种USB Key设备,所述USB Key设备包括信息接收模块,用于来自服务器的数字证书;运算模块,用于根据接收到来自服务器的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果;信息发送模块,用于发送该第一运算结果和用户信息。本发明有益效果如下本发明实施例在USB Key设备内的安全存储区额外存储具有唯一性的保密标识, 并在服务器内建立USB Key设备的硬件标识和保密标识之间的对应关系,以便于在USB Key 设备接收到数字证书后,可以将利用该保密标识和接收到的数字证书进行加密运算后的运算结果发送给服务器,使服务器利用本地存储的保密标识对接收到的运算结果进行认证, 只有在认证通过时,服务器才允许USB Key设备使用接收到的数字证书,否则,不允许USB Key设备使用接收到的数字证书。在本方案中,由于客户端无法读取USB Key设备内安全存储区内的信息,因此,即使非法USB Key设备获取数字证书后,非法USB Key设备向服务器发送用于认证的运算结果后,服务器也不会通过认证,也就是说,虽然非法USB Key设备获取数字证书但不能正确使用该数字证书,如不能使用数字证书进行网上银行的交易等,确保了数字证书只能被下载到合法的USB Key设备中才能使用,避免了数字证书的非法使用, 提高了合法用户的业务安全性。


图1为现有技术中,USB Key设备从服务器处下载数字证书的流程示意图
图2为本发明实施例一的_女字证书的认证方法流程图3为本发明实施例二的_女字证书的认证方法流程图4为本发明实施例三的_女字证书的认证方法流程图5为本发明实施例四的_女字证书的认证方法流程图6为本发明实施例五的_女字证书的系统结构示意图7(a)、图7(b)为本发明实施例六的服务器结构示意图8(a)、图8(b)为本发明实施例七的USB Key设备的结构示意图。
具体实施例方式
需要说明的是,本发明各实施例中涉及的USB Key设备的安全存储区是指USB Key设备的存储器一般分为数据存储区和密钥存储区(又叫安全存储区),在安全存储区内存储进行加密运算后的重要信息,不允许外部设备访问,加密算法在USB Key设备初始化时烧制在存储器的安全存储区中。所述USB Key设备的硬件标识是指:USB Key设备在制作成功后,为了区别不同的 USB Key设备,就为每一个USB Key设备分配一个硬件标识,该硬件标识可以是产品的序列号,也可以是产品的其他可识别的标号,一般存储在USB Key设备内部,也可以写在USB Key 设备的表面。所述USB Key设备的保密标识是指USB Key设备在制作的时候,通过写入的方法在USB Key设备内部的安全存储区存储一个保密标识,该标识只能被USB Key设备内部的 COS系统访问,不得被外界设备访问。下面结合说明书附图对本发明实施例进行详细描述。实施例一如图2所示,为本发明实施例一中数字证书的认证方法的流程示意图,具体内容包括以下步骤承接图1所示的方法,步骤107 由服务器向USB Key设备发送数字证书。步骤201 =USB Key设备将接收到的数字证书和本地存储的保密标识进行加密运
算,得到第一运算结果。在本步骤的方案中,USB Key设备可将数字证书和保密标识按照MD5算法进行加密运算,这样做的好处是由于MD5算法是一种不可逆的算法,因此,USB Key设备按照MD5 算法得到的第一运算结果即使被其他设备非法获取后,也无法从中分析出保密标识。本实施例一中所使用的算法也不限于其他具有不可逆特性的算法。步骤202 =USB Key设备将所述第一运算结果和用户信息通过接入的客户端发送给服务器。需要说明的是,本步骤202的发起时间包括但不限于以下几种情况1、USB Key设备在接收到数字证书时立即执行上述步骤201和步骤202。2、USB Key设备在使用接收到的数字证书执行业务之时,如利用接收到的数字证书准备登陆网上银行进行交易时,执行上述步骤201和步骤202,例如,通过网上银行登陆请求携带所述第一运算结果至服务器。3、USB Key设备可以在接收到数字证书之后,且使用接收到的数字证书执行业务之前的任意时间点执行上述步骤201和步骤202。步骤203 服务器根据接收到的用户信息,确定对应的USB Key设备的保密标识以及数字证书。在本实施例的方案中,服务器本地可以在用户开通USB Key设备时,记录用户信息、USB Key设备的硬件标识、保密标识三者之间的对应关系,当服务器在执行步骤203时, 可根据所述三者之间的对应关系,确定接收到的用户信息对应的保密标识。服务器本地还可以在用户开通USB Key设备时,记录用户信息与USB Key设备的硬件标识之间的对应关系,以及USB Key设备的硬件标识与保密标识之间的对应关系,当服务器在执行步骤203时,可根据接收到的用户信息确定对应的USB Key设备的硬件标识,进而再确定保密标识。服务器在向USB Key设备发送了数字证书后,可在本地记录接收数字证书的USBKey设备的硬件标识与数字证书之间的对应关系,因此,本步骤中,服务器可以根据接收到的用户信息确定对应的数字证书。步骤204 服务器根据本地确定的USB Key设备的保密标识以及数字证书进行加
密运算,得到第二运算结果。在本步骤中,服务器所使用的算法与步骤201中所使用的算法相同。需要说明的是本实施例中涉及的第一运算结果和第二运算结果是为了对USB Key 设备和服务器的运算结果加以区别,对其内容是否相同没有任何特殊的定义。步骤205:服务器比较第一运算结果和第二运算结果,若结果相同,则通过对USB Key设备的认证,并对发送给该USB Key设备的数字证书置使能标志,允许USB Key设备使用该数字证书执行业务;否则,没有通过对USB Key设备的认证,不允许USB Key设备使用该数字证书执行业务。在本实施例一的方案中,需要使用接收到的数字证书对USB Key设备进行认证,因此,只有数字证书正确、完整地下载到USB Key设备才能实现本实施例一的方案,也就是说, 利用本实施例一的方案可以确保数字证书正确、完整地下载到USB Key设备中。另一方面, 服务器利用发送的数字证书和USB Key设备的保密标识对USB Key设备进行认证,确保使用数字证书的USB Key设备都是合法的USB Key设备,提高了合法用户的业务安全。实施例二 如图3所示,为本发明实施例二的一种数字证书认证的方法流程示意图,本实施例二的方案与实施例一的方案基本相同,所不同在于,实施例一的方案可以不额外使用验证码来对USB Key设备进行认证,在本实施例二的方案中,服务器可在实施例一方案的基础上,通过向USB Key设备发送验证码的形式,对USB Key设备进行认证,具体地,在本实施例二的方案中,在步骤107之后,且步骤201之前,还包括以下步骤步骤201/ =USB Key设备接收服务器发送的第一验证码。所述第一验证码可以是随机数。在本步骤201/的方案中,服务器可以在向USB Key设备发送数字证书的同时,向 USB Key设备发送第一验证码;也可以是USB Key设备在接收到数字证书后,且USB Key设备在使用接收到的数字证书执行业务之前的任意时间点,向服务器发送验证请求后,服务器再在向USB Key设备发送第一验证码。由于本实施例二新增了步骤201/,因此,本实施例二中的步骤201和步骤204的方案与实施例一的方案也有所区别,其区别在于在本实施例二的步骤201中,USB Key设备将接收到的第一验证码、数字证书和本地存储的保密标识进行加密运算,得到第一运算结果。在本实施例二的步骤204中,服务器也要根据第一验证码、本地确定的USB Key设备的保密标识以及数字证书进行加密运算,得
到第二运算结果。本实施例二的技术方案中,利用第一验证码、USB Key设备的数字证书和USB Key 设备的保密标识进行加密运算,可以进一步提高数字证书使用的安全性。通过实施例一和实施例二的方式,在数字证书下载到USB Key设备之后,且用户使用下载了数字证书的USB Key设备执行业务之前,通过服务器对USB Key设备及所下载的数字证书的认证,确保了数字证书的正确使用,提高了合法用户的业务安全。
实施例三本实施例三是在实施例一或实施例二的基础上,实现USB Key设备对接收到的数字证书的合法性认证,具体的认证过程是USB Key设备对发送数字证书的服务器进行认证,若认证通过,则确定该服务器发送的数字证书是合法的,否则,确定该服务器发送的数字证书是非法的。本实施例三的方案中,USB Key设备通过向服务器发送验证码的形式,对服务器进行认证。如图4所示,为本实施例三中数字证书的认证方法的流程示意图,在本实施例三的方案中,USB Key设备在接收到数字证书后,且USB Key设备在使用接收到的数字证书执行业务之前的任意时间点,执行以下操作步骤301 =USB Key设备通过客户端向服务器发送第二验证码和用户信息。所述第二验证码可以是随机数,该随机数可由USB Key设备生成,也可由客户端生成。需要说明的是,本实施例三中涉及的第二验证码和实施例二涉及的第一验证码是为了对USB Key设备和服务器分别发送的验证码加以区别,这两个验证码中的内容是否相同没有任何特殊的定义。步骤302 服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书, 以及该USB Key设备的保密标识。步骤303 服务器根据第二验证码、确定的数字证书和保密标识进行加密运算,得
到第三运算结果。步骤304 服务器将第三运算结果通过客户端发送给USB Key设备。步骤305 =USB Key设备根据第二验证码、本地接收到的数字证书和本地存储的保密标识进行加密运算,得到第四运算结果。步骤306 =USB Key设备将接收到的第三运算结果与计算得到的第四运算结果进行比较,若结果一致,则通过对服务器的认证,同时对该服务器发送的数字证书认证通过; 否则,没有通过对服务器的认证,同时对该服务器发送的数字证书认证不通过。需要说明的是,为方便描述,图4所示的流程示意图中,是将本实施例三中步骤 301 步骤306在实施例一的步骤107与步骤201之间执行,即先执行USB Key设备对服务器的认证,再执行服务器对USB Key设备的认证,本实施例三的方案也不限于先执行服务器对USB Key设备的认证,再执行USB Key设备对服务器的认证,或是服务器与USB Key设备之间相互认证并行执行。实施例四本实施例四的方案与实施例三类似,是在实施例二的基础上,实现USB Key设备对接收到的数字证书的合法性认证。本实施例四的方案中,USB Key设备不使用验证码的形式,直接对服务器进行认证。如图5所示,为本实施例四中一种数字证书的认证方法的流程示意图。在本实施例四的方案与实施例三相比,具有以下区别在本实施例四的方案中,步骤301中的USB Key设备可以不向服务器发送第二验证码,只向服务器发送用户信息,因此,在步骤302和步骤303中,服务器根据确定的数字证书和保密标识进行加密运算,得到第三运算结果;同时,在步骤305中,USB Key设备也根据本地接收到的数字证书和本地存储的保密标识进行加密运算,得到第四运算结果,并进行后续判断操作。由于本实施例四是在实施例二的基础上的优选方案,因此,本实施例四中的步骤 301 步骤306可在实施例二的步骤107与步骤201/之间执行。通过实施例三和实施例四的方法,在数字证书下载到USB Key设备之后,且用户使用下载了数字证书的USB Key设备执行业务之前,通过USB Key设备对服务器的认证,确保了USB Key设备从服务器下载的数字证书的合法性,这样就可以确保数字证书的合法使用。实施例一、二、三和四实现了服务器对USB Key设备的认证和USB Key设备对服务器的认证,这种双向认证的方式可以提高数字证书使用的合法性,并能保证用户执行业务的安全性。实施例五如图6所示,为本实施例五中一种数字证书的认证系统的结构示意图。本系统包括USB Key设备11和服务器12。所述USB Key设备11,用于根据接收到来自服务器12的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果,并发送该第一运算结果和用户 fn息ο所述服务器12,用于接收USB Key设备11发送的第一运算结果以及用户信息,并根据接收到的用户信息,确定发送给该USB Key设备11的数字证书和已存储的该USB Key 设备11的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果,以及,将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。所述服务器12,具体用于在USB Key设备11接收到数字证书之后,且服务器12响应USB Key设备11利用该数字证书执行业务之前,接收USB Key设备发送的第一运算结果以及用户信息。所述服务器12,具体用于在本地存储用户信息、USB Key设备11的硬件标识、USB Key设备11的保密标识的对应关系,并根据已发送的数字证书与接收数字证书的USB Key 设备11的用户信息之间的对应关系,确定接收到的用户信息对应的数字证书,以及,根据用户信息、USB Key设备11的硬件标识、USB Key设备11的保密标识的对应关系,确定接收到的用户信息对应的USB Key设备11的保密标识。所述服务器12,还用于对发送给该USB Key设备11的数字证书置使能标志,用户可以正常使用该数字证书进行数字签名、身份认证。所述服务器12,具体用于向USB Key设备11发送第一验证码,并根据确定的数字证书、保密标识和第一验证码进行加密运算后得到第二运算结果。USB Key设备11,具体用于根据接收到的第一验证码、数字证书和存储在安全存储区内的保密标识进行加密运算后得到第一运算结果。USB Key设备11,具体用于向服务器12发送第二验证码,并根据第二验证码、本地接收到的数字证书和本地存储的保密标识进行加密运算后得到第四运算结果,以及,将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证。
服务器12,具体用于利用接收到的用户信息,确定发送给USB Key设备11的数字证书,以及确定该USB Key设备11的保密标识后,根据接收到的第二验证码、确定的数字证书和保密标识进行加密运算,得到第三运算结果,并发送给USB Key设备11。服务器12,具体用于利用接收到的用户信息,确定发送给USB Key设备11的数字证书,以及确定该USB Key设备11的保密标识后,根据确定的数字证书和保密标识进行加密运算,得到第三运算结果,并发送给USB Key设备11。USB Key设备11,具体用于根据本地接收到的数字证书和本地存储的保密标识进行加密运算后得到第四运算结果,以及,将接收到的第三运算结果和第四运算结果进行比较,并根据比较结果对服务器12进行认证。较优地,本发明方案的一种数字证书的认证系统还可以包括客户端13。具体地,USB Key设备11可通过USB接口接入客户端13后,通过该客户端13与服务器12之间进行信息交互。实施例六如图7(a)和图7(b)所示,为本实施例六中服务器的结构框图,下面分别对其加以说明如图7(a)所示,本实施例六中服务器具体包括信息接收模块21、运算模块22、 比较模块23、存储模块M和标识模块25,其中信息接收模块21用于接收USB Key设备发送的第一运算结果以及用户信息,所述第一运算结果是USB Key设备根据接收到的数字证书和存储在安全存储区内的保密标识进行加密运算后得到的。运算模块22用于根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果;比较模块23用于将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务;否则,不允许USB Key 设备使用该数字证书执行业务。进一步地,存储模块M可用于存储用户信息、USB Key设备的硬件标识、USB Key 设备的保密标识的对应关系;则所述运算模块22可具体用于根据存储模块M中存储的对应关系和接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key 设备的保密标识。较优地,标识模块25可用于在比较模块23的比较结果为第一运算结果和第二运算结果相同时,对发送给该USB Key设备的数字证书置使能标志,用户可以正常使用该数字证书进行数字签名、身份认证。图7(a)所示的服务器可对USB Key设备的合法性进行认证,在图7 (a)的基础上, 可以对服务器的架构做进一步变形,如图7(b)所示,服务器还包括信息发送模块沈,用于向USB Key设备发送第一验证码。由于图7(b)所示的服务器相对于图7 (a)所示的服务器而言,可进一步地利用第一验证码来对USB Key设备进行认证,因此,所述运算模块22也可具体用于根据确定的数字证书、保密标识和第一验证码进行加密运算后得到第二运算结果,且信息接收模块21接收到的第一运算结果也是USB Key设备根据第一验证码、数字证书和保密标识进行运算后发送的。因此,比较模块23可具体用于将与第一验证码相关的第一运算结果和第二运算结果进行比较后,对USB Key设备进行认证。
除了按照图7 (a)和图7(b)所示的服务器对USB Key设备进行认证外,本实施例六中的服务器也可由USB Key设备对自身进行认证,因此,所述信息接收模块21还用于接收 USB Key设备发送的第二验证码;所述运算模块22还用于利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及该USB Key设备的保密标识后,根据第二验证码、确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备,让USB Key设备对服务器自身进行认证。在本实施例的方案中,服务器除了根据USB Key设备发送的第二验证码,让USB Key设备对自身进行认证外,还可以由所述运算模块22,直接利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及该USB Key设备的保密标识后,根据确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备,让USB Key设备对服务器自身进行认证。实施例七如图8(a)和图8(b)所示,为本实施例七中USB Key设备的结构示意图,下面分别加以说明如图8 (a)所示,USB Key设备具体包括信息接收模块31、运算模块32和信息发送模块33,其中信息接收模块31用于来自服务器的数字证书;运算模块32用于根据接收到来自服务器的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果;信息发送模块33用于发送该第一运算结果和用户信息。进一步地,若服务器需要通过验证码的形式对USB Key设备进行认证,则所述信息接收模块31还用于接收服务器发送的第一验证码;所述运算模块32具体用于根据接收到的第一验证码、数字证书和存储在安全存储区内的保密标识进行加密运算后得到第一运算结果。USB Key设备向服务器发送第一运算结果是为了让服务器对自身进行认证。本实施例方案中,还可以由USB Key设备对服务器进行认证,因此,如图8(a)所示,USB Key设备还可以包括第一比较模块34,第一比较模块34与其他模块协同工作过程为所述信息发送模块33还用于向服务器发送第二验证码;所述信息接收模块31还用于来自服务器的第三运算结果,所述第三运算结果是服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据接收到的第二验证码、确定的数字证书和保密标识进行加密运算得到的;所述运算模块32具体用于根据第二验证码、接收到的数字证书和存储的保密标识进行加密运算后得到第四运算结果;第一比较模块34将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证。在图8(a)所示的USB Key设备中,USB Key设备通过向服务器发送的第二验证码, 对服务器进行认证,本实施例的方案也不限于不使用验证码的形式,对服务器进行认证。如图8(b)所示,可包括第二比较模块35,该第二比较模块35与其他模块协同工作过程为所述信息接收模块31还用于接收来自服务器的第三运算结果,所述第三运算结果是服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据确定的数字证书和保密标识进行加密运算得到的;所述运算
1模块32具体用于根据接收到的数字证书和存储的保密标识进行加密运算后得到第四运算结果;第二比较模块35将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证。 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种数字证书的认证方法,其特征在于,该方法包括服务器接收USB Key设备发送的第一运算结果以及用户信息,所述第一运算结果是USB Key设备根据接收到的数字证书和存储在安全存储区内的保密标识进行加密运算后得到的;服务器根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该 USB Key设备的保密标识,并对确定的数字证书和保密标识进行加密运算,得到第二运算结果;服务器将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。
2.如权利要求1所述的数字证书的认证方法,其特征在于,服务器接收USBKey设备发送的第一运算结果以及用户信息,具体包括USB Key设备接收到数字证书之后,且服务器响应USB Key设备利用该数字证书执行业务之前,服务器接收USB Key设备发送的第一运算结果以及用户信息。
3.如权利要求1所述的数字证书的认证方法,其特征在于,服务器接收USBKey设备发送的第一运算结果以及用户信息之前,所述方法还包括服务器在本地存储用户信息、USB Key设备的保密标识的对应关系;服务器根据接收到的用户信息,确定数字证书和保密标识,具体包括服务器根据已发送的数字证书与接收数字证书的USB Key设备的用户信息之间的对应关系,确定接收到的用户信息对应的数字证书,以及,根据用户信息、USB Key设备的保密标识的对应关系,确定接收到的用户信息对应的USB Key设备的保密标识。
4.如权利要求1所述的数字证书的认证方法,其特征在于,服务器确定第一运算结果和第二运算结果相同时,所述方法还包括服务器对发送给该USB Key设备的数字证书置使能标志。
5.如权利要求1所述的数字证书的认证方法,其特征在于,服务器接收USBKey设备发送的第一运算结果以及用户信息之前,还包括服务器向USB Key设备发送第一验证码;所述第一运算结果是USB Key设备根据接收到的第一验证码、数字证书和存储在安全存储区内的保密标识进行加密运算后得到的;所述第二运算结果是服务器根据确定的数字证书、保密标识和第一验证码进行加密运算后得到的。
6.如权利要求1 5任一所述的数字证书的认证方法,其特征在于,USBKey设备接收到数字证书之后,且服务器响应USB Key设备利用该数字证书执行业务之前,所述方法还包括服务器接收USB Key设备发送的第二验证码;服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及该USB Key 设备的保密标识后,根据第二验证码、确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备,指示USB Key设备根据接收到的第三运算结果与USB Key设备本地计算的第四运算结果进行比较,并根据比较结果对服务器进行认证;所述第四运算结果是USB Key设备根据第二验证码、本地接收到的数字证书和本地存储的保密标识进行加密运算后得到的。
7.如权利要求5所述的数字证书的认证方法,其特征在于,USBKey设备接收到数字证书之后,且服务器响应USB Key设备利用该数字证书执行业务之前,所述方法还包括服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及该USB Key 设备的保密标识后,根据确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备,指示USB Key设备根据接收到的第三运算结果与USB Key设备本地计算的第四运算结果进行比较,并根据比较结果对服务器进行认证;所述第四运算结果是USB Key设备根据本地接收到的数字证书和本地存储的保密标识进行加密运算后得到的。
8.一种数字证书的认证系统,其特征在于,该系统包括USB Key设备,用于根据接收到来自服务器的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果,并发送该第一运算结果和用户信息;服务器,用于接收USB Key设备发送的第一运算结果以及用户信息,并根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果,以及,将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务; 否则,不允许USB Key设备使用该数字证书执行业务。
9.如权利要求8所述的数字证书的认证系统,其特征在于,所述服务器,具体用于在USB Key设备接收到数字证书之后,且服务器响应USB Key设备利用该数字证书执行业务之前,接收USB Key设备发送的第一运算结果以及用户信息。
10.如权利要求8所述的数字证书的认证系统,其特征在于,所述服务器,具体用于在本地存储用户信息、USB Key设备的硬件标识、USB Key设备的保密标识的对应关系,并根据已发送的数字证书与接收数字证书的USB Key设备的用户信息之间的对应关系,确定接收到的用户信息对应的数字证书,以及,根据用户信息、USB Key 设备的硬件标识、USB Key设备的保密标识的对应关系,确定接收到的用户信息对应的USB Key设备的保密标识。
11.如权利要求8所述的数字证书的认证系统,其特征在于,所述服务器,还用于对发送给该USB Key设备的数字证书置使能标志。
12.如权利要求8所述的数字证书的认证系统,其特征在于,所述服务器,具体用于向USB Key设备发送第一验证码,并根据确定的数字证书、保密标识和第一验证码进行加密运算后得到第二运算结果;USB Key设备,具体用于根据接收到的第一验证码、数字证书和存储在安全存储区内的保密标识进行加密运算后得到第一运算结果。
13.如权利要求8 12任一所述的数字证书的认证系统,其特征在于,USB Key设备,具体用于向服务器发送第二验证码,并根据第二验证码、本地接收到的数字证书和本地存储的保密标识进行加密运算后得到第四运算结果,以及,将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证;服务器,具体用于利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据接收到的第二验证码、确定的数字证书和保密标识进行加密运算,得到第三运算结果,并发送给USB Key设备。
14.如权利要求12所述的数字证书的认证系统,其特征在于,USB Key设备,具体用于根据本地接收到的数字证书和本地存储的保密标识进行加密运算后得到第四运算结果,以及,将接收到的第三运算结果和第四运算结果进行比较,并根据比较结果对服务器进行认证;服务器,具体用于利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据确定的数字证书和保密标识进行加密运算,得到第三运算结果,并发送给USB Key设备。
15.一种服务器,其特征在于,所述服务器包括信息接收模块,用于接收USB Key设备发送的第一运算结果以及用户信息,所述第一运算结果是USB Key设备根据接收到的数字证书和存储在安全存储区内的保密标识进行加密运算后得到的;运算模块,用于根据接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识,并根据确定的数字证书和保密标识进行加密运算,得到第二运算结果;比较模块,用于将所述第一运算结果和第二运算结果进行比较,若相同,则允许该USB Key设备使用该数字证书执行业务;否则,不允许USB Key设备使用该数字证书执行业务。
16.如权利要求15所述的服务器,其特征在于,还包括存储模块,用于存储用户信息、USB Key设备的硬件标识、USB Key设备的保密标识的对应关系;所述运算模块,具体用于根据存储模块中存储的对应关系和接收到的用户信息,确定发送给该USB Key设备的数字证书和已存储的该USB Key设备的保密标识。
17.如权利要求15所述的服务器,其特征在于,还包括标识模块,用于在比较模块的比较结果为第一运算结果和第二运算结果相同时,对发送给该USB Key设备的数字证书置使能标志。
18.如权利要求15所述的服务器,其特征在于,还包括信息发送模块,用于向USB Key设备发送第一验证码;所述运算模块,具体用于根据确定的数字证书、保密标识和第一验证码进行加密运算后得到第二运算结果。
19.如权利要求15 18任一所述的服务器,其特征在于,所述信息接收模块,还用于接收USB Key设备发送的第二验证码;所述运算模块,还用于利用接收到的用户信息,确定发送给USB Key设备的数字证书, 以及该USB Key设备的保密标识后,根据第二验证码、确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备。
20.如权利要求18所述的服务器,其特征在于,所述运算模块,还用于利用接收到的用户信息,确定发送给USB Key设备的数字证书, 以及该USB Key设备的保密标识后,根据确定的数字证书和保密标识进行加密运算,将得到的第三运算结果发送给USB Key设备。
21.—种USB Key设备,其特征在于,所述USB Key设备包括信息接收模块,用于来自服务器的数字证书;运算模块,用于根据接收到来自服务器的数字证书和存储在本地安全存储区内的保密标识进行加密运算,得到第一运算结果;信息发送模块,用于发送该第一运算结果和用户信息。
22.如权利要求21所述的USBKey设备,其特征在于,所述信息接收模块,还用于接收服务器发送的第一验证码;所述运算模块,具体用于根据接收到的第一验证码、数字证书和存储在安全存储区内的保密标识进行加密运算后得到第一运算结果。
23.如权利要求21或22所述的USBKey设备,其特征在于,所述信息发送模块,用于向服务器发送第二验证码;所述信息接收模块,还用于来自服务器的第三运算结果,所述第三运算结果是服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据接收到的第二验证码、确定的数字证书和保密标识进行加密运算得到的;所述运算模块,具体用于根据第二验证码、接收到的数字证书和存储的保密标识进行加密运算后得到第四运算结果;所述USB Key设备还包括第一比较模块,将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证。
24.如权利要求22所述的USBKey设备,其特征在于,所述信息接收模块,还用于来自服务器的第三运算结果,所述第三运算结果是服务器利用接收到的用户信息,确定发送给USB Key设备的数字证书,以及确定该USB Key设备的保密标识后,根据确定的数字证书和保密标识进行加密运算得到的;所述运算模块,具体用于根据接收到的数字证书和存储的保密标识进行加密运算后得到第四运算结果;所述USB Key设备还包括第二比较模块,将接收到的第三运算结果和所述第四运算结果进行比较,并根据比较结果对服务器进行认证。
全文摘要
本发明方案公开了一种数字证书的认证方法、系统、USB Key设备和服务器,在USB Key设备内的安全存储区额外存储具有唯一性的保密标识,并在服务器内建立USB Key设备的硬件标识和保密标识之间的对应关系,将利用该保密标识和接收到的数字证书进行加密运算后的运算结果发送给服务器,使服务器利用本地存储的保密标识对接收到的运算结果进行认证,服务器只允许在认证通过时,USB Key设备使用接收到的数字证书。由于客户端无法读取USB Key设备内安全存储区内的信息,因此,即使非法USB Key设备获取数字证书后,不会通过服务器的认证,避免了数字证书的非法使用,提高了合法用户的业务安全性。
文档编号H04L9/32GK102271042SQ20111024731
公开日2011年12月7日 申请日期2011年8月25日 优先权日2011年8月25日
发明者刘永军 申请人:北京神州绿盟信息安全科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1