基于数字证书的密码学操作方法及装置转让专利

申请号 : CN201310072095.3

文献号 : CN103152344B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王胜男黎晋廷李斌张永强刘镪

申请人 : 广东数字证书认证中心有限公司

摘要 :

本发明公开了一种基于数字证书的密码学操作方法,包括:在接入设备中查询与登录用户对应的数字证书,将查询到的数字证书返回至登录用户;其中,接入设备中预存有各个用户的数字证书;接入设备接收登录用户提交的密码学操作请求;接入设备根据密码学操作请求执行相应的密码学操作,将操作结果返回至登录用户。还公开了一种基于数字证书的密码学操作装置。本发明采用接入设备集中存储和管理用户数字证书,可以批量更新证书,克服了USB Key存储容量不足的问题。用户只需输入PIN码就可实现基于数字证书的认证,提升了用户体验。避免了USB Key的开发,密码学操作由接入设备完成,节省了用户终端的资源,提高用户终端运行效率。

权利要求 :

1.一种基于数字证书的密码学操作方法,其特征在于,包括以下步骤:接入设备对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应;

在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;

所述接入设备接收所述登录用户提交的密码学操作请求;

所述接入设备根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。

2.根据权利要求1所述的基于数字证书的密码学操作方法,其特征在于,所述接入设备对预存的各个用户的数字证书进行批量更新。

3.根据权利要求1所述的基于数字证书的密码学操作方法,其特征在于,在所述在接入设备中查询与登录用户对应的数字证书的步骤之前,包括以下步骤:所述接入设备对所述登录用户进行身份验证。

4.根据权利要求1所述的基于数字证书的密码学操作方法,其特征在于,所述接入设备根据所述密码学操作请求执行相应的密码学操作的步骤,包括以下步骤:如果所述密码学操作请求不需要私钥,则所述接入设备执行相应的密码学操作;

如果所述密码学操作请求需要私钥,则所述接入设备根据所述验证码对登录用户输入的PIN码进行验证,验证通过后调用所述私钥执行相应的密码学操作。

5.根据权利要求4所述的基于数字证书的密码学操作方法,其特征在于,所述接入设备根据所述验证码对登录用户输入的PIN码进行验证的步骤,包括以下步骤:所述接入设备接收所述登录用户输入的PIN码;

所述接入设备根据预设的运算方法对接收的所述PIN码进行运算;

如果上述运算结果与所述验证码一致,则验证通过。

6.根据权利要求1所述的基于数字证书的密码学操作方法,其特征在于,所述接入设备接收所述登录用户提交的密码学操作请求的步骤,包括以下步骤:所述登录用户通过IE提交密码学操作请求;

IE通过CryptoAPI将所述密码学操作请求发送至用户端的加密服务提供程序;

所述加密服务提供程序将所述密码学操作请求发送至所述接入设备;

所述接入设备接收所述密码学操作请求;

所述接入设备将操作结果返回至所述登录用户的步骤,包括以下步骤:所述接入设备将所述操作结果发送至用户端的加密服务提供程序;

所述加密服务提供程序通过CryptoAPI将所述操作结果发送至IE。

7.根据权利要求1至6中任一项所述的基于数字证书的密码学操作方法,其特征在于,所述密码学操作请求包括签名、验证、加密和/或解密的操作请求。

8.一种基于数字证书的密码学操作装置,其特征在于,包括预存模块、查询模块、接收模块和执行模块;

所述预存模块在接入设备上对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应;

所述查询模块,用于在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;其中,所述接入设备中预存有各个用户的数字证书;

所述接收模块,用于在所述接入设备上接收所述登录用户提交的密码学操作请求;

所述执行模块,用于在所述接入设备上根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。

说明书 :

基于数字证书的密码学操作方法及装置

技术领域

[0001] 本发明涉及数字证书技术领域,尤其涉及一种基于数字证书的密码学操作方法和一种基于数字证书的密码学操作装置。

背景技术

