CN105721496A - 一种轻量级地址自动分配协议安全认证方法 - Google Patents

一种轻量级地址自动分配协议安全认证方法 Download PDF

Info

Publication number
CN105721496A
CN105721496A CN201610196389.0A CN201610196389A CN105721496A CN 105721496 A CN105721496 A CN 105721496A CN 201610196389 A CN201610196389 A CN 201610196389A CN 105721496 A CN105721496 A CN 105721496A
Authority
CN
China
Prior art keywords
message
client
server
mac
authentication module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610196389.0A
Other languages
English (en)
Inventor
陈琳
张富强
黄杰
王宝生
王宏
南洋
张飞朋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201610196389.0A priority Critical patent/CN105721496A/zh
Publication of CN105721496A publication Critical patent/CN105721496A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种轻量级地址自动分配协议安全认证方法,其步骤为:S1:服务器使用Hash(Mac+Ks)为每个客户端计算Key;S2:客户端认证模块使用Hash算法并利用系统当前时间计算得Kcs,消息报文结合Kcs使用Hash产生MAC,将MAC添加到Option的认证消息字段,将客户端产生的DHCPDiscover消息发送到DHCP服务端;S3:DHCPDiscover消息发送到服务端,服务端接收并进行认证;S4:DHCP服务器收到通过认证模块的报文后,直接分配IP地址;S5:客户端认证模块接收到DHCPOffer消息之后,对消息进行认证判别;S6:客户端将DHCPRequest报文发给认证模块,认证模块将添加含有MAC的Option并将消息发送给服务端;S7:服务端认证模块对DHCPRequest报文进行认证。本发明具有原理简单、易实现、兼容性好、安全性更高等优点。

Description

