一种对用户进行认证的方法

文档序号:7719119阅读:235来源:国知局
专利名称:一种对用户进行认证的方法
技术领域
本发明涉及网络安全技术,特别涉及一种对用户进行认证的方法。
背景技术
通常在用户上网的过程中,如果需要进行密码验证,用户会通过浏览器(如IE)向服务器提交用户密码。目前通过这种方式提交的用户密码大都是明文,容易被窃取,因而存在极大的安全隐患。
为了解决以明文方式提供认证密码存在的安全问题,现有技术中对密码采取加密方法,该加密方法需要用到超文本传输安全协议(HTTPS),通过HTTPS中一系列的协商和加密处理,实现对用户密码的加密。但是该方法存在以下缺点1、超文本传输安全协议(HTTPS)算法复杂,要求设备性能比较高,不利于使用在宽带产品内部;2、超文本传输安全协议(HTTPS)交互过程多,增加网络负担发明内容本发明的目的在于提供一种进行认证的方法,实现对用户的认证数据加密传输,以提高安全性。
本发明的技术方案一种对用户进行认证的方法,该方法包括步骤服务器响应客户端的接入请求产生一随机数,并将包含该随机数的认证页面下发到客户端;客户端执行加密程序,该加密程序利用所述随机数对用户通过认证页面提供的认证数据进行加密运算;客户端将加密结果提交到服务器;
服务器执行与客户端相同的加密程序,该加密程序利用所述随机数对保存的该用户的认证数据进行加密运算,并将得到的加密结果与客户端上报的加密结果进行比较;如果相同则通过认证,否则认证失败。
根据上述技术方案客户端执行的加密程序为保存于客户本地的加密程序,或者是随认证页面下发的加密程序。
所述加密程序为MD5算法的加密程序。
所述认证数据为用户名、用户密码之一或其组合。
本发明的加密算法比较简单,因而对设备性能要求不高;认证过程中也没有更多的协商过程,因此对网络资源占用较少,能减轻网络负担。


图1为本发明的组网结构图;图2、图3为本发明的认证流程图;具体实施方式
参阅图1,上图简单的示意了该发明的应用组网图。图中的宽带接入设备可以是MA5200。网络可以是由简单的交换机组成的简单网络,也可以是包含了路由器等设备的复杂网络。由客户端向宽带接入设备发起接入请求,完成认证过程。
本实施例的认证方法是在超文本传输协议(HTTP)中利用MD5算法实现对用户的密码加密。MD5算法是一种不可逆的加密算法,通常的加密流程是,服务器给客户端下发一个随机数(该随机数称为challenge),客户端用MD5算法将需要加密的数据(通常就是用户的密码)和随机数一起计算,将计算的结果报给服务器。一般服务器端也保留有用户需要加密的数据,他按照同样的方法用MD5将该数据和challenge一起计算,然后将计算的结果和用户上报的结果做比较,如果一致的话,则认为数据正确,否则认为数据错误。因为算法不可逆,所以用户加密后的密码在网络中传送没有安全问题。
参阅图2,认证过程如下(1)客户接入网络时向认证服务器请求认证页面;(2)服务器接到客户端的请求后,产生一随机数,并将包括该随机数和MD5算法的脚本代码,以及用户名、密码的输入框和提交按钮等的页面下发到客户端;(3)用户通过客户端的认证页面输入用户名和用户密码,在用户点击提交按钮时,客户端运行页面中包含的MD5算法脚本代码,利用随机数对用户密码加密;(4)客户端将加密数据上报给服务器;(5)服务器端运行与客户端相同的加密程序,利用所述随机数对用户保存在本地的密码进行加密计算,并将用户提交的加密数据和本端计算的加密结果进行比较,如果两者相等,则认为密码正确,认证成功;否则认为密码错误,认证失败。
通常,服务器在比较得出结果后,会根据结果给用户不同得回应,如下面流程图的“回应比较后的结果”所示。因为回应的内容取决于服务器的实现。
对图2所示流程的一种变化,加密程序可事先保存于客户端,参阅图3所示,步骤(2)中,服务器接到客户端的请求后,产生一随机数,并将包含该随机数,以及用户名、密码的输入框和提交按钮等的页面下发到客户端。步骤(3)中,用户通过客户端的认证页面输入用户名和用户密码,在用户点击提交按钮时,客户端运行本地保存的MD5算法程序,利用随机数对用户密码加密。其余步骤与图2相同。
对于用户认证的数据,除了用户密码外,还可为用户名以及用户名与密码的组合等。
上述的服务器可为门户认证服务器(Portal Server)或WEB认证服务器。
权利要求
1.一种对用户进行认证的方法,其特征在于包括步骤服务器响应客户端的接入请求产生一随机数,并将包含该随机数的认证页面下发到客户端;客户端执行加密程序,该加密程序利用所述随机数对用户通过认证页面提供的认证数据进行加密运算;客户端将加密结果提交到服务器;服务器执行与客户端相同的加密程序,该加密程序利用所述随机数对保存的该用户的认证数据进行加密运算,并将得到的加密结果与客户端上报的加密结果进行比较;如果相同则通过认证,否则认证失败。
2.如权利要求1所述的方法,其特征在于,客户端执行的加密程序为保存于客户本地的加密程序,或者是随认证页面下发的加密程序。
3.如权利要求1或2所述的方法,其特征在于,所述加密程序为MD5算法的加密程序。
4.如权利要求1所述的方法,其特征在于,所述认证数据为用户名、用户密码之一或其组合。
5.如权利要求1所述的方法,其特征在于,还包括步骤服务器向客户端返回认证结果。
6.如权利要求1、2或5所述的方法,其特征在于,所述的服务器为门户认证服务器(Portal Server)或WEB认证服务器。
7.如权利要求1所述的方法,其特征在于,所述客户端与服务器之间采用的超文本传输协议(HTTP)协议。
全文摘要
本发明公开了一种对用户进行认证的方法,该方法为服务器响应客户端的认证请求产生一随机数,并将包含该随机数的认证页面下发到客户端;客户端执行加密程序对用户通过认证页面提供的认证数据进行加密运算;客户端将加密结果提交到服务器;服务器执行与客户端相同的加密程序对保存的该用户的认证数据进行加密运算,并将得到的加密结果与客户端上报的加密结果进行比较;如果相同则通过认证,否则认证失败。
文档编号H04L9/32GK1567294SQ0314885
公开日2005年1月19日 申请日期2003年6月14日 优先权日2003年6月14日
发明者沈宁国, 唐周和, 颜杨 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1