一种用户身份认证的方法及装置的制作方法

文档序号:7756110阅读:88来源:国知局
专利名称:一种用户身份认证的方法及装置的制作方法
技术领域
本发明涉及加解密技术,特别涉及一种用户身份认证的方法及装置。
背景技术
目前,数字签名技术已经在各种电子服务(如、电子商务、电子政务、网上办公等) 系统中使用。数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。 接收者只有用发送的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产 生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在传输 过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。但是,随着网络技术的发展,数字签名技术的安全性越来越受到各种黑客程序的 威胁。现有电子服务系统中,客户端采用USBKEY对用户身份进行认证,如,在USBKEY中对用 户输入的PIN码进行验证,验证通过后,再对服务数据采用私钥进行数字签名并发往服务 器,服务器认证的是客户端的私钥签名,可见,USBKEY只认PIN码持有人,而服务器只认私 钥签名。那么,若USBKEY遭受网络攻击,PIN码在验证过程中被破解,则USBKEY仍然会认为 PIN码使用者是合法用户,从而将服务数据进行数字签名后发往服务器,而服务器由于只认 私钥签名,因此,并不知道USBKEY遭到网络攻击,仍然按照正常流程对服务数据进行处理, 显然,这样会给电子服务系统带来诸多安全隐患,

发明内容
本发明提供一种用户身份认证的方法及装置,用以提高电子服务系统的安全性。本发明实施例提供的具体技术方案如下一种用户身份认证方法,包括客户端获取用户使用电子服务时产生的服务数据,并接收用户输入的身份验证 码;客户端将服务数据与所述身份验证码一同作为待签名数据,进行数字签名处理;所述客户端将经数字签名处理得到的签名数据发往服务器,指示所述服务器基于 获得的签名数据中包含的身份验证码对用户进行身份认证。一种用户身份认证方法,包括服务器接收客户端采用上述方法发送的签名数据;服务器对接收的签名数据进行数字签名验证;服务器确定所述签名数据通过数字签名验证时,基于所述签名数据包含的身份验 证码对用户进行身份认证。一种用于用户身份认证的客户端,包括获取单元,用于获取用户使用电子服务时产生的服务数据,并接收用户输入的身 份验证码;数字签名单元,用于将服务数据与所述身份验证码一同作为待签名数据,进行数字签名处理;通信单元,用于将经数字签名处理得到的签名数据发往服务器,指示所述服务器 基于获得的签名数据中包含的身份验证码对用户进行身份认证。一种用于用户身份认证的服务器,包括通信单元,用于接收上述客户端发送的签名数据;数字签名验证单元,用于对接收的签名数据进行数字签名验证;身份认证单元,用于确定所述签名数据通过数字签名验证时,基于所述签名数据 包含的身份验证码对用户进行身份认证。本发明实施例中,对整个数字签名过程进行了重新设计,取消了原有的在客户端 对用户身份进行认证的不可靠环节,将身份认证的过程,安全后移至服务器侧来完成,由于 服务器侧可以有效地对网络环境进行监测,及时察觉受到的网络攻击,因此,可以迅速采用 有效的应对措施对网络攻击进行抵挡,避免网络攻击的扩大化,从而提高了电子服务系统 的安全性,保证了电子服务系统的服务质量。