一种轻量级地址自动分配协议安全认证方法
技术领域
本发明属于网络安全技术领域,特指一种轻量级地址自动分配协议安全认证方法。
背景技术
DHCP协议(DynamicHostConfigurationProtocol)作为最有用的网络协议之一,它的提出不但方便了网络管理员对IP地址的分配管理和用户对网络IP地址的使用,而且还解决了IPv4网络地址不足的一些问题。但是,此协议在提出时并未考虑安全认证问题。随着网络的发展和移动设备的广泛使用,DHCP安全缺陷越来越突显。DHCP协议安全漏洞主要包括以下几个方面:
(1)由于协议自身没有访问控制和实体认证,所以任何一个用户不管是否有使用网络资源的权限都可以从DHCP服务器获得IP地址及相关的配置信息从而使用网络。如果说网络攻击者对DHCP服务器进行攻击完全可以把有效的IP地址资源耗尽,导致合法的用户不能申请到IP地址而造成Dos攻击。
(2)由于DHCP协议发送报文完全使用的是明文而且也没有消息认证,这就存在很大的消息篡改的风险。攻击者可以拦截DHCP报文然后对其进行修改,这就可能造成DHCP客户端申请的IP地址不可用或者说会有地址冲突。如果攻击者修改了服务器提供配置信息中的网关和DNS信息就可能造成更大的危险比如:①用户的访问网络必须会经过攻击者修改的网关,这样就可以对其进行流量分析;②攻击者恶意DNS服务器可以诱导用户访问钓鱼网站从而获取用户重要的信息。
(3)如果说网络中存在流氓DHCP服务器同样会给用户很大的安全威胁。流氓服务器采用一定的方式消耗尽DHCP服务器的有效的IP地址资源,然后就会对用户的DHCP请求进行应答。由于DHCP客户端不会对服务器进行认证所以客户端就会配置非法服务器提供的IP地址和网络配置信息。进而会对网络造成更大的危害。
总的概括来说,DHCP安全漏洞主要是由于协议本身缺少安全认证机制(消息认证和实体认证)。
目前,为了解决上述问题,传统的解决方案主要包括:
(1)简单的实体认证,比如采用检测客户Mac地址或令牌认证等都是提供弱的实体认证没有消息认证。这种认证方式很容易受攻击,攻击者会伪装能通过认证的Mac地址或者令牌。
(2)需要与第三方服务器交互,比如RAIDUS、KerberosV服务器,就会产生额外的通信消耗,这就造成DHCP灵活性和高效性大大的下降。
(3)修改了原DHCP协议,比如提出对报文加密或引入新的状态(DHCP协议采用状态机驱动的)。这样就会造成与原协议兼容性问题,产生使用的局限性。
(4)数字证书作为认证手段,由于证书一般比较大,所以不能添加到DHCP报文中进行传输,因为DHCP报文不能分割并且长度最大只能1236个字节(IP头20个字节,UDP头8个字节,DHCP消息头236个字节),可以作为Option使用,这样就存在证书分发的问题。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种原理简单、易实现、兼容性好、安全性更高的轻量级地址自动分配协议安全认证方法。
为解决上述技术问题,本发明采用以下技术方案:
一种轻量级地址自动分配协议安全认证方法,其步骤为:
S1:服务器使用Hash(Mac+Ks)为每个客户端计算Key,其中Mac是每个客户端的唯一标示即链路层地址,客户端私密保存Key以备认证模块使用;
S2:客户端认证模块使用Hash(currentTime+Key)算法并利用系统当前时间计算得Kcs,其中Hash法在Option格式的算法一项中设定,然后消息报文结合Kcs使用Hash(DHCPDiscover+Kcs)产生MAC,将MAC添加到Option的认证消息字段,将客户端产生的DHCPDiscover消息发送到DHCP服务端;
S3:DHCPDiscover消息发送到服务端,首先会被服务端的认证模块接收,对其消息进行认证,从DHCPDiscover报文中取出客户端的Mac地址和消息认证码,通过Hash(Mac+Ks)计算得到Key;认证模块根据Option的算法字段获得客户端使用的Hash算法,通过Hash(currentTime+Key)得到Kcs;最后将计算Hash(DHCPDiscover+Kcs)的值与报文中取出的消息认证码对比,如果相等则认证模块发送报文给服务器,服务器分配IP地址和网络配置参数进入步骤S4,如果不相等说明报文消息被修改或者是重放的DHCPDiscover消息,直接丢弃;
S4:DHCP服务器收到通过认证模块报文后,直接分配IP地址;
S5:客户端认证模块接收到DHCPOffer消息之后,首先取出消息中的MAC,使用发送DHCPDiscover报文时计算的Kcs与MAC对比;如果不相等直接丢弃,如相等就发送给客户端处理;
S6:客户端将DHCPRequest报文发给认证模块,认证模块将添加含有MAC的Option并将消息发送给服务端;
S7:服务端认证模块对DHCPRequest报文进行认证,认证通过直接发送给服务器,不通过则直接丢弃。
作为本发明的进一步改进:所述步骤S4中,将产生的DHCPOffer报文发给服务端的认证模块,认证模块会使用步骤S3计算保存下的Kcs产生Hash(DHCPOffer+Kcs)将这一MAC加入Option的认证消息字段,最后发送出去。
作为本发明的进一步改进:所述步骤S6中,MAC通过Hash(DHCPRequest+Kcs)计算得出的。
作为本发明的进一步改进:所述步骤S7中,如果通过认证服务器会发确认报文DHCPAck给客户端,同样也会加入MAC让客户端认证模块去认证。
作为本发明的进一步改进:对于DHCP报文中不存在自定义Option的报文的处理根据需求而定义模块,如果报文中不存在该Option让认证模块选择丢弃,也可以不处理直接通过。
作为本发明的进一步改进:在上述步骤中,客户端和服务器保持时钟同步,在用户采用DHCP协议申请IP地址之前进行设置。
作为本发明的进一步改进:在上述步骤中,客户端提前得到服务器为自己计算Key,服务器使用特定的哈希算法和密钥Ks计算得到。
与现有技术相比,本发明的优点在于:
1、本发明的轻量级地址自动分配协议安全认证方法,是针对DHCP协议存在的安全问题提出一种基于OTP(OneTimePassword)认证的轻量级解决方法,该方法不但可以对DHCP客户端和服务器进行实体认证,还可以对DHCP消息进行认证。
2、本发明的轻量级地址自动分配协议安全认证方法,是基于OTP安全DHCP认证方法,从安全性考虑,不但能实现实体和消息认证而且能阻止常见的攻击,比如重放攻击,中间人攻击等。从实现的难易程度来说,实现起来比较容易,而且不需要与第三方服务器交互,效率不会受到大的影响。从兼容性考虑,由于没有更改原协议的状态和和协议格式,所以可以与使用原协议的客户端服务器交互。
附图说明
图1是本发明方法的流程示意图。
图2是本发明在具体应用实例中自定义认证Option的格式示意图。
图3是本发明在一个具体应用实例中客户端与多个服务器报文交互流程的示意图。
图4是本发明在另一个具体应用实例中多个客户端与一个服务器报文交互流程的示意图。
具体实施方式
以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
DHCP安全认证是近几年来随着DHCP安全问题凸显而越来越受重视的网络安全问题。一次性密码解决使用者在密码的记忆与保存上的困难性,并且由于密码只能使用一次,而且因为密码是一分钟随机变化一次的,所以不可预测,也只有一次的使用有效性,从而阻止了攻击者的重放攻击和对密码的攻击,提高了安全性。本发明根据OTP的优点对传统的共享密钥认证方式进行了修改,不但提高了DHCP协议的安全性而且对DHCP协议的灵活性和高效性没有太大的影响。
本发明需要使用到相关的描述信息,具体包括:
DHCPDiscover:客户端向DHCP服务器发送广播报文,用于发现DHCP服务器。
DHCPOffer:DHCP服务器应答客户端的DHCPDiscover消息,并携带自己的IP地址和网络配置参数。
DHCPRequest:客户端选择第一个到达的DHCPOffer报文,向该DHCP服务器请求网络配置参数,同时拒绝其他服务器提供的参数。
DHCPAck:DHCP服务器发给客户端的报文,包括配置参数和网络地址,客户端接收到该报文之后,可以正式使用提供的IP地址和相关配置信息。
本发明用到DHCP报文头的三个字段包括hops、giaddr和xid。
chaddr:客户端Mac地址。
hops:记录DHCP报文经过的DHCP中继代理的个数。
giaddr:是gatewayipaddress的缩写,记录第一个DHCP中继代理的IP地址。
xid:事务ID是由客户端选择的一个随机数,用来同步客户端和服务器之间的消息和应答。
MAC:MessageAuthenticationCode,消息认证码,用于验证客户端和服务器的身份和报文消息的完整性。
currentTime:系统当前时间,单位为秒。
Ks:服务器的密钥。
Key:服务器为客户端计算产生的密钥。
Hash:哈希算法,即散列函数。一种单向密码体制,只能加密不能解密,比如常见的MD5和SHA-1等。
ΔT:误差时间,单位为秒,其中0<ΔT<1。
如图1所示,本发明的轻量级地址自动分配协议安全认证方法,其步骤为:
S1:服务器使用Hash(Mac+Ks)为每个客户端计算Key,其中Mac是每个客户端的唯一标示即链路层地址。因为Mac地址不同所以产生的Key都不相同,客户端私密保存Key以备认证模块使用。
S2:客户端认证模块使用Hash(currentTime+Key)计算得Kcs,其中Hash算法可以在Option格式的算法一项中设定,然后使用Hash(DHCPDiscover+Kcs)产生MAC,将MAC添加到Option的认证消息字段,将客户端产生的DHCPDiscover消息发送到DHCP服务端。
S3:DHCPDiscover消息发送到服务端首先会被服务端的认证模块接收,对其消息进行认证,从DHCPDiscover报文中取出客户端的Mac地址和消息认证码,通过Hash(Mac+Ks)计算得到Key。认证模块根据Option的算法字段获得客户端使用的Hash算法,通过Hash(currentTime+Key)得到Kcs其中计算时currentTime可以有ΔT的误差。最后将计算Hash(DHCPDiscover+Kcs)的值与报文中取出的消息认证码对比,如果相等则认证模块发送报文给服务器,服务器分配IP地址和网络配置参数进入步骤S4,如果不相等说明报文消息被修改或者是重放的DHCPDiscover消息,直接丢弃。
S4:DHCP服务器收到通过认证模块报文后,直接分配IP地址。将产生的DHCPOffer报文发给服务端的认证模块,认证模块会使用步骤S3计算保存下的Kcs产生Hash(DHCPOffer+Kcs)将这一MAC加入Option的认证消息字段,最后发送出去。
S5:客户端认证模块接收到DHCPOffer消息之后首先取出消息中的MAC。使用发送DHCPDiscover报文时计算的Kcs从而计算Hash(DHCPOffer+Kcs),与MAC对比。如果不相等直接丢弃相等就发送给客户端处理从而保证了接收的配置信息不是流氓服务器发来的。
S6:客户端将DHCPRequest报文发给认证模块,认证模块将添加含有MAC的Option并将消息发送给服务端。MAC通过Hash(DHCPRequest+Kcs)计算得出的。
S7:服务端认证模块对DHCPRequest报文进行认证,认证通过直接发送给服务器不通过则直接丢弃。如果通过认证服务器会发确认报文DHCPAck给客户端,同样也会加入MAC让客户端认证模块去认证。
在上述本发明的技术方案中,是基于以下两点原理而设计的:
①客户端和服务器必须保持时钟同步,比如都采用北京时间。在用户采用DHCP协议申请IP地址之前必须进行设置。
②客户端必须提前得到服务器为自己计算Key(服务器使用特定的哈希算法和密钥Ks计算得到),从而保证Key的唯一性和私密性。
在具体应用中,对于DHCP报文中不存在自定义Option的报文的处理可以根据需求而定义模块,如果报文中不存在该Option可以让认证模块选择丢弃也可以不处理直接通过。
在DHCP协议中,有的Option已经约定俗成,但也可以根据需要定义新的Option。本发明使用自定义的Option格式,格式符合DHCP协议的Option的格式要求,选项码为180。如图2所示,新的认证Option格式完全按照DHCP协议的CLV(Code、Length和Value)标准,其中选项码和长度的大小均为一个字节大小。在提出的Option中设计了一个字节长度的算法字段,值为1时采用的是MD5算法为2时是SHA-1算法。而认证信息字段是可变长度的只要不超过255个字节就可以了。使用MD5和SHA-1产生的MAC都不会超过255个字节。
如图3所示,为本发明的一个具体应用实例,其中一个DHCP客户端请求IP地址和网络配置参数与多个DHCP服务器报文交互的具体流程:
S100:DHCPDiscover被发送给服务器之前必须由客户端认证模块进行处理;
处理过程是:首先,计算一次性密钥Kcs,Kcs=Hash(currentTime+Key)。临时保存Kcs以备验证服务端消息和发送DHCPRequest报文时使用,如果客户端再次发送DHCPDiscover报文的把该临时值清除并计算一个新值替换。其次,计算MAC,MAC=Hash(DHCPDiscover+Kcs),其中DHCP报文头中hops和giaddr字段必须设置为0,因为报文经过DHCP中继代理的时候这两个字段的值会被修改。最后,将自定义认证Option的添加到DHCPDiscover报文中并发送给服务器。
因为DHCPDiscover是广播报文,所以有无认证模块DHCP服务器都会收到该报文并进行处理。
S1001:无认证模块的DHCP服务器对DHCPDiscover报文的处理过程是:服务器收到DHCP报文之后不会对报文进行认证处理,对于服务器识别的Option会做默认处理。服务器同样会像其他不含认证选项的请求报文一样选择一个未使用的IP地址和其他配置信息进行下一步的处理。
S1002:有认证模块的DHCP服务器对DHCPDiscover报文的处理过程是:首先,取出选项码为180的自定义认证Option和报文头中Mac地址值,并取出Option中MAC和根据Option算法字段值得到相应的Hash函数。根据Mac地址在服务器会使用Hash(Mac+Ks)计算客户端的Key,由于Hash算法和Ks仅DHCP服务器知道所以其他非法的服务器不能得到客户端的Key,进而对客户端的响应是不能通过客户端的认证。其次,服务器认证模块用currentTime和客户端计算MAC采用的currentTime允许有ΔT的时间误差,所以服务器计算Kcs=Hash(currentTime+Key)或Hash(currentTime-1+Key)。然后计算h=Hash(DHCPDiscover+Kcs),因为Kcs有两个可能值所以计算结果就有h1和h2两个不同值,其中计算时必须将DHCP报文头中的hops和giaddr字段设置为0。最后,用Option中取出的MAC与h1和h2分别对比如果有相等的则认证通过否则丢弃报文,服务器将为认证通过的请求选择一个未使用的IP地址和其他配置参数进行下一步的处理。服务器将认证通过所采用的Kcs临时记录下来以备发送DHCPOffer和DHCPAck报文使用。
S200:DHCP服务器将为客户端提供IP地址和网络配置信息存入DHCPOffer报文中,发送给DHCP客户端。
S2001:无认证模块的服务器将生成的DHCPOffer报文直接发送给DHCP客户端,如果有DHCP中继就发送给中继。DHCP客户端收到该报文后就会对该报文进行认证处理,客户端认证模块会查询并取出报文中的自定义Option180,因为无认证模块的服务器生成的DHCPOffer报文无认证Option180,最后客户端直接丢弃收到的报文。当然客户端可以根据设定选择是否接收无认证Option180的报文。
S2002:有认证模块的服务器生成的DHCPOffer报文会先通过认证模块,认证模块添加认证Option180,认证Option180中的MAC=Hash(DHCPOffer+Kcs)其中的Kcs是服务器临时保存的。DHCP客户端的认证模块处理接收到含有认证Option180的DHCPOffer报文,使用临时保存的Kcs计算MAC并与报文中Option180的MAC进行对比,进而可以判断报文发送者和报文的完整性。
S300:DHCP客户端会选择第一个含有并且通过认证的DHCPOffer报文提供的IP地址和网络配置信息,将DHCPRequest报文的Option50设置该IP地址。客户端认证模块添加自定义Option180并且MAC=Hash(DHCPRequest+Kcs),其中Kcs是客户端发送DHCPDiscover报文是临时记录的。
S3001:无认证模块的服务器接收到DHCPRequest报文并取出Option50中存储的IP地址,因为DHCP客户端选择的是含有并且通过认证的DHCPOffer报文提供的IP地址所以取出的IP地址肯定不是自己响应出去的,最后该服务不会再对客户端回应信息。
S3002:有认证模块的服务器同样会先判断DHCPRequest报文中Option50选项的IP地址是否是自己分配出去的,如果不是不予回应如果是则验证Option180的MAC是否和计算Hash(DHCPRequest+Kcs)的值相等,不相等不予回应。
S400:被DHCP服务器认证模块认证通过的DHCPRequest报文,服务器会记录客户的租约信息到相应的文件中,并且会回应添加了自定义Option180的DHCPAck报文。客户端同样会对收到的DHCPAck报文进行认证处理,认证通过才开始使用服务器提供的IP地址和网络配置信息。
如图4所示,为本发明的另一个具体应用实例,其中多个DHCP客户端请求IP地址和网络配置参数与一个DHCP服务器报文交互的具体流程:
S100:有认证模块的DHCP服务器会收到无认证模块处理的请求也会收到认证模块添加Option180之后的请求。
S1001:无认证模块的客户端发送DHCPDiscover广播请求IP地址,服务器认证模块收到请求报文验证报文的Option180,如果报文中不含有该Option服务器直接丢弃报文不予回应。
S1002:有认证模块的客户端发送DHCPDiscover报文之前,认证模块会先处理该报文,处理过程是:计算一次性密钥Kcs,Kcs=Hash(currentTime+Key)。临时保存Kcs以备验证服务端消息和发送DHCPRequest报文时使用,如果客户端再次发送DHCPDiscover报文的把该临时值清除并计算一个新值替换。计算MAC,MAC=Hash(DHCPDiscover+Kcs),其中DHCP报文头中hops和giaddr字段必须设置为0,因为报文经过DHCP中继代理的时候这两个字段的值会被修改。将自定义认证Option的添加到DHCPDiscover报文中并发送给服务器。服务器认证模块的处理过程是:首先,取出选项码为180的自定义认证Option和报文头中Mac地址值,并取出Option中MAC和根据Option算法字段值得到相应的Hash函数。根据Mac地址在服务器会使用Hash(Mac+Ks)计算客户端的Key,由于Hash算法和Ks仅DHCP服务器知道所以其他非法的服务器不能得到客户端的Key,进而对客户端的响应是不能通过客户端的认证。其次,服务器认证模块用currentTime和客户端计算MAC采用的currentTime允许有ΔT的时间误差,所以服务器计算Kcs=Hash(currentTime+Key)或Hash(currentTime-1+Key)。然后计算h=Hash(DHCPDiscover+Kcs),因为Kcs有两个可能值所以计算结果就有h1和h2两个不同值,其中计算时必须将DHCP报文头中的hops和giaddr字段设置为0。最后,用Option中取出的MAC与h1和h2分别对比如果有相等的则认证通过否则丢弃报文,服务器将为认证通过的请求选择一个未使用的IP地址和其他配置参数进行下一步的处理。服务器将认证通过所采用的Kcs临时记录下来以备发送DHCPOffer和DHCPAck报文使用。
S200:有认证模块的服务器生成的DHCPOffer报文会先通过认证模块,认证模块添加认证Option180,认证Option180中的MAC=Hash(DHCPOffer+Kcs)其中的Kcs是服务器临时保存的。DHCP客户端的认证模块处理接收到含有认证Option180的DHCPOffer报文,使用临时保存的Kcs计算MAC并与报文中Option180的MAC进行对比,进而可以判断报文发送者和报文的完整性。
S300:DHCP客户端生成DHCPRequest报文并将其中Option50设置为第一个DHCPOffer报文提供的IP地址,客户端认证模块处理DHCPRequest报文添加Option180其中MAC=Hash(DHCPRequest+Kcs),最后以广播的形式发送该报文。服务器收到该报文之后分别对Option50的IP地址判断然后认证Option180,如果IP地址是自己分配出去的并且通过了认证才进行回应。
S400:被DHCP服务器认证模块认证通过的DHCPRequest报文,服务器会记录客户的租约信息到相应的文件中,并且会回应添加了自定义Option180的DHCPAck报文。客户端同样会对收到的DHCPAck报文进行认证处理,认证通过才开始使用服务器提供的IP地址和网络配置信息。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (7)

