一种基于两个隔离设备实现网络身份认证的方法和系统的制作方法

文档序号:7742962阅读:167来源:国知局
专利名称:一种基于两个隔离设备实现网络身份认证的方法和系统的制作方法
技术领域
本发明涉及增强数字证书进行网络身份认证安全性的方法和系统。
背景技术
随着因特网的出现,在线交易的数量也迅猛增加。随着这种交易的增加,也带来了诸如交易安全性、交易各方的认证、不可否认交易以及此类交易中所用设备的认证和验证等问题。针对这些问题,已经开发了一种公钥基础设施(PKI),其中,认证机构(CA)向通过开放网络(如因特网)参与电子商务的个人和机构发放数字证书和一对相关的密钥。这些证书起到认证交易参与双方的身份,实现不可否认交易的作用,并与密钥对相关联,据此可以完成通过因特网执行交易加密。PKI基础结构型交易的在过去几年已经取得了显著的发展。PKI基础结构型交易在电子商务领域的应用最为广泛。以网上银行为例,归结起来有两种类型,一种是软证书类型,一种是USB Key证书类型。这两类证书的应用,通常构建在Windows所集成的证书服务接口之上。目前,在国际上有两种比较通用的对加密设备进行管理的接口。一种是H(CS#11标准接口,另一种是
S MicrosoftCSP (Cryptographic Service Provider) 1^ Π-CryptoAPI ^
口。其中CSP是微软专为Windows系列操作系统制定的底层加密接口,用于管理硬件或软件形式的加密设备,实现数据加密、解密,数字签名、验证和数据摘要(即HASH)等。CSP是Windows安全应用的基础,在Windows操作系统上实现https安全浏览(即 SSL安全数据通信)和实现安全隧道(如Ipsec)功能,都必需有CSP参与密码运算。其中, 微软基本CSP包括RSABase,DssBase等,还有提供1 位以上加密密钥的增强型CSP。基本CSP只提供40位对称加密和512位RSA非对称加密,这样的密钥长度恰在可破密码的范围内,是不安全的。第三方CSP可由加密设备厂商按照微软制定的标准接口开发,通过微软签名后安装到系统中使用。所谓软证书,是指用户请求并下载与个人身份绑定的PKI证书至个人计算机(或者由银行或其他类似机构代办),然后可将其与相关的密钥对结合用于安全认证的因特网交易。软证书使用的是Windows操作系统中自带的CSP程序,而且IE内置了对此内置 CSP程序的支持,因此用户无需安装驱动程序或附加软件,下载证书的过程普通用户一般可按页面提示完成。因此,软证书在易用性方面具备较大的优势。软证书的缺点是,个人计算机上的操作系统有能力获知PKI证书、密钥对等信息中国金融认证中心提示,“软证书”存在安全隐患。它不强制用户设置证书使用口令,其他人登录同一台电脑就能直接使用。“软证书”的私钥可以导出,从而给木马程序以可乘之机,将证书复制到其他电脑上使用。此前,曾有银行发生“软证书”被攻破的案例,个别银行2008 年干脆取消了“软证书”的网上支付功能。
除此之外,“软证书”被下载至用户操作系统,一旦用户重新安装操作系统,就会丢失软证书,不得不去银行补办,而补办证书通常需要产生额外的费用。这也是“软证书”不如USB Key证书的一个地方。所谓USB Key证书,是指用户请求并下载与个人身份绑定的证书至USB Key硬件装置(或者由银行或其他类似机构代办),此USB Key与普通的U盘是完全不同的,其主体是一块安全芯片,私钥和数字证书(或对数字证书的引用)存储在此安全芯片硬件装置中。并且,此安全芯片具备计算能力,支持生成密钥对、数字签名和加解密等计算任务。USB Key证书的优点是,个人计算机上的操作系统无法获知PKI证书、密钥对等信息。但是,目前USB Key证书又分为一代和二代两种,一代USB Key证书,在接入到计算机上时,可以通过远程直接操作,这使得远程遥控类的木马有机可乘。二代USB Key证书, 有一个液晶显示屏,可以回显待签名数据(如金额等),并且USB Key上有一个确认按钮,必须按下确认按钮,安全芯片才会完成数字签名计算,这样可进一步防范远程遥控类木马,并且利用回显功能,防止用户签名的数据在用户操作系统中被木马篡改而用户一无所知。因为安全性高,各大银行对于采用USB Key证书进行的网上支付、转账的限制是最小的。但是USB Key证书中安全芯片的存储容量非常有限,通常只有32KB,这限制了 USB Key证书作为通用的解决方案。目前,各家银行均独立发布USB Key,增大了用户的拥有成本和妥善保管的难度。另外,USB Key虽然无需安装驱动,但是毕竟是硬件设备,无法使用Windows自带的CSP程序,因此USB Key的厂商需要开发并提供能管理和使用此硬件设备的CSP程序,而用户必须安装此CSP程序才能使用USB Key。因此,用户在第一次使用USB Key会遇到一定的麻烦,可能需要客服人员的支持才能完成安装动作,对于银行来说,又进一步增加了客户服务的成本。推而广之,在用户使用互联网服务过程中,存在着很多需要进行身份认证的坏节。 比如QQ/MSN登录、网络游戏登录、在线股票交易、线上商城登录等,这些情形都与用户的个人财产安全是直接相关的,采用USB Key证书无疑也是最安全的手段。但是,有限的存储容量、客服成本、不佳的用户体验、硬件成本无疑阻碍了 USB Key证书成为通用的解决方案。因此,希望给予PKI基础结构开发一种系统,这种系统可以集合软证书用户体验较佳和USB Key证书安全性高、不易丢失的优点,同时进一步解决USB Key存储容量不足的难题,降低客服成本及硬件成本,为网络身份认证提供一种可以兼顾用户、开发者、服务提供商多方利益的通用解决方案。随着互联网的发展和普及,越来越多的设备开始提供了接入互联网的能力,如 PDA、智能手机、上网本、智能本、智能手机、智能手持设备(iPod Touch, PDA)、电纸书等,这些设备可以统称为网络计算设备,他们都能独立的运行操作系统和安装软件,都能接入互联网,只是接入互联网的方式可能不同,比如智能手机可以通过短信、彩信、WAP等网关通过 GPRS、CDMA、3G等移动通信网络接入互联网。现在,越来越多的人们开始拥有两个以上的网络计算设备,而此现状也为网络身份认证提供了解决安全风险的新途径。

发明内容
本发明基于两个隔离设备提供了解决上述问题的解决方案。具体而言,本发明提出了一种增强网络身份认证安全性的方法,将网络身份认证过程使用的网络计算设备由一个增加到物理上隔离的两个网络计算设备,并且保证每个网络计算设备不处理完成身份认证的全部信息,从而提升了用户在互联网上登录和交易活动的安全性。上述两个网络计算设备,其中一个网络计算设备称为普通客户端,而另外一个网络计算设备称为认证客户端。服务器端与普通客户端和认证客户端有通信能力。认证客户端包含唯一信息,而服务端能识别此唯一信息。网络身份认证步骤如下A、用户通过所述普通客户端向服务端发出认证请求,并附认证附加信息;B、所述服务端收到普通客户端的认证请求后,将认证附加信息片段发送给所述认证客户端;C、所述认证客户端收到认证附加信息片段后,请求用户确认;D、所述认证客户端得到用户的确认信息后,将确认信息和唯一信息返回给所述服务器端;E、所述服务器端比对该唯一信息是否和认证附加信息匹配,完成身份认证流程。根据本发明的实施例,可以基于PKI公钥基础设施体系,将个人计算机作为普通客户端,以帐号ID和密码作为附认证附加信息,将智能手机作为认证客户端,以经用户数字证书签名的数据为唯一信息,来进行网络身份认证。根据本发明的实施例,可以在帐号ID和密码简单身份认证机制中,增加一个根认证密码,将个人计算机作为普通客户端,以账号ID和密码作为附认证附加信息,将智能手机作为认证客户端,以根认证密码为唯一信息,来进行网络身份认证。为了减小根认证密码在传输过程中被截获的风险,可以引入将根密码与认证客户端随机生成的字串以及附加信息片段组合后,加密再进行传输的安全措施。根据本发明的实施例,还可以只基于帐号ID和密码简单身份认证机制,以个人计算机作为普通客户端,以帐号ID以及服务端随机生成的验证码作为附认证附加信息,将智能手机作为认证客户端,以用户密码为唯一信息,来进行网络身份认证。为了减小用户密码在传输过程中被截获的风险,可以引入将用户密码与认证客户端随机生成的字串以及附加信息片段组合后,加密再进行传输的安全措施。随后参考下列附图所示的具体最佳实施例,对本发明的其他特征和优点予以更详细的说明,附图中相同的参考数字用于标识相同的部件。


图1是本发明实施例所涉及基本单元的方框图。图2是本发明实施例的简要工作流程图。图3是本发明实施例中中认证客户端所涉及基本单元的方框图。
具体实施例方式为了方便对本发明的原理和特征的理解,下文将参考一示范实施例的实施来予以说明。具体地来说,本发明是针对安装了 Windows 2000及以上操作系统、IE浏览器并且可接入互联网的计算机作为普通客户端,和安装了 Windows Mobile操作系统可接入互联网的智能手机作为认证客户端,以及一台接入互联网的普通服务器作为服务端来进行描述的,此外,本发明是结合PKI公钥基础设施体系,并且是针对网上银行服务来说明的。但应理解,这不是唯一可以实施本发明的实施例。相反,本发明可以应用于各种不同的操作系统,例如Linux,Android, Symbian, Mac OS, Chrome OS操作系统等;可以应用于不同的网络计算设备,如笔记本、上网本、智能本、智能手机、智能手持设备(iPod Touch, PDA)、电纸书等;可以不必受1 I公钥基础设施体系约束,而是可用于公钥和/或私钥来使用加密技术并通过数字证书或其它类似技术进行认证的安全系统,也可以只是最简单的帐号ID和密码认证机制;可以不是针对网上银行服务,可以是各类网站服务、即时通讯服务、 网上银行服务、在线支付服务、网络游戏服务、线上股票交易服务、在线数据备份等。图1显示根据本发明实施例的方框图。在图1中,个人计算机作为普通客户端,通过操作系统自带的IE浏览器连接互联网访问网上银行服务。智能手机作为认证客户端,安装了认证客户端软件,该软件可以连接互联网与网上银行服务通讯。用户通过IE浏览器输入和提交帐号ID和密码以及其他额外信息(如验证码等),并通过智能手机上的认证客户端软件来对登录或交易信息进行数字签名并提交服务端,整个过程中个人计算机和智能手机之间没有直接或中转的数据通信。图2所示的流程图给出了本发明实施例的简要工作流程1.用户通过IE发起交易请求用户在个人计算机上通过操作系统自带的IE浏览器连接互联网访问网上银行服务。此处交易请求涵盖了网上交易过程中可能发生的各种事件,如登录,转帐,线上支付等。 在不同事件中,认证附加信息将有所不同。比如在登录时,用户输入的帐号ID和密码以及其他额外信息(如验证码等),或者输入身份证ID和密码以及其他额外信息(如验证码等),作为认证附加信息将被提交至网上银行服务。在网上转帐流程,用户仅需输入目标账户ID和转帐金额等信息,页面kssion中缓存的用户帐号信息作为认证附加信息将被提交至网上银行服务。在线上支付流程,用户输入的帐号ID和密码以及其他额外信息(如验证码等),以及在页面kssion中缓存的订单信息作为认证附加信息将被提交至网上银行服务。2.服务端生成和发送认证附加信息片段服务端对用户提交的认证附加信息进行初步验证,然后将帐号ID的一部分以及除密码以外的其他信息作为认证附加信息片段发送至智能手机。在发送之前,网上银行服务端会将认证附加信息片段利用服务端的证书和私钥进行一次签名动作,并用用户注册网银服务时登记的公钥对认证附加信息片段及其数字签名进行加密,以防止这些信息被篡改。3.用户核对并确认认证附加信息片段如果信息未被篡改,智能手机上的认证客户端软件可以使用用户私钥解开认证附加信息片段。否则,将无法解开认证附加信息片段。然后,利用注册网银服务时已经获得的服务器端公钥来验证数字签名。上述步骤通过后,认证客户端软件将显示认证附加信息片段显示给用户。用户此时可以核对帐号前几位,转帐的目标帐号,交易金额,甚至送货地址, 收件人等订单信息。4.认证客户端进行数字签名并提交认证信息
目前被广泛采用的网上银行服务是基于PKI体系的证书方式的安全支付解决方案,又均符合微软CryptoAPI/CryptoSPI应用架构,本发明实施例也不例外,但同时也支持其他的安全方案。简单来说认证客户端软件将通过加密应用编程接口(CryptoAPI)函数枚举到Windows Mobile中自带的标准加密服务提供者(CSP)程序,并通过加密系统编程接口 (CryptoSPI)与 CSP 通信。通过CSP程序,认证客户端软件可以完成认证附加信息片段的数字签名动作。然后,认证客户端软件将签名结果发送至服务端。5.服务端完成交易服务端收到认证信息后,通过核对数字签名来确认用户身份,开完成相应的交易动作。图3显示根据本发明实施例中认证客户端的方框图,认证客户端软件符合微软 CryptoAPI/CryptoSPI应用架构,他包含以下模块A)网络通信模块网络通信模块负责与网上银行服务端之间的通讯连接。在本实例中,基于TCP/IP 网络协议,通过Wi-Fi无线网络接入互联网并与网上银行服务端之间建立通讯连接。B)数字证书模块在线上交易过程中,数字证书模块将调用CryptoAPI函数请求Windows Mobile自带的CSP程序完成下列操作,并获取其计算结果A.生成和交换密钥;B.加密和解密数据;C.编码和解码证书;D.管理和保证证书的安全性;E.创建和验证数字签名,并计算散列。C)用户交互模块在线上交易过程中,用户交互模块负责显示认证附加信息片段,并在用户按下确认按钮后对此数据进行数字签名。在此过程中,用户交互模块会通过网络通信模块与网上银行服务端之间建立通讯连接,接受和发送数据,并调用数字证书模块解密认证附加信息片段、进行数字签名等动作。本发明实施例提供了较好的用户易用性和通用性,具体体现在A)减小了丢失证书的风险软证书被下载至个人计算机,证书会因为用户重新安装操作系统而丢失。因为病毒木马的泛滥,用户重新安装操作系统的几率是很大的。将数字证书下载至智能手机,智能手机上虽然也有操作系统,但是因为手机病毒木马目前几乎没有,需要重新安装几率非常之小,证书丢失的风险随之减小。B)随身携带,随时使用人们通常习惯随身携带手机,这比使用USB Key证书更方便。在需要时,用户只需利用任意可用的计算机即可进行线上交易。C)通用性本质上说,本发明实施例仍属于软证书类型,与USB Key证书相比,无需每个银行配备一个智能手机,顶多是为每家银行的网上银行服务安装一个认证客户端软件,但是也可以是多家银行共用一个认证客户端软件。也就是说,用户的智能手机可作为通用的认证终端。本发明实施例的提供了与USB Key证书相近的安全性,其安全性体现在A)只截获帐号ID和密码无效个人计算机潜伏的最大风险是盗号木马,他可以盗取帐号ID和密码,但是因为数字签名的步骤不在个人计算机及其连接的设备上进行,因此,即使用户的帐号ID和密码被盗也不会存在任何风险。B)只盗取数字证书无效假定黑容有办法盗取智能手机的数字证书,但是因为智能手机中并没有帐号ID 和密码,也无法通过网上银行服务的身份认证。C)同时盗取所有认证信息几率小要通过网上银行服务的身份认证,需要同时取得帐号ID,密码,数字证书,用户私钥,这些信息无法从一个设备中全部获得。木马程序要同时感染两个设备,收集全部信息才能盗号成功。并且即使全部获得这些信息,也需要人工将这两组信息进行关联。因此,来自互联网的木马很难盗取采用本发明实施例进行身份认证的帐号。从上述内容,可以看出,本发明基于两个隔离设备提供了解决上述问题的解决方案。具体而言,本发明提出了一种增强网络身份认证安全性的方法,将网络身份认证过程使用的网络计算设备由一个增加到物理上隔离的两个网络计算设备,并且保证每个网络计算设备不处理完成身份认证的全部信息,从而提升了用户在互联网上登录和交易活动的安全性。本发明的实施例,基于手机和用户高度绑定的特点,用智能手机实现专用的硬件密钥装置相近的功能,并使得手机成为一个通用的移动数字签名终端,用户利用公共计算机也可以安全的完成登录和交易活动,大大提高了用户体验,使得PKI证书体系更加易于实施,并为基于H(I/CA结构的用户身份认证提供了通用的解决方案。本专业人员会理解,可以在不背离其精神或核心特征的前提下以各种特定形式实施本发明。例如,本发明是以个人计算机和智能手机作为两个隔离设备进行描述的,但是, 实施本发明还可以是利用PC和iPod Touch作为两个隔离设备,或者利用上网本和电纸书作为两个隔离设备。此外,本发明用户身份验证是沿用了网上银行常见的帐号ID+密码+ 数字证书的方式,但是实施本发明还可以是最简单的帐号ID+密码的方式进行用户身份验证,或者身份证号码+密码+数字证书的方式进行用户身份验证。此外,本发明是以认证客户端的操作系统为Windows Mobile操作系统,认证客户端软件调用操作系统内置CSP程序来进行描述的,但是实施本发明还可以是以Symbian为认证客户端的操作系统,以PKCS#11 为接口实现客户端软件。因此,本说明书中公开的实施例完全视为说明性的,而非限定性的,本发明范围由所附权利要求书限定,而非前述描述的内容,只包括属于此范围和及其等效物范围和含义之内的所有变更。
权利要求
1.一种基于两个隔离设备实现网络身份认证的方法和系统。该系统分为普通客户端、 认证客户端和服务端三个部分。所述普通客户端和认证客户端分别运行于由同一用户所持有的两个物理上独立并且隔离的网络计算设备上。所述服务端包含认证服务。所述服务器端与所述普通客户端有通信能力,所述服务器端与所述认证客户端有通信能力,所述认证客户端与所述普通客户端可有直接通信或可无直接通信能力。所述认证客户端包含唯一信息。所述服务端能识别所述认证客户端的唯一信息。网络身份认证步骤如下A、用户通过所述普通客户端向服务端发出认证请求,并附认证附加信息;B、所述服务端收到普通客户端的认证请求后,将认证附加信息片段发送给所述认证客户端;C、所述认证客户端收到认证附加信息片段后,请求用户确认;D、所述认证客户端得到用户的确认信息后,将确认信息和唯一信息返回给所述服务器端;E、所述服务器端比对该唯一信息是否和认证附加信息匹配,完成身份认证流程。
2.根据权利要求1所述的方法和系统,其特征在于,所述的网络计算设备指任何具有计算单元,可运行操作系统和安装软件的设备,如个人计算机(PC)、笔记本、上网本、智能本、智能手机、智能手持设备(iPod Touch,PDA)、电纸书、网络电视等。
3.根据权利要求1所述的方法和系统,其特征在于,所述的普通客户端,可以是Web浏览器,也可以是普通的应用程序,而所述的认证客户端可以是手机软件或计算机软件,也可以是专门的硬件认证设备或者软件和硬件认证设备的组合。
4.根据权利要求1所述的方法和系统,其特征在于,所述的服务端,可包含或通过第三方提供跨网络通讯服务,以保证不在同一网络的所述服务器端与所述普通客户端有通信能力,或者不在同一网络的所述服务器端与所述认证客户端有通信能力。
5.根据权利要求4所述的方法和系统,其特征在于,所述的跨网络通讯服务,可以是建立互联网和移动通信网络之间的通信通道的服务,也可以是建立任意非直接相连网络之间的通信通道的服务。其典型的通讯方式是认证客户端经由短信、彩信、WAP等网关通过 GPRS、CDMA、3G等移动通信网络接入互联网,并与互联网上的跨网络通讯服务相连。
6.根据权利要求1所述的方法和系统,其特征在于,所述的由普通客户端提交的认证附加信息可以只是帐号(或用户名)和密码和用户数据(如订单、转账信息等),不包含任何与用户数字证书相关的信息,而认证客户端收到的认证附加信息片段可以是经过服务端用经CA机构认证的私钥进行签名的数据,其中不包含任何与用户密码相关的信息,并且所收到的帐号(或用户名)只是片段数据。
7.根据权利要求1所述的方法和系统,其特征在于,所述的认证客户端可识别来自服务端的认证附加信息并分辨其并非伪造,而所述的服务端可识别认证客户端的唯一信息并分辨出该唯一信息并非伪造。其方法可以基于H(I/CA公钥基础设施安全体系,双方通过数字签名机制来防范他人伪造信息,也可以是其他可被证明能够防范他人伪造信息的方法。
8.根据权利要求1所述的方法和系统,其特征在于,所述的服务端可以是任意涉及个人及企业资产或机密数据安全的服务,如网上银行服务、在线支付服务、网络游戏服务、线上股票交易服务、在线数据备份等。
9.根据权利要求1所述的方法和系统,其特征在于,所述的服务端和普通客户端可以是接入互联网,但也可以位于移动通信网络甚至其他网络(如局域网),认证客户端可以是接入移动通信网络,但也可以位于互联网甚至其他网络(如局域网)。
10.根据权利要求3所述的方法和系统,其特征在于,所述的Web浏览器可以是运行于任意用户操作系统(Windows,Linux, Mac OS, Android, Symbbian 等),可以是 hternet Explorer (IE),也可以任意非 IE 测览器(如 Firefox, Chrome, Opera 等)。
全文摘要
本发明涉及一种基于两个隔离设备实现网络身份认证的方法和系统。通过将网络身份认证过程使用的网络计算设备由一个增加到物理上隔离的两个网络计算设备,并且保证每个网络计算设备不处理完成身份认证的全部信息,从而提升了用户在互联网上登录和交易活动的安全性。本发明的一个典型应用是基于手机和用户高度绑定的特点,用手机实现专用的硬件密钥装置相同的功能,并使得手机成为一个通用的移动数字签名终端,用户利用公共计算机也可以安全的完成登录和交易活动,大大提高了用户体验,使得PKI证书体系更加易于实施,并为基于PKI/CA结构的网络身份认证提供了通用的安全解决方案。
文档编号H04L29/06GK102195932SQ20101011828
公开日2011年9月21日 申请日期2010年3月5日 优先权日2010年3月5日
发明者冯伟, 张勇 申请人:北京路模思科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1