图1为本发明实施例中网络环境示意图;图2为本发明实施例中客户端功能结构示意图;图3为本发明实施例中服务器功能结构示意图;图4为本发明实施例中客户端指示服务器对用户进行身份验证流程图;图5为本发明实施例中服务器根据客户端指示对用户进行身份验证流程图。
具体实施例方式本发明提供一种用户身份认证的方法及装置,用以提高电子服务系统的安全性。下面结合附图对本发明优选的实施方式进行详细说明。参阅图1所示,本发明实施例中,电子商务网络内包括若干客户端和服务器,其 中,参阅图2所示,本发明实施例中,客户端包括获取单元10、数字签名单元11和通信 单元12,其中,获取单元10,用于获取用户使用电子服务时产生的服务数据,并接收用户输入的 身份验证码;数字签名单元11,用于将服务数据与所述身份验证码一同作为待签名数据,进行 数字签名处理;通信单元12,用于将经数字签名处理得到的签名数据发往服务器,指示所述服务 器基于获得的签名数据中包含的身份验证码对用户进行身份认证。在上述客户端中,通信单元12将经数字签名处理得到的签名数据发往服务器之 前,采用与服务端约定的公钥对所述签名数据进行加密,指示所述服务器采用其本地的私 钥进行解密。获取单元10接收用户输入的身份验证码的过程中,对所述身份验证码进行加密 或者混淆。
参阅图3所示,本发明实施例中,服务器包括通信单元20、数字签名验证单元21和 身份认证单元22,其中,通信单元20,用于接收上述客户端发送的签名数据;数字签名验证单元21,用于对接收的签名数据进行数字签名验证;身份认证单元22,用于确定所述签名数据通过数字签名验证时,基于签名数据包 含的身份验证码对用户进行身份认证。在上述服务器中,若通信单元20接收的签名数据经客户端采用与本服务器约定 的公钥进行加密,则数字签名验证单元21在对签名数据进行数字签名验证之前,采用本地 私钥对接收的加密后的签名数据进行解密。身份认证单元22基于接收的签名数据包含的身份验证码对用户进行身份认证 时,若身份验证码经客户端进行加密或混淆,则先对该身份验证码进行解密或解混淆。如图3所示,上述服务器中进一不包括处理单元23,用于通过通信单元20将身份 认证结果返回至客户端,并基于身份认证结果对签名数据中包含的服务数据进行相应后续处理。基于上述系统架构,参阅图4所示,本发明实施例中,在电子商务网络内,客户端 指示服务器对用户身份进行验证的详细流程如下步骤400 客户端获取用户使用电子服务时产生的服务数据,并接收用户输入的 身份验证码。本实施例中,上述服务数据可以是多种形式的数据,包含但不限于用户使用电子 商务时产生的交易数据,用户使用电子政务时产生的业务数据,以及用户在网上办公过程 中产生的与用户身份相关的资料数据等等。若服务数据是用户使用电子商务时产生的交易数据,则用户输入的身份验证码可 以是用户使用的交易密码(如,PIN码);若服务数据是用户使用电子政务时产生的业务数 据,则用户输入的身份验证码可以是用户使用的业务密码;而若服务数据是用户在网上办 公过程中产生的与用户身份相关的资料数据,则用户输入的身份验证码可以是用户更新资 料时使用的验证密码(如,登录密码),在此不再赘述。另一方面,客户端在接收用户输入的身份验证码的过程中,可以对用户输入的身 份验证码进行加密或混淆。本实施例中,对身份验证码进行加密可以采用对称加密算法或 者非对称加密算法。而对身份验证码进行混淆则是在用户输入身份验证码的过程中,大量 制造假的干扰噪音,再随机地把用户输入的身份验证码插入到干扰噪音中,这样,就无法分 辨哪些是用户输入的内容,哪些是干扰噪音。本实施例中,对身份验证码进行加密或者混 淆,是为了保证身份验证码的安全,防止其被窃取或监听,例如,防止身份验证码从签名控 件/操作系统的消息中被获窃取,或者从键盘被监听;是一种较优的选择,若网络环境的安 全性较高,则为了节省操作流程,也可以不对身份验证码进行加密或混淆。步骤410 客户端将用户的身份验证码与服务数据一起作为待签名数据,进行数 字签名处理。步骤420 客户端将经数字签名处理后获得的签名数据采用与服务器约定的公钥 加密后发送给服务器,指示所述服务器基于获得的签名数据中包含的身份验证码对用户进 行身份认证。
本实施例中,将签名数据采用与服务器约定的公钥加密后发送至服务器,是为了 进一步保证数字签名不被滥用,公钥加密后所有加密后的签名数据只有服务器能解开。这 是一种较优的选择,若网络环境的安全性较高,则为了节省操作流程,也可以不对签名数据 进行公钥加密。基于上述实施例中,参阅图5所示,服务器根据从客户端接收的经公钥加密的签 名数据,对用户进行身份验证的详细流程如下步骤500 服务器接收客户端发送的经公钥加密的签名数据,并采用本地私钥对 其进行解密,得到签名数据。实际应用中,若在步骤420中,客户端未采用与服务器约定的公钥对签名数据进 行加密,则也可以不执行步骤500的解密流程,而直接执行步骤510,在此不再赘述。现有技术下客户端对签名数据采用私钥加密,服务器采用公钥解密,而本发明实 施例中,客户端则是采用公钥加密,服务器则采用私钥解密,这样做可以解决客户端软件分 发时由于私钥不一致而导致的各种问题。步骤510 服务器对获得的签名数据的进行数字签名验证,以确定其数据完整性。本实施例中,客户端对待签名数据进行数字签名处理时,采用指定函数(如HASH 函数)基于待签名数据生成一个摘要信息,并将待签名数据与相应的摘要信息一同视为 签名数据,经公钥加密后发往服务器,服务器只有采用私钥进行解密后才能获得签名数据 (包括原待签名数据和相应的摘要信息),然后,服务器采用与客户端约定的指定函数(如 HASH函数),基于解密后的签名数据中包含的原待签名数据生成一个摘要信息,并将生成 的摘要信息与签名数据中携带的摘要信息进行比对,若两者相同,则说明接收到的原待签 名数据是完整的,在传输过程中没有被修改,若两者不同,则说明接收到的原待签名数据不 是完整的,在传输过程中曾被修改,因此,进行数字签名验证能够证明信息的完整性。步骤520 服务器确定签名数据通过数字签名验证后,将签名数据中包含的原待 签名数据解析为服务数据和用户的身份验证码。步骤530 服务器基于用户的身份验证码对用户进行身份认证。本实施例中,若客户端在步骤400中曾对用户的身份验证码进行加密或混淆,则 服务器在执行步骤530时,还需先对用户的身份验证码进行解密或解混淆;客户端采用的 加密或混淆的方式,会与服务器预先约定,或者通过其他信令另行通知。步骤540 服务器向客户端返回认证结果,并根据认证结果对服务数据进行相应 后续处理。本实施例中,若认证结果为通过认证,则服务器可以对服务数据进行解析并执行 相应操作。例如,服务数据为交易数据时,服务器将交易数据提交至对应的应用服务器进行 电子商务层面的处理;又例如,服务数据为业务数据时,服务器将业务数据提交至对应的应 用服务器进行电子政务层面的处理;又例如,服务数据为用户的资料数据时,服务器根据该 资料数据更新用户的相关信息。若认证结果为未通过认证,则服务器向客户端返回告警信 息,提示用户未通过身份认证,并丢弃接收到的服务数据。本发明实施例中,对整个数字签名过程进行了重新设计,取消了原有的在客户端 对用户身份进行认证的不可靠环节,将身份认证的过程,安全后移至服务器侧来完成,由于 服务器侧可以有效地对网络环境进行监测,及时察觉受到的网络攻击(如,非法签名、超过
7门限值的身份验证码尝试次数等等),因此,可以迅速采用有效的应对措施对网络攻击进行 抵挡,避免网络攻击的扩大化,从而提高了电子服务系统的安全性,保证了电子服务系统的 服务质量。 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
权利要求
一种用户身份认证方法,其特征在于,包括客户端获取用户使用电子服务时产生的服务数据,并接收用户输入的身份验证码;客户端将服务数据与所述身份验证码一同作为待签名数据,进行数字签名处理;所述客户端将经数字签名处理得到的签名数据发往服务器,指示所述服务器基于获得的签名数据中包含的身份验证码对用户进行身份认证。
2.如权利要求1所述的方法,其特征在于,所述客户端接收用户输入的身份验证码的 过程中,对所述身份验证码进行加密或者混淆。
3.如权利要求1或2所述的方法,其特征在于,所述客户端将经数字签名处理得到的签 名数据发往服务器之前,采用与服务端约定的公钥对所述签名数据进行加密,指示所述服 务器采用其本地的私钥进行解密。
4.一种用户身份认证方法,其特征在于,包括服务器接收客户端采用如权利要求1所述的方法发送的签名数据;服务器对接收的签名数据进行数字签名验证;服务器确定所述签名数据通过数字签名验证时,基于所述签名数据包含的身份验证码 对用户进行身份认证。
5.如权利要求4所述的方法,其特征在于,包括若服务器接收的签名数据经客户端采 用与本服务器约定的公钥进行加密,则服务器在对签名数据进行数字签名验证之前,采用 本地私钥对接收的加密后的签名数据进行解密。
6.如权利要求4或5所述的方法,其特征在于,所述服务器基于接收的签名数据包含的 身份验证码对用户进行身份认证时,若所述身份验证码经客户端进行加密或混淆,则服务 器先对该身份验证码进行解密或解混淆。
7.如权利要求6所述的方法,其特征在于,所述服务器将身份认证结果返回至客户端, 并基于所述身份认证结果对签名数据中包含的服务数据进行相应后续处理。
8.一种用于用户身份认证的客户端,其特征在于,包括获取单元,用于获取用户使用电子服务时产生的服务数据,并接收用户输入的身份验 证码;数字签名单元,用于将服务数据与所述身份验证码一同作为待签名数据,进行数字签 名处理;通信单元,用于将经数字签名处理得到的签名数据发往服务器,指示所述服务器基于 获得的签名数据中包含的身份验证码对用户进行身份认证。
9.如权利要求8所述的客户端,其特征在于,所述获取单元接收用户输入的身份验证 码的过程中,对所述身份验证码进行加密或者混淆。
10.如权利要求8或9所述的客户端,其特征在于,所述通信单元将经数字签名处理得 到的签名数据发往服务器之前,采用与服务端约定的公钥对所述签名数据进行加密,指示 所述服务器采用其本地的私钥进行解密。
11.一种用于用户身份认证的服务器,其特征在于,包括通信单元,用于接收如权利要求8所述的客户端发送的签名数据;数字签名验证单元,用于对接收的签名数据进行数字签名验证;身份认证单元,用于确定所述签名数据通过数字签名验证时,基于所述签名数据包含的身份验证码对用户进行身份认证。
12.如权利要求11所述的服务器,其特征在于,若通信单元接收的签名数据经客户端 采用与本服务器约定的公钥进行加密,则所述数字签名验证单元在对签名数据进行数字签 名验证之前,采用本地私钥对接收的加密后的签名数据进行解密。
13.如权利要求12所述的服务器,其特征在于,所述身份认证单元基于接收的签名数 据包含的身份验证码对用户进行身份认证时,若所述身份验证码经客户端进行加密或混 淆,则先对该身份验证码进行解密或解混淆。
14.如权利要求13所述的服务器,其特征在于,进一步包括处理单元,用于通过所述通信单元将身份认证结果返回至客户端,并基于所述身份认 证结果对签名数据中包含的服务数据进行相应后续处理。
全文摘要
本发明涉及加解密技术,公开了一种用户身份认证的方法,用于提高数字签名流程的安全性,该方法为对整个数字签名过程进行了重新设计,取消了原有的在客户端对用户身份进行认证的不可靠环节,将身份认证的过程,安全后移至服务器侧来完成,由于服务器侧可以有效地对网络环境进行监测,及时察觉受到的网络攻击,因此,可以迅速采用有效的应对措施对网络攻击进行抵挡,避免网络攻击的扩大化,从而提高了电子服务系统的安全性,保证了电子服务系统的服务质量。本发明同时公开了用于用户身份认证的客户端和服务器。
文档编号H04L9/32GK101924635SQ20101024536
公开日2010年12月22日 申请日期2010年8月4日 优先权日2010年8月4日
发明者吴晓军 申请人:吴晓军
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1