1.一种轻量级地址自动分配协议安全认证方法,其特征在于,步骤为:
S1:服务器使用Hash(Mac+Ks)为每个客户端计算Key,其中Mac是每个客户端的唯一标示即链路层地址,客户端私密保存Key以备认证模块使用;
S2:客户端认证模块使用Hash(currentTime+Key)计算得Kcs,其中Hash法在Option格式的算法一项中设定,然后使用Hash(DHCPDiscover+Kcs)产生MAC,将MAC添加到Option的认证消息字段,将客户端产生的DHCPDiscover消息发送到DHCP服务端;
S3:DHCPDiscover消息发送到服务端,首先会被服务端的认证模块接收,对其消息进行认证,从DHCPDiscover报文中取出客户端的Mac地址和消息认证码,通过Hash(Mac+Ks)计算得到Key;认证模块根据Option的算法字段获得客户端使用的Hash算法,通过Hash(currentTime+Key)得到Kcs;最后将计算Hash(DHCPDiscover+Kcs)的值与报文中取出的消息认证码对比,如果相等则认证模块发送报文给服务器,服务器分配IP地址和网络配置参数进入步骤S4,如果不相等说明报文消息被修改或者是重放的DHCPDiscover消息,直接丢弃;
S4:DHCP服务器收到通过认证模块报文后,直接分配IP地址;
S5:客户端认证模块接收到DHCPOffer消息之后,首先取出消息中的MAC,使用发送DHCPDiscover报文时计算的Kcs与MAC对比;如果不相等直接丢弃,如相等就发送给客户端处理;
S6:客户端将DHCPRequest报文发给认证模块,认证模块将添加含有MAC的Option并将消息发送给服务端;
S7:服务端认证模块对DHCPRequest报文进行认证,认证通过直接发送给服务器,不通过则直接丢弃。
2.根据权利要求1所述的轻量级地址自动分配协议安全认证方法,其特征在于,所述步骤S4中,将产生的DHCPOffer报文发给服务端的认证模块,认证模块会使用步骤S3计算保存下的Kcs产生Hash(DHCPOffer+Kcs)将这一MAC加入Option的认证消息字段,最后发送出去。
3.根据权利要求1所述的轻量级地址自动分配协议安全认证方法,其特征在于,所述步骤S6中,MAC通过Hash(DHCPRequest+Kcs)计算得出的。
4.根据权利要求1所述的轻量级地址自动分配协议安全认证方法,其特征在于,所述步骤S7中,如果通过认证服务器会发确认报文DHCPAck给客户端,同样也会加入MAC让客户端认证模块去认证。
5.根据权利要求1~4中任意一项所述的轻量级地址自动分配协议安全认证方法,其特征在于,对于DHCP报文中不存在自定义Option的报文的处理根据需求而定义模块,如果报文中不存在该Option让认证模块选择丢弃,也可以不处理直接通过。
6.根据权利要求1~4中任意一项所述的轻量级地址自动分配协议安全认证方法,其特征在于,在上述步骤中,客户端和服务器保持时钟同步,在用户采用DHCP协议申请IP地址之前进行设置。
7.根据权利要求1~4中任意一项所述的轻量级地址自动分配协议安全认证方法,其特征在于,在上述步骤中,客户端提前得到服务器为自己计算Key,服务器使用特定的哈希算法和密钥Ks计算得到。
CN201610196389.0A 2016-03-31 2016-03-31 一种轻量级地址自动分配协议安全认证方法 Pending CN105721496A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610196389.0A CN105721496A (zh) 2016-03-31 2016-03-31 一种轻量级地址自动分配协议安全认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610196389.0A CN105721496A (zh) 2016-03-31 2016-03-31 一种轻量级地址自动分配协议安全认证方法

