一种认证实现方法、系统及相关装置的制作方法

文档序号:7855035阅读:136来源:国知局
专利名称:一种认证实现方法、系统及相关装置的制作方法
技术领域
本发明涉及IPv6 (Internet Protocol Version 6)网络通信中支持IPv6的动态主机配置协议(DHCP for IPv6, DHCPv6)协议技术,尤其涉及一种认证实现方法、系统及相
关装置。
背景技术
在宽带技术和宽带用户迅速成长的今日,IPv4地址空间的危机由来已久,这是导致IP技术版本升级的主要动力。中国下一代互联网示范工程(China' s Next GenerationInternet, CNGI)是国家级的战略项目,该项目的主要目标是以IPv6为核心,搭建下一代互联网的试验平台。此项目的启动标志着我国的IPv6进入了实质性发展阶段。各级运营商也正在加紧步伐部署IPv6网络,IPv6宽带接入网络已逐步进入商业试运营阶段。 IPv6基础协议的设计理念是希望IPv6网络能成为一个即插即用的接入网络。但是对于很多运营商而言,更需要进行有状态方式(即动态地址分配)来管理地址,所以DHCPv6应运而生。对于运营商及宽带用户,逐步开始使用DHCPv6为其设备以有状态方式分配IPv6地址及IPv6前缀,并且以无状态方式分配基于IPv6的计算机域名系统(DomainName System for IPv6,DNSv6)和地址族转换路由(Address Family Transition Router,AFTR)域名等重要选项。DHCPv6 与邻居发现协议(Neighbor Discovery Protocol, NDP)相比较,NDP属于无状态地址分配协议,更适合支持即插即用的IPv6用户,而对于需要用户认证及给IPv6用户下发DNSv6和AFTR域名等重要选项则能力欠缺。DHCPv6与点对点协议(Point to Point Protocol, PPP)协议相比较,虽然基于PPP实现的密码认证协议(Password Authentication Protocol, PAP)、询问握手认证协议(Challenge HandshakeAuthentication Protocol, CHAP)及微软-询问握手认证协议(Microsoft-ChallengeHandshake Authentication Protocol,MS-CHAP)等认证方式在安全认证上优势较为突出,但是PPP无法为IPv6用户分配IPv6地址及IPv6前缀,也不具备给IPv6用户下发DNSv6和AFTR域名等重要选项的能力。而对于DHCPv6来说,则拥有无状态服务(例如,递归计算机域名系统(DomainName System, DNS)服务器地址等)和有状态服务(例如,地址分配和前缀代理等)。与支持 IPv4 的动态主机配置协议(Dynamic Host Configuration Protocol for IPv4, DHCPv4)一致,如果用户的客户端与服务器位于不同的网络,并且因为该客户端缺乏一个初始化地址而不能彼此直接通信,那么中继节点(也称作中继代理)就在服务器和该客户端之间转发分组(即中继代理(RELAY)功能)。这些功能是NDP与PPP目前无法实现的。IPTV业务是一种基于IP宽带网络的为用户提供具有交互性和实用性以及服务质量(Quality of Service, QoS)保障和安全机制的多媒体业务,其终端类型包括电视机及其他终端,例如交互式多媒体业务终端(即机顶盒(Set Top Box, STB)),可以支持业务播放、功能选择、用户需求信息的上传、互联网服务与通讯等可选功能。在IPTV业务环境下,为实现端到端的DHCPv6功能,所涉及的各种设备与实现用户认证及地址分发的设备组成了 IPTV DHCPv6 系统。图I为IPTV业务网络拓扑图,描述了 DHCPv6的IPTV业务承载网结构。图I中上层设备用来传输模拟信号,下层用来传输数字信号。IPTV用户认证的流程为客户端、如STB向服务端宽带远程接入服务器(Broadband Remote AccessServer, BRAS)发送DHCPv6请求报文,客户端的用户名和密码以明文方式(如二进制码)封装在DHCPv6请求报文中。
DHCPv6请求报文经过家庭网关(Home Gateway, HG)、多用户居住单元(MultipleDwelling Unit,MDU) /数字用户线接入复用器(DSLAM)、光线路终端(Optical LineTerminal,OLT) / 限位开关(Limit Sffitch, LSff),发送到 BRAS,BRAS 根据系统配置对DHCPv6请求报文中的信息进行解析和认证。BRAS解析DHCPv6请求报文得到用户的媒体存取控制(Media Access Control, MAC)地址、0ptionl6的生产商类型数据内容或者0ptionl7选项数据内容(非加密内容),将MAC地址作为用户名,查找到DCCP服务器/AAA服务器存储的对应内容,与作为密码的DHCPv6请求报文中0ptionl6的生产商类型数据内容或者0ptionl7选项数据内容匹配,匹配结果一致则认证成功,否则认证失败。认证成功后,BRAS发送DHCPve广告报文通告给客户端认证后的授权和地址信息,客户端得到授权和地址信息后接入网络;认证失败则等待客户端超时或重新拨号。实现明文认证还可以使用用户的MAC地址作为域名,将DHCPV6中0ptionl6的生产商类型数据内容或者0ptionl7选项数据内容解析为用户名和密码;或者将DHCPv6中0ptionl6的生产商类型数据内容或者0ptionl7选项数据内容解析为用户名和域名,使用用户MAC地址作为密码等。图2描述了等效设备对DHCPv6 OPTION的支持要求在客户端、如STB处,插入DHCPv6请求报文的DHCPv6 Option中,Optionl和Opt ion 16为必选项,Opt ion 17为可选项。基于DHCPv6的认证,现有实现方法主要是使用DHCPv6报文中的选项(0ptionl6或0ptionl7)进行普通的明文密钥认证。对于服务端来说,一般采用DHCPv6报文中的0ptionl6或0ptionl7完成认证功能。0ptionl6及0ptionl7的具体封装格式由标准所规定。0ptionl6在由客户端发送给服务端的DHCPv6报文中并携带客户端生产商信息,其封装格式具体如图3所示,由生产商选项类型(0PTI0N_VEND0R_CLASS)、选项长度(option-len)、企业号(enterprise-number)及生产商类型数据(vendor-class-data)构成,其中生产商类型数据为可填写区域,由客户端填写生产商的相关信息。0ptionl7用于客户端与服务端互换生产商信息,客户端与服务端都可以填写并发送包含此选项的DHCPv6报文。其封装格式见图4,由选项数据(0PTI0N_VEND0R_CLASS)、选项长度(option-len)、企业号(enterprise-number)及选项数据(option_data)构成,其中选项数据为可填写区域,由客户端填写生产商的相关信息。以上现有DHCPv6选项认证方式,主要采用直接解析DHCPv6报文中的0ptionl6的生产商类型数据或0ptionl7的选项数据内容,充当认证信息(密码、或用户名+密码、或域名等)。这样用户的认证信息采用明文方式在网络中传输,存在着安全隐患
发明内容
有鉴于此,本发明的主要目的在于提供一种认证实现方法、系统及相关装置,用以解决现有认证不安全的问题。为达到上述目的,本发明的技术方案是这样实现的本发明提供了一种认证实现方法,包括服务端接收客户端通过DHCPv6选项扩展内容发送的密码加密字段和用户信息字段;服务端解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。上述方案中,所述服务端接收客户端通过DHCPv6选项扩展内容发送的密码加密字段和用户信息字段之前,进一步包括客户端将自身的DHCP唯一标识DUID和密码采用设定加密方式生成得到密码加密字段,通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段。上述方案中,所述客户端通过DHCPve选项扩展内容向服务端发送密码加密字段 和用户信息字段,具体为客户端通过DHCPv6选项中的0ptionl6的生产商类型数据或0ptionl7的选项数据向服务端发送密码加密字段和用户信息字段。上述方案中,所述基于密码加密字段和用户信息字段对客户端进行认证,具体为基于用户信息字段查找到服务端存储的所述客户端的密码,将客户端的DUID和密码采用与客户端对应的加密方式生成得到认证信息,将认证信息与解析得到的密码加密字段进行匹配,如果一致,则客户端通过认证。上述方案中,所述用户信息字段为用户名及域名组合字段或用户名字段。本发明还提供了一种认证实现系统,包括客户端,用于通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段;服务端,用于解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。上述方案中,所述客户端还用于将自身的DUID和密码采用设定加密方式生成得到密码加密字段。上述方案中,所述用户信息字段为用户名及域名组合字段或用户名字段。本发明还提供了一种实现认证的客户端,包括生成模块,用于在DHCPv6选项扩展内容中填写密码加密字段和用户信息字段;发送模块,用于向服务端发送DHCPv6选项扩展内容,以使服务端解析收到的DHCPv6选项扩展内容、并基于密码加密字段和用户信息字段对客户端进行认证。上述方案中,所述用户信息字段为用户名及域名组合字段或用户名字段。本发明还提供了一种实现认证的服务端,包括解析模块,用于解析收到的DHCPv6选项扩展内容,得到密码加密字段和用户信息字段;认证模块,用于基于密码加密字段和用户信息字段对客户端进行认证。上述方案中,所述用户信息字段为用户名及域名组合字段或用户名字段。应用本发明可以基于现有的DHCPv6选项进行认证,将密码采用加密方式进行加密,更加安全。并且应用本发明不需要更换服务端,原因为本发明是基于PPP的CHAP认证方式,对于已经支持此认证方式的服务端不需要重新设计,节省了系统的建设成本。从而本发明是一种更方面和更完善、更安全的基于DHCPv6选项的认证方案,而且提高接入用户安全性。


图I为现有IPTV业务网络拓扑示意图;图2为等效设备对DHCPv6 OPTION支持要求示意图;图3为现有DHCPv6 0ptionl6封装格式示意图;图4为现有DHCPv6 0ptionl7封装格式示意图;图5为本发明实施例中应用场景的简化网络拓扑图; 图6为本发明实施例中一种认证实现方法流程示意图;图7本发明实施例中DHCPv6 Option中加密数据封装格式示意图;图8为本发明实施例中客户端拨号认证的交互流程示意图。
具体实施例方式下面结合附图和具体实施例对本发明进行详细说明。在本发明中,为了解决现有技术的问题,基于多元的IPv6接入方式,提出了采用DHCPv6选项来实现安全认证的解决方法。本发明的基本思想是客户端通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段;服务端解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。其中,所述客户端通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段,具体为客户端通过DHCPv6选项中的0ptionl6的生产商类型数据或0ptionl7的选项数据向服务端发送密码加密字段和用户信息字段。所述客户端通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段之前,还包括客户端将自身的DHCP唯一标识(DHCP Unique Identifier, DUID)和密码采用设定加密方式生成得到密码加密字段。所述服务端基于密码加密字段和用户信息字段对客户端进行认证,具体为服务端基于用户信息字段查找到服务端存储的所述客户端的密码,将客户端的DUID和密码采用与客户端对应的加密方式生成得到认证信息,将认证信息与解析得到的密码加密字段进行匹配,如果一致,则客户端通过认证。以上所述用户信息字段为用户名及域名组合字段或用户名字段。图5展示了本实施例的应用场景,图6是本发明实施例中一种认证实现方法流程示意图,如图6所示步骤601,在客户端使用DHCPv6拨号接入网络的过程中,在DHCPv6交互阶段,客户端向服务端发起DHCPv6寻求报文,该DHCPv6寻求报文包括IPv6地址、IPv6前缀及QoS等IPv6信息,在此DHCPv6寻求报文中包含0ptionl6或0ptionl7,在0ptionl6的生产商类型数据或0ptionl7的选项数据中包含密码加密字段和用户名及域名组合字段,如图7所示。图7展示了 0ptionl6或0ptionl7的扩展内容,即0ptionl6的生产商类型数据或Optionl7的选项数据,扩展内容包括类型(TYPE)、长度(LEN)、密码加密字段和用户信息字段。密码加密字段为客户端将自身的DUID和密码采用固定的16位MD5加密方式(也可采用其他加密方式,此处采用的加密算法与服务端认证时采用的算法一致)生成得到的。客户端的用户名和密码由运营商提供,且在服务端有存储,客户端的DUID包含在DHCPv6寻求报文中。用户信息可以为用户名及域名组合字段,用户名及域名组合字段可以采用字符串的方式进行封装,封装规则为“用户名字符串O域名字符串”(例13100000000@Zte. com.cn)。用户信息也可以为用户名字段,即只包含用户名不携带域名填充,则封装规则为“用户名字符串”(例13100000000)。步骤602,BRAS接收并解析客户端发送的DHCPv6寻求报文,获得0ptionl6生产商类型数据或0ptionl7选项数据中的内容。步骤603,BRAS判断客户端发来的DHCPv6寻求报文中是否缺少必要信息,如果用户信息字段和密码加密字段内容没有缺失,执行步骤604;如果用户信息字段或密码加密字段内容缺失,不进行选项认证,执行步骤605。 步骤604,BRAS判断服务端是否支持选项0ptionl6或0ptionl7,如果服务端有0ptionl6或0ptionl7的相关配置,则服务端支持选项0ptionl6或0ptionl7,进一步解析用户名及域名组合字段,获取到用户名或者用户名加域名,执行步骤606;如果服务端没有0ptionl6或0ptionl7的相关配置,则不支持0ptionl6或0ptionl7,无法基于选项进行认证,执行步骤605。步骤605,BRAS等待客户端超时或者重新拨号。步骤606,BRAS进一步判断自身是否支持本地认证,如果BRAS的认证配置有local方法,则支持本地认证方式,执行步骤607 ;如果BRAS的认证配置没有local方法,则不支持本地认证方式,需要采用非本地认证方式,执行步骤608。步骤607,BRAS使用用户名或者用户名加域名查找到服务端存储的客户端密码,用此密码与客户端的DUID (包含在客户端发送的DHCPv6寻求报文中)使用MD5算法生成16位的MD5码,并将此MD5码与0ptionl6或0ptionl7扩展内容的密码加密字段进行匹配,在步骤609中判断认证是否成功,匹配结果一致则认为客户端通过认证,认证成功,执行步骤610 ;如果匹配结果不一致则认为客户端未通过认证,认证不成功,不回复任何报文,执行步骤 605。 步骤608,BRAS将客户端的DUID、用户名或者用户名加域名、密码加密字段送往认证服务器进行认证,认证服务器的认证处理与步骤607中所述相同,如果认证失败执行步骤605,如果认证成功,通知BRAS并执行步骤610。步骤610,BRAS在本地服务器或认证服务器查找IPv6信息,通过DHCPv6广告报文携带IPv6信息返回给客户端。IPv6信息是用于进行网络接入的相关信息。图8为服务端配置为非本地认证并且为支持DHCPv6 0ptionl6时,DHCPv6用户使用客户端拨号的交互流程,以DHCPv6 0ptionl6、认证服务器为Radius服务器为例,包括步骤801,用户使用客户端进行拨号,客户端发出DHCPv6寻求报文向服务端请求IPv6信息及请求认证。此DHCPv6寻求报文携带DHCPv6 0ptionl6,并在0ptionl6的生产商类型数据中包含如图7所示的密码加密字段和用户名及域名组合字段。步骤802,BRAS接收并解析DHCPv6寻求报文,得到密码加密字段、用户名及域名组合字段,确定服务端支持选项Optionl6后,进一步解析用户名及域名组合字段,获取到用户名加域名,BRAS判断出自身不支持本地认证方式,将客户端的DWD、密码加密字段、用户名加域名送往Radius服务器进行认证。步骤803,Radius服务器使用用户名加域名查找到客户端的密码,用此密码与客户端的DUID使用MD5算法生成16位的MD5码,将此MD5码与0ptionl6生产商类型数据中的密码加密字段进行匹配,匹配结果一致则认为认证成功,在Radius服务器查找IPv6信息,通过DHCPv6广告报文携带IPv6信息返回给BRAS,执行步骤804 ;如果匹配结果不一致则认为认证不成功,不回复任何报文,等待客户端超时或者重新拨号。步骤804,BRAS将携带IPv6信息的DHCPv6广告报文发送给客户端。步骤805,客户端收到DHCPv6广告报文,选取IPv6信息中有用的DHCPv6信息、如IPv6前缀和IPv6地址,客户端会发起DHCPv6请求报文,以向服务端确认IPv6信息。步骤806,BRAS收到客户端的DHCPv6请求报文,回复DHCPv6确认报文,在步骤807 中客户端收到确认报文则可以使用IPv6信息进行网络接入。在本发明实施例中,认证实现系统主要包括客户端和服务端,其中,客户端,用于通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段;服务端,用于解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。所述客户端,还用于将自身的DUID和密码采用设定加密方式生成得到密码加密字段。其中,客户端可以为支持DHCPv6的电视、机顶盒、计算机或无线终端等。服务端可以为BRAS,此时BRAS能够实现认证服务器的功能;服务端也可以为BRAS和认证服务器,认证服务器可以为DHCPv6服务器、AAA认证服务器或Radius服务器。在本发明实施例中,实现认证的客户端包括生成模块和发送模块,其中,生成模块,用于在DHCPv6选项扩展内容中填写密码加密字段和用户信息字段;发送模块,用于向服务端发送DHCPv6选项扩展内容,以使服务端解析收到的DHCPv6选项扩展内容、并基于密码加密字段和用户信息字段对客户端进行认证。在本发明实施例中,实现认证的服务端包括解析模块,用于解析收到的DHCPv6选项扩展内容,得到密码加密字段和用户信息字段;认证模块,用于基于密码加密字段和用户信息字段对客户端进行认证。所述服务端可以为BRAS,此时BRAS具有认证服务器的功能;服务端也可以为BRAS和认证服务器,其中,解析模块位于BRAS,认证模块位于认证服务器。以上各相关部分的具体实现在前述方法中已有详细描述,在此不再赘述。在上述应用场景中,应用本发明可以使原有的DHCPv6 0ptionl6或者0ptionl7认证更加安全,将密码采用MD5算法或其他加密算法进行加密。PPP的CHAP进行MD5加密时,需要服务端提前将挑战码发给客户端才能完成密码和挑战码的MD5加密。而对于DHCPv6来说则不能提前将挑战码发送给客户端,此原因也是DHCPv6选项认证的主要难点。本发明采用DHCPv6内的DUID作为挑战码进行加密则解决了此问题。用客户端的DUID作为挑战码与密码用加密算法发给服务端认证的方式,来解决原有DHCPv6选项认证方式带来的安全问题。并且应用本发明不需要更换服务端,如BRAS、或BRAS及认证服务器,原因为本发明是基于PPP的CHAP认证方式,对于已经支持此认证方式的服务端不需要重新设计,节省了系统的建设成本。从而本发明是一种更方面和更完善、更安全的基于DHCPv6选项的认证方案,而且提高接入用户安全性。 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。 ·
权利要求
1.一种认证实现方法,其特征在于,包括 服务端接收客户端通过DHCPv6选项扩展内容发送的密码加密字段和用户信息字段; 服务端解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。
2.根据权利要求I所述的方法,其特征在于,所述服务端接收客户端通过DHCPv6选项扩展内容发送的密码加密字段和用户信息字段之前,进一步包括 客户端将自身的DHCP唯一标识DUID和密码采用设定加密方式生成得到密码加密字段,通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段。
3.根据权利要求2所述的方法,其特征在于,所述客户端通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段,具体为 客户端通过DHCPv6选项中的Optionl6的生产商类型数据或Optionl7的选项数据向服务端发送密码加密字段和用户信息字段。
4.根据权利要求I、2或3所述的方法,其特征在于,所述基于密码加密字段和用户信息字段对客户端进行认证,具体为 基于用户信息字段查找到服务端存储的所述客户端的密码,将客户端的DUID和密码采用与客户端对应的加密方式生成得到认证信息,将认证信息与解析得到的密码加密字段进行匹配,如果一致,则客户端通过认证。
5.根据权利要求1、2或3所述的方法,其特征在于,所述用户信息字段为用户名及域名组合字段或用户名字段。
6.一种认证实现系统,其特征在于,包括 客户端,用于通过DHCPv6选项扩展内容向服务端发送密码加密字段和用户信息字段; 服务端,用于解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。
7.根据权利要求6所述的系统,其特征在于,所述客户端还用于 将自身的DUID和密码采用设定加密方式生成得到密码加密字段。
8.根据权利要求6或7所述的系统,其特征在于,所述用户信息字段为用户名及域名组合字段或用户名字段。
9.一种实现认证的客户端,其特征在于,包括 生成模块,用于在DHCPv6选项扩展内容中填写密码加密字段和用户信息字段; 发送模块,用于向服务端发送DHCPv6选项扩展内容,以使服务端解析收到的DHCPv6选项扩展内容、并基于密码加密字段和用户信息字段对客户端进行认证。
10.根据权利要求9所述的客户端,其特征在于,所述用户信息字段为用户名及域名组合字段或用户名字段。
11.一种实现认证的服务端,其特征在于,包括 解析模块,用于解析收到的DHCPv6选项扩展内容,得到密码加密字段和用户信息字段; 认证模块,用于基于密码加密字段和用户信息字段对客户端进行认证。
12.根据权利要求11所述的服务端,其特征在于,所述用户信息字段为用户名及域名组合字段或用户名字段。
全文摘要
本发明公开了一种认证实现方法、系统及相关装置,其中方法包括服务端接收客户端通过DHCPv6选项扩展内容发送的密码加密字段和用户信息字段;服务端解析收到的DHCPv6选项扩展内容,基于密码加密字段和用户信息字段对客户端进行认证。本发明基于现有的DHCPv6选项进行认证,将密码采用加密方式进行加密,更加安全;对于已经支持此认证方式的服务端不需要重新设计,节省了系统的建设成本。
文档编号H04L29/06GK102761546SQ201210225450
公开日2012年10月31日 申请日期2012年7月2日 优先权日2012年7月2日
发明者刘成功, 翟青涌, 赵申 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1