[0002] 随着互联网及业务系统应用的逐步深入,电子商务系统技术使在网上购物的顾客能够极其方便轻松地获得商家和企业的信息,但同时也增加了某些敏感或有价值的数据被滥用的风险。如何防范风险,增强网上安全问题显得尤为重要。PKI(Public Key Infrastructure,公钥基础设施),是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,有效保证用户的身份安全和数据安全。然而数字证书实质上表现为带有用户信息和密钥的一个数据文件,如何保护数字证书本身又成为PKI体系中最薄弱的环节,目前一般的做法是采用USB Key来保存数字证书和用户私钥。每个USB Key都带有PIN(Personal Identification Number,个人识别密码)码保护,这样USB Key的硬件和PIN码构成了可以使用证书的两个必要因子,即双因素认证。
[0003] USB Key是一种USB接口的硬件设备,主体是一块安全芯片,私钥和数字证书存储在此安全芯片硬件装置中。并且,安全芯片具备计算能力,支持生成密钥对、数字签名和加解密等计算任务。USB Key的优点是,个人计算机上的操作系统无法获知PKI证书、密钥对等信息。但USB Key安全芯片的存储容量非常有限,通常只有32KB,限制了USB Key作为通用的解决方案。此外,USB Key虽然无需安装驱动,但毕竟是硬件设备,无法使用Windows自带的CSP程序。因此USB Key的厂商需要开发并提供能管理和使用此硬件设备的CSP程序,而用户需安装此CSP程序才能使用USB Key。因此,增加了厂商的开发成本,影响了用户体验。另外,密码学操作需要在USB Key中执行,消耗了用户终端的资源。

发明内容

[0004] 基于此,本发明提供了一种基于数字证书的密码学操作方法和一种基于数字证书的密码学操作装置。
[0005] 一种基于数字证书的密码学操作方法,包括以下步骤:
[0006] 在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;其中,所述接入设备中预存有各个用户的数字证书;
[0007] 所述接入设备接收所述登录用户提交的密码学操作请求;
[0008] 所述接入设备根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。
[0009] 与一般技术相比,本发明基于数字证书的密码学操作方法采用接入设备集中存储和管理用户数字证书,可以批量更新证书,不存在证书丢失的问题,克服了USB Key存储容量不足的问题。用户不需要插入USB Key,只需输入PIN码就可实现基于数字证书的认证,提升了用户体验。本发明避免了USB Key的开发,密码学操作由接入设备完成,节省了用户终端的资源,提高用户终端运行效率。
[0010] 在其中一种实施例中,所述接入设备对预存的各个用户的数字证书进行批量更新。
[0011] 在其中一种实施例中,在所述在接入设备中查询与登录用户对应的数字证书的步骤之前,包括以下步骤:
[0012] 所述接入设备对所述登录用户进行身份验证。
[0013] 在其中一种实施例中,在所述在接入设备中查询与登录用户对应的数字证书的步骤之前,包括以下步骤:
[0014] 所述接入设备对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应。
[0015] 在其中一种实施例中,所述接入设备根据所述密码学操作请求执行相应的密码学操作的步骤,包括以下步骤:
[0016] 如果所述密码学操作请求不需要私钥,则所述接入设备执行相应的密码学操作;
[0017] 如果所述密码学操作请求需要私钥,则所述接入设备根据所述验证码对登录用户输入的PIN码进行验证,验证通过后调用所述私钥执行相应的密码学操作。
[0018] 在其中一种实施例中,所述接入设备根据所述验证码对登录用户输入的PIN码进行验证的步骤,包括以下步骤:
[0019] 所述接入设备接收所述登录用户输入的PIN码;
[0020] 所述接入设备根据预设的运算方法对接收的所述PIN码进行运算;
[0021] 如果上述运算结果与所述验证码一致,则验证通过。
[0022] 在其中一种实施例中,所述接入设备接收所述登录用户提交的密码学操作请求的步骤,包括以下步骤:
[0023] 所述登录用户通过IE提交密码学操作请求;
[0024] IE通过CryptoAPI将所述密码学操作请求发送至用户端的加密服务提供程序;
[0025] 所述加密服务提供程序将所述密码学操作请求发送至所述接入设备;
[0026] 所述接入设备接收所述密码学操作请求;
[0027] 所述接入设备将操作结果返回至所述登录用户的步骤,包括以下步骤:
[0028] 所述接入设备将所述操作结果发送至用户端的加密服务提供程序;
[0029] 所述加密服务提供程序通过CryptoAPI将所述操作结果发送至IE。
[0030] 在其中一种实施例中,所述密码学操作请求包括签名、验证、加密和/或解密的操作请求。
[0031] 一种基于数字证书的密码学操作装置,包括查询模块、接收模块和执行模块;
[0032] 所述查询模块,用于在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;其中,所述接入设备中预存有各个用户的数字证书;
[0033] 所述接收模块,用于在所述接入设备上接收所述登录用户提交的密码学操作请求;
[0034] 所述执行模块,用于在所述接入设备上根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。
[0035] 与一般技术相比,本发明基于数字证书的密码学操作装置采用接入设备集中存储和管理用户数字证书,可以批量更新证书,不存在证书丢失的问题,克服了USB Key存储容量不足的问题。用户不需要插入USB Key,只需输入PIN码就可实现基于数字证书的认证,提升了用户体验。本发明避免了USB Key的开发,密码学操作由接入设备完成,节省了用户终端的资源,提高用户终端运行效率。
[0036] 在其中一种实施例中,本发明基于数字证书的密码学操作装置还包括预存模块,所述预存模块在所述接入设备上对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应。