Publications (1)

Publication Number Publication Date
CN105721496A true CN105721496A (zh) 2016-06-29

Family

ID=56158570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610196389.0A Pending CN105721496A (zh) 2016-03-31 2016-03-31 一种轻量级地址自动分配协议安全认证方法

Country Status (1)

Country Link
CN (1) CN105721496A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059700A (zh) * 2016-07-11 2016-10-26 杭州华三通信技术有限公司 一种认证方法及装置
CN106603743A (zh) * 2016-12-16 2017-04-26 合网络技术(北京)有限公司 一种基于dhcp协议定制的广播请求响应方法、系统及终端
CN107171813A (zh) * 2017-07-25 2017-09-15 环球智达科技(北京)有限公司 建立连接的方法
CN110191114A (zh) * 2019-05-24 2019-08-30 新华三技术有限公司 一种安全防护的方法、装置、电子设备及介质
CN110798546A (zh) * 2019-11-08 2020-02-14 杭州海兴电力科技股份有限公司 一种基于duid的dhcp客户端接入认证方法
CN111314269A (zh) * 2018-12-11 2020-06-19 中兴通讯股份有限公司 一种地址自动分配协议安全认证方法及设备
CN112193278A (zh) * 2019-07-08 2021-01-08 中车唐山机车车辆有限公司 列车网络管理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060067069A (ko) * 2004-12-14 2006-06-19 한국전자통신연구원 Dhcp 메시지 인증 방법
CN101971567A (zh) * 2007-12-05 2011-02-09 株式会社日立制作所 Dhcp客户端服务器系统、dhcp客户端装置、dhcp服务器装置
CN103685272A (zh) * 2011-03-03 2014-03-26 上海华为技术有限公司 一种认证方法及系统
EP2663049A4 (en) * 2011-02-28 2014-06-25 Huawei Tech Co Ltd DHCP-BASED AUTHENTICATION PROCEDURE AND DHCP SERVER AND CLIENT
US20150089228A1 (en) * 2013-09-23 2015-03-26 Foundation Of Soongsil University-Industry Cooperation User authentication method and apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060067069A (ko) * 2004-12-14 2006-06-19 한국전자통신연구원 Dhcp 메시지 인증 방법
CN101971567A (zh) * 2007-12-05 2011-02-09 株式会社日立制作所 Dhcp客户端服务器系统、dhcp客户端装置、dhcp服务器装置
EP2663049A4 (en) * 2011-02-28 2014-06-25 Huawei Tech Co Ltd DHCP-BASED AUTHENTICATION PROCEDURE AND DHCP SERVER AND CLIENT
CN103685272A (zh) * 2011-03-03 2014-03-26 上海华为技术有限公司 一种认证方法及系统
US20150089228A1 (en) * 2013-09-23 2015-03-26 Foundation Of Soongsil University-Industry Cooperation User authentication method and apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NEHA AGRAWAL. ET AL.: ""Preventing ARP Spoofing in WLAN using SHA-512"", 《IEEE INTERNATIONAL CONFERENCE ON COMPUTATIONALINTELLIGENT & COMPUTING RESEARCH》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059700A (zh) * 2016-07-11 2016-10-26 杭州华三通信技术有限公司 一种认证方法及装置
CN106059700B (zh) * 2016-07-11 2020-06-05 新华三技术有限公司 一种认证方法及装置
CN106603743A (zh) * 2016-12-16 2017-04-26 合网络技术(北京)有限公司 一种基于dhcp协议定制的广播请求响应方法、系统及终端
CN107171813A (zh) * 2017-07-25 2017-09-15 环球智达科技(北京)有限公司 建立连接的方法
CN111314269A (zh) * 2018-12-11 2020-06-19 中兴通讯股份有限公司 一种地址自动分配协议安全认证方法及设备
CN111314269B (zh) * 2018-12-11 2023-09-12 中兴通讯股份有限公司 一种地址自动分配协议安全认证方法及设备
CN110191114A (zh) * 2019-05-24 2019-08-30 新华三技术有限公司 一种安全防护的方法、装置、电子设备及介质
CN112193278A (zh) * 2019-07-08 2021-01-08 中车唐山机车车辆有限公司 列车网络管理系统
CN110798546A (zh) * 2019-11-08 2020-02-14 杭州海兴电力科技股份有限公司 一种基于duid的dhcp客户端接入认证方法

