网上银行身份认证技术介绍

TIME:2019-03-15   click: 464 次

身份认证服务有一种鉴别实体真伪的方法。因数字证书在申请时身份已得到发证机构确认,因此应用系统对用户的身份认证时用它是非常合适的。在应用中,集成数字证书进行身份认证时,主要是验证用户是否有证书对应的私钥,即验证用户私钥对一段特定数据的签名是否正确。

例如,网上银行系统中,用户用U盾登录网银,U盾中存储了用户的证书和私钥,并通过密码对U盾进行保护。界面输入元素含义分别为:

①设备类型,表明采用的设备类型,网银支持多种类型的设备,如U盾、动态口令等;

②用户ID,一个容易记的名称;

③数字证书,显示设备中证书对应的使用者名称;

④证书密码,设备保护密码;

⑤验证码,图片对应字符,避免多次提交。

当用户单击“提交”按钮时,登录功能主要做了两件事:

①通过“证书密码”输入值验证用户是否有访问U盾的权限,此密码保护U盾不被非法访问;

②在获取访问U盾的权限后,使用U盾中的私钥对服务端传递来的一段随机数据进行签名,然后把签名值与证书提交到服务端,服务端用发送给客户端的随机数据,及用户提交的证书验证签名值。若验证通过,表明用户有证书对应私钥及其使用权限;若验证未通过,表明用户没有证书对应私钥的使用权限。

即使用户通过了签名值验证阶段,也不一定能够通过身份认证。一般情况下,业务系统还会验证用户证书的有效性。有效性验证包括:证书是否过期、是否作废、是否为指定CA签发、密钥用途等。

网上银行用户的身份认证过程是典型的挑战应答模式,由服务端给出挑战值,即一段随机数据,客户端应答挑战值,即签名随机数据,然后提交应答(包括签名值、证书等)。

出于安全考虑,为了避免重复攻击,每次身份认证时,服务端都应该给出不同的挑战值,使挑战值尽可能随机化。

上一篇:CA中心安全域包括 下一篇:企业级CA模式分为