附图说明

[0037] 图1为本发明基于数字证书的密码学操作方法的流程示意图;
[0038] 图2为实施本发明基于数字证书的密码学操作方法的系统示意图;
[0039] 图3为本发明基于数字证书的密码学操作方法一个优选实施例的流程示意图;
[0040] 图4为本发明基于数字证书的密码学操作装置的结构示意图。

具体实施方式

[0041] 为更进一步阐述本发明所采取的技术手段及取得的效果,下面结合附图及较佳实施例,对本发明的技术方案,进行清楚和完整的描述。
[0042] 请参阅图1,为本发明基于数字证书的密码学操作方法的流程示意图。本发明基于数字证书的密码学操作方法,包括以下步骤:
[0043] S101在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;其中,所述接入设备中预存有各个用户的数字证书;
[0044] S102所述接入设备接收所述登录用户提交的密码学操作请求;
[0045] S103所述接入设备根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。
[0046] 在步骤S101中,对局域网内的每一个用户分配一张数字证书、一个私钥和一个PIN码,其中,所述数字证书、所述私钥和所述PIN码一一对应。所有用户的数字证书和私钥都集中存储在接入设备中,接入设备中还存有对PIN码进行验证的验证码。用户只需要保存PIN码,证书管理和签名、验证、加密、解密等密码学操作均由接入设备完成。用户可以通过虚拟CSP(Cryptographic Service Provider,加密服务提供程序)接口,通过TCP/IP将证书操作、密码学操作传送到接入设备执行。
[0047] 在其中一种实施例中,在接入设备中查询与登录用户对应的数字证书之前,所述接入设备对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应。
[0048] 在其中一种实施例中,所述接入设备对预存的各个用户的数字证书进行批量更新。在所述将数字证书和所述验证码集中存储在一个接入设备中之后,可对所述接入设备中存储的各个用户的数字证书进行批量更新,这样可及时存储用户的最新数字证书,提高了安全性。并且,批量更新的方式也降低了处理复杂度,效率更高。
[0049] 客户端可采用虚拟CSP代替Windows内置的CSP程序。虚拟CSP与IE之间采用Microsoft提供的加密应用程序接口(即Cryptography API,CryptoAPI),这样IE不需要做任何修改,即可安全的通过CryptoAPI调用虚拟CSP。虚拟CSP与接入设备之间建立安全通道,所有的密码学操作由虚拟CSP发送至接入设备完成。
[0050] 虚拟CSP和接入设备之间可预先建立好安全通道。IE将通过加密应用编程接口(即CryptoAPI)函数枚举到虚拟CSP,并通过加密系统编程接口(即CryptoAPI)与虚拟CSP通信。
[0051] 作为其中一个优选的实施例,请参阅图2,为实施本发明基于数字证书的密码学操作方法的系统示意图。接入设备分为三个模块:证书管理、密码学计算和网络管理模块。证书管理模块保管局域网所有用户的数字证书、私钥和用于对PIN码进行验证的验证码。密码学计算模块完成签名、验证、加密和解密等操作。网络管理模块实现连接网络的功能。实际应用中,接入设备可以基于路由器、网关等开发。
[0052] 请参阅图3,为本发明基于数字证书的密码学操作方法一个优选实施例的流程示意图。
[0053] 在其中一种实施例中,在接入设备中查询与登录用户对应的数字证书之前,所述接入设备对所述登录用户进行身份验证。
[0054] 可采用Portal认证的方式对用户的身份进行验证,在增强安全性的同时,减少了不必要的处理操作(如在无用户登录的情况下执行查询步骤等)。
[0055] 用户身份验证可采用如下步骤进行:虚拟CSP与接入设备进行身份鉴别,互相验证对方的身份,若验证通过,则接入设备绑定用户用于对PIN码进行验证的验证码、数字证书和私钥,并返回用户证书。具体的鉴别方式可采用Portal认证等。
[0056] 在其中一种实施例中,在步骤S102中,所述接入设备接收所述登录用户提交的密码学操作请求的步骤,包括以下步骤:
[0057] 所述登录用户通过IE提交密码学操作请求;
[0058] IE通过CryptoAPI将所述密码学操作请求发送至用户端的加密服务提供程序;
[0059] 所述加密服务提供程序将所述密码学操作请求发送至所述接入设备;
[0060] 所述接入设备接收所述密码学操作请求;
[0061] 在其中一种实施例中,所述密码学操作请求包括签名、验证、加密和/或解密的操作请求。对于本领域普通技术人员在阅读本专利后,所述密码学操作请求还可以为其它类型。
[0062] 在步骤S102中,用户在IE上提交签名、验证、加密、解密等密码学操作;IE通过CryptoAPI向虚拟CSP请求操作;若密码学操作请求不需要使用用户私钥,虚拟CSP发送密码学操作请求给接入设备;否则,虚拟CSP检查用户是否输入过PIN码,若输入过且PIN码正确,发送密码学操作请求给接入设备,否则,要求用户输入PIN码;用户输入PIN码,虚拟CSP将PIN码和密码学操作发送给接入设备。
[0063] 在其中一种实施例中,在步骤S103中,如果所述密码学操作请求不需要私钥,则所述接入设备执行相应的密码学操作;如果所述密码学操作请求需要私钥,则所述接入设备根据所述验证码对登录用户输入的PIN码进行验证,验证通过后调用所述私钥执行相应的密码学操作。
[0064] 在其中一种实施例中,所述接入设备接收所述登录用户输入的PIN码;所述接入设备根据预设的运算方法对接收的所述PIN码进行运算;如果上述运算结果与所述验证码一致,则验证通过。
[0065] 例如,若密码学操作请求不需要使用用户私钥,可通过虚拟CSP发送密码学操作请求给接入设备,则接入设备执行密码学操作,并将结果返回给虚拟CSP。然后通过虚拟CSP将操作结果返回给IE,IE将操作结果显示给用户。
[0066] 在步骤S103中,所述接入设备将操作结果返回至所述登录用户的步骤,包括以下步骤:
[0067] 所述接入设备将所述操作结果发送至用户端的加密服务提供程序;
[0068] 所述加密服务提供程序通过CryptoAPI将所述操作结果发送至IE。
[0069] 在所述接入设备将操作结果返回给用户之后,所述接入设备接收到用户发送的登出请求后,解除该用户所述数字证书、所述私钥和所述用于对PIN码进行验证的验证码之间的绑定。
[0070] 用户登出的过程可包括:用户点击Portal认证网站的登出按钮;IE通过CryptoAPI向虚拟CSP请求卸载证书;虚拟CSP删除本地证书,并向接入设备发送解除绑定请求;接入设备收到请求后,解除验证码和用户私钥的对应关系,发送响应给虚拟CSP;虚拟CSP收到响应后,返回给IE,用户登出成功。
[0071] 与一般技术相比,本发明基于数字证书的密码学操作方法采用接入设备集中存储和管理用户数字证书,可以批量更新证书,不存在证书丢失的问题,克服了USB Key存储容量不足的问题。用户不需要插入USB Key,只需输入PIN码就可实现基于数字证书的认证,提升了用户体验。本发明避免了USB Key的开发,密码学操作由接入设备完成,节省了用户终端的资源,提高用户终端运行效率。
[0072] 对局域网内每一个用户分配一张证书和一个PIN码,证书和PIN码一一对应,所有用户的证书和对应的PIN码都集中存储在一个接入设备中。用户只需要保存PIN码,证书管理和签名、验证、加密、解密等密码学操作均由接入设备完成。用户可以通过虚拟CSP(加密服务提供程序)接口,通过TCP/IP将证书操作、密码学操作传送到接入设备执行。
[0073] 在一些特定领域,如银行、政府机关等,用户人数比较少,且应用也比较固定,可以采用一种证书集中存储和使用的方式,既可实现USB Key的安全性高、不易丢失优点,又可解决USB Key存储容量不足问题,并可提高用户体验,降低开发成本。本发明在不改变用户体验的条件下,将密码学操作转移到服务端(即接入设备),用户端的应用程序不需进行改造。
[0074] 请参阅图4,为本发明基于数字证书的密码学操作装置的结构示意图。本发明基于数字证书的密码学操作装置,包括查询模块401、接收模块402和执行模块403;
[0075] 所述查询模块401,用于在接入设备中查询与登录用户对应的数字证书,将查询到的所述数字证书返回至所述登录用户;其中,所述接入设备中预存有各个用户的数字证书;
[0076] 所述接收模块402,用于在所述接入设备上接收所述登录用户提交的密码学操作请求;
[0077] 所述执行模块403,用于在所述接入设备上根据所述密码学操作请求执行相应的密码学操作,将操作结果返回至所述登录用户。
[0078] 在其中一个实施例中,本发明基于数字证书的密码学操作装置还包括更新模块,所述更新模块用于在所述接入设备上对预存的各个用户的数字证书进行批量更新。
[0079] 在其中一个实施例中,本发明基于数字证书的密码学操作装置还包括身份验证模块,在接入设备中查询与登录用户对应的数字证书之前,所述身份验证模块用于在所述接入设备上对所述登录用户进行身份验证。
[0080] 在其中一个实施例中,本发明基于数字证书的密码学操作装置还包括预存模块,在接入设备中查询与登录用户对应的数字证书之前,所述预存模块在所述接入设备上对分别分配给各个用户的数字证书、私钥和用于对PIN码进行验证的验证码进行预存;其中,所述数字证书、所述私钥和所述验证码一一对应。
[0081] 在其中一个实施例中,如果所述接收模块402接收的所述密码学操作请求不需要私钥,则所述执行模块403在所述接入设备上执行相应的密码学操作;
[0082] 如果所述接收模块402接收的所述密码学操作请求需要私钥,则所述执行模块403在所述接入设备上根据所述验证码对登录用户输入的PIN码进行验证,验证通过后调用所述私钥执行相应的密码学操作。
[0083] 在其中一个实施例中,本发明基于数字证书的密码学操作装置还包括PIN码验证模块,所述PIN码验证模块用于在所述接入设备上接收所述登录用户输入的PIN码;以及在所述接入设备上根据预设的运算方法对接收的所述PIN码进行运算;如果上述运算结果与所述验证码一致,则所述PIN码验证模块通过此PIN码验证。
[0084] 在其中一个实施例中:
[0085] 所述登录用户通过IE提交密码学操作请求;
[0086] IE通过CryptoAPI将所述密码学操作请求发送至用户端的加密服务提供程序;
[0087] 所述加密服务提供程序将所述密码学操作请求发送至所述接入设备;
[0088] 所述接收模块402在所述接入设备上接收所述密码学操作请求;
[0089] 本发明基于数字证书的密码学操作装置还包括发送模块,所述发送模块用于在所述接入设备上将所述操作结果发送至用户端的加密服务提供程序;
[0090] 所述加密服务提供程序通过CryptoAPI将所述操作结果发送至IE。
[0091] 在其中一个实施例中,所述密码学操作请求可包括签名、验证、加密和/或解密的操作请求。
[0092] 与一般技术相比,本发明基于数字证书的密码学操作装置采用接入设备集中存储和管理用户数字证书,可以批量更新证书,不存在证书丢失的问题,克服了USB Key存储容量不足的问题。用户不需要插入USB Key,只需输入PIN码就可实现基于数字证书的认证,提升了用户体验。本发明避免了USB Key的开发,密码学操作由接入设备完成,节省了用户终端的资源,提高用户终端运行效率。
[0093] 本发明在不改变用户操作复杂度的条件下,将密码学操作转移到服务端(即接入设备),用户端的应用程序不需进行改造。
[0094] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。