Similar Documents

Publication Publication Date Title
CN105721496A (zh) 一种轻量级地址自动分配协议安全认证方法
CN101127600B (zh) 一种用户接入认证的方法
US8886934B2 (en) Authorizing physical access-links for secure network connections
CN102231725B (zh) 一种动态主机配置协议报文的认证方法、设备及系统
US10158608B2 (en) Key establishment for constrained resource devices
CN110493367B (zh) 无地址的IPv6非公开服务器、客户机与通信方法
US8601604B2 (en) Verifying a message in a communication network
EP3442195B1 (en) Reliable and secure parsing of packets
Lopez et al. Pceps: Usage of tls to provide a secure transport for the path computation element communication protocol (pcep)
CN113904809B (zh) 一种通信方法、装置、电子设备及存储介质
US20150249639A1 (en) Method and devices for registering a client to a server
Younes A secure DHCP protocol to mitigate LAN attacks
Younes Securing ARP and DHCP for mitigating link layer attacks
WO2009082950A1 (fr) Procédé, dispositif et système de distribution de clés
Vučinić et al. Constrained join protocol (CoJP) for 6TiSCH
CN114726513A (zh) 数据传输方法、设备、介质及产品
CN112398801A (zh) 数据处理方法及设备
Shete et al. DHCP protocol using OTP based two-factor authentication
KR100856918B1 (ko) IPv6 기반 네트워크상에서의 IP 주소 인증 방법 및IPv6 기반 네트워크 시스템
JP6056970B2 (ja) 情報処理装置、端末機、情報処理システム及び情報処理方法
JP2005122695A (ja) 認証方法、サーバ計算機、クライアント計算機、および、プログラム
EP3932044A1 (en) Automatic distribution of dynamic host configuration protocol (dhcp) keys via link layer discovery protocol (lldp)
EP2663049B1 (en) Authentication method based on dhcp, dhcp server and client
Jerschow et al. CLL: A cryptographic link layer for local area networks
CN115694856A (zh) 基于dhcp协议的验证方法及相关设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160629

RJ01 Rejection of invention patent application after publication