具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1示出了根据本发明实施例的WiFi网络架构的示意图。如图1所示,一个AS可以为一个或多个AP服务,一个DHCP服务器也可以为一个或多个AP服务,网络中也可能存在多个AS,也可能存在多个DHCP服务器。另外,一个AP可以为一个或多个STA服务,并且AP通常可以包括802.1x定义的认证器功能。此外,AP还可以包括DHCP代理(Proxy)功能,从而AP能够为STA分配IP地址。应理解,STA通过与AP建立通信连接,从而能够通过AP后续的路由设备接入互联网。还应理解,在本发明实施例中,WiFi终端或终端指使用美国电气和电子工程师协会(Institute of Electrical andElectronics Engineers,简称为“IEEE”)802.11空口协议的终端,并简称为STA。
图2示出了根据本发明实施例的建立连接的方法100示意性流程图。如图2所示,可以由终端执行的该方法100包括:
S110,向AP发送第一认证(Authentication)消息,该第一认证消息包括用户标识(User ID);
S120,接收该AP根据该用户标识发送的第二认证消息,该第二认证消息包括EAP方法请求消息和该AP的现场值ANonce;
S130,根据该ANonce、终端的现场值SNonce和获取的第一主会话密钥(Main Session Key,简称为“MSK”),生成第一成对设备间的临时密钥(Pairwise Transient Key,简称为“PTK”);
S140,向该AP发送第三认证消息,该第三认证消息包括EAP方法响应消息、该SNonce以及第一消息完整性码(Message Integrity Code,简称为“MIC”),该第一MIC由该终端根据该第一PTK生成,用于保护该第三认证消息;
S150,接收该AP在根据第二PTK验证该第一MIC正确时发送的第四认证消息,该第四认证消息包括EAP成功消息、该AP为该终端配置的配置信息以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,该第二PTK由该AP根据该ANonce、该SNonce和获取的第二成对设备间的主密钥(Pairwise Master Key,简称为“PMK”)生成;
应理解,对于成功的EAP认证过程,终端和AP应该获得相同的PMK,并在此基础上获得相同的PTK,即该第一PMK和该第二PMK应该相等,该第一PTK和该第二PTK应该相等。
S160,根据该第一PTK,对该第二MIC进行验证。
本发明实施例的建立连接的方法,从终端向AP发送携带用户标识的第一认证消息开始,直到终端收到AP发送的携带EAP成功消息的第四认证消息,完成了EAP认证过程。当然,应理解,如果EAP认证失败,那么第四认证消息可能携带EAP失败消息。同时,从携带ANonce等信息的第二认证消息作为相关技术中四步握手过程的第一个消息,一直到第四认证消息作为四步握手的第三个消息,可以实现四步握手的功能,该相关技术例如包括美国电气和电子工程师协会(Institute of Electrical and Electronics Engineers,简称为“IEEE”)802.11规范等。另一方面,同时可以通过第一认证消息至第四认证消息携带相应的DHCP消息,或同时通过第四认证消息携带网络侧设备给终端分配的IP地址,可以完成IP地址的分配过程,并且同时在第四认证消息中携带配置信息,从而完成相关技术中的关联过程的功能。
本发明实施例的方法,使得相关技术规范中的开发系统认证、四步握手、关联以及IP地址的分配等过程,可以与EAP认证过程融合成一个统一的过程,使得STA与AS之间的双向认证和STA与AP之间的双向认证可以一气呵成,而不失STA与AS之间可采用不同具体认证方法的灵活性,并且在减少空口消息交互数量的同时,能够保持建立连接过程的安全性以及功能性。此外,根据本发明实施例的方法没有改变802.11中的密钥层次关系,具有很好的兼容性。
应理解,在诸如IEEE 802.11规范的相关技术中,四步握手过程中的第一个消息包括AP的现场值ANonce;第二个消息包括STA的现场值SNonce和相应的MIC,该第二个消息还可能包括计算PTK所采用的算法信息;第三个消息包括加密算法相关信息、GTK、与GTK相关的起始序号、GTK的ID以及相应的MIC,该第三个消息还可以包括ANonce;第四个消息用于对第三个消息进行确认,该第四个消息包括相应的MIC。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
在S110中,可选地,该第一认证消息包括EAP响应标识消息,该EAP响应标识消息包括该用户标识。即,该第一认证消息可以直接携带用户标识,也可以通过包括其它消息而间接地携带该用户标识。应理解,该用户标识用于标识使用终端的用户的身份,并且该用户标识也可以称为身份标识,或用户身份标识。作为一个示例,该用户标识可以是用户在运营商登记的账户名,或者账户名和密码。
应理解,该第一认证消息及后续的其它认证消息都可以包括法则(Algorithm)参数以及确定的健壮安全网络(Robust Security Network,简称为“RSN”)元素中的参数。该Algorithm参数的取值可以是:
(1)开放系统(Open System),表示使用开放系统认证,实际上就是认证消息交互没有进行实际的认证,AP简单地接受STA。按照现有规范,如果STA和AP都支持健壮的安全网络,那么后续流程可以执行EAP认证过程。
(2)共享密钥(Shared Key),表示使用802.11规范中定义的共享密钥认证方法,即在认证消息交互过程中完成STA和AP之间的认证。在安全性要求较高的系统中不再使用这种认证方法,而是在后续的流程中执行EAP认证过程。
(3)快速迁移(Fast Transition),表示支持移动应用的WiFi网络中从一个AP切换到另一个AP,而不是初始连接的建立。
(4)快速初始连接建立(Fast Initial Link Setup),表示采用本发明实施例的入网过程。
该健壮安全网络元素(RSN元素)是一个信息元素,包括一组参数的集合。例如,RSN元素中可以包括STA或AP支持的加密算法、支持的认证机制等信息。对于认证机制,可以是使用802.1x定义的认证机制,也就是EAP机制,也可以是预共享密钥(Pre-Shared Key,简称为“PSK”)机制。PSK机制实际上就是直接用预置的密钥作为PMK,而EAP认证机制是通过EAP认证后产生MSK,由MSK得到PMK。本发明实施例支持EAP机制和PSK机制。现有规范中在关联(Association)过程中使用RSN元素协商是使用EAP机制还是使用PSK机制,在认证帧中不总是包括RSN元素。对于本发明实施例,如果第一认证消息中的Algorithm指示为“快速初始连接建立”,那么该第一认证消息必须包括RSN元素,以指示STA是否支持EAP和/或PSK,该RSN元素可以明确地指示仅支持其中一种,也可以指示两种都支持,由AP决定使用哪一种认证机制。
在S120中,该第二认证消息还可以包括与相关技术的四步握手过程中的第一个消息相关的其它信息,该相关技术例如包括IEEE 802.11规范等。应理解,该EAP方法是EAP认证过程中从第二个EAP请求消息开始的流程。具体而言,EAP是一种可扩展的认证协议,它使用固定的数据封装形式,将各种认证方法封装在其中。EAP协议总是由认证器(Authenticator)向恳求者(Supplicant)发送EAP请求(EAP-Request)消息,并由恳求者返回EAP响应(EAP-Response)消息,这种请求-响应会进行若干个回合,最后由认证器向恳求者发送EAP成功(EAP-Success)或EAP失败(EAP-Failure)消息,以结束EAP过程。该认证器位于网络中,例如认证器位于AP上,该恳请者指恳请接入网络的一方,通常是终端,例如STA。
EAP协议的第一对请求-响应消息用于恳求者向认证器发送身份标识信息,该身份标识信息通常是用户标识,具体来说就是认证器向恳求者发送EAP请求/标识(EAP-Request/ID)消息,这个消息是一个EAP请求消息,其中一个参数用于表示该消息用于请求身份标识;恳求者之后向认证器发送EAP响应/标识(EAP-Response/ID)消息,其中一个参数用于表示该消息是身份标识的响应消息,并在该消息中携带身份标识。在具体网络部署中,认证过程通常涉及三方,即恳求者、认证器、认证服务器,真正的认证发生在恳求者和认证服务器之间,而认证器在从恳求者获得身份标识之后,就将身份标识转发到认证服务器,触发后续的EAP方法过程,而认证器只在其中扮演转发的角色。该EAP请求/标识消息和该EAP响应/标识消息属于EAP过程或EAP认证过程,但不属于EAP方法流程,从第二个EAP请求消息开始是EAP方法流程,并且该消息中的一个字段可以用于表示具体的认证方法,例如EAP-认证和密钥协商(Authentication and Key Agreement,简称为“AKA”)、EAP-安全传输层(Transport Layer Security,简称为“TLS”)等方法。
在S130中,终端可以计算MSK,并进一步计算得到PMK,从而终端能够基于PMK、ANonce、SNonce、AP和STA的媒体介入控制(Medium AccessControl,简称为“MAC”)地址计算得到PTK。例如,终端可以根据密钥和EAP过程中交换的信息计算MSK,该信息例如包括现场信息、随机数、计数等。
应理解,一个成功的EAP过程后,终端和AP双方计算出的MSK应该是相同的,并且MSK的具体生成时间并没有在EAP协议中规定。例如在EAP-AKA认证方法中,在认证器服务器发出第一消息,即认证器发出的EAP过程的第二个EAP请求消息、EAP方法的第一个请求消息后,就可计算出MSK,而恳求者收到EAP方法的第一个请求消息后就可算出MSK,其中MSK的计算基于恳求者和认证服务器双方预设的关于用户标识的预共享密钥和AS产生的随机数等;而对于EAP-TLS方法而言,恳求者会向认证服务器发送一个隐秘数据(也是一个随机数),这个隐秘数据在EAP认证过程中协商的临时密钥的加密下送到认证服务器,之后双方在这个隐秘数据和EAP过程中交换的双方的随机数(明文传输的)的基础上计算MSK。
在S140中,该第三认证消息还可以包括与相关技术的四步握手过程中的第二个消息相关的其它信息,例如该第三认证消息还可以包括计算PTK所采用的算法信息等。
在S150中,该配置信息包括关联标识AID和/或组临时密钥GTK。该第四认证消息还可以包括与相关技术的四步握手过程中的第三个消息相关的其它信息,例如该第四认证消息还可以包括与GTK相关的起始序号、GTK的ID等。
在S160中,终端根据该第一PTK对该第二MIC进行验证。如果验证成功,终端可以从第四认证消息中获取AID、GTK等信息,并且可以继续后续流程,否则终端向AP发送验证失败消息或不作响应。
在本发明实施例中,可选地,在终端验证该第二MIC正确时,该方法100还包括:终端向该AP发送第五认证消息,该第五认证消息包括第四MIC,该第四MIC由终端根据该第一PTK生成,用于保护该第五认证消息。该第五认证消息可以作为相关技术中的四步握手过程中的最后一个消息,并且该第五认证消息用于对第四认证消息进行确认。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,例如由AS分配,也可以由AP根据DHCP协议获取。因而,可选地,该第四认证消息还包括网络侧设备为该终端分配的第一IP地址。可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
下面将结合图3所示的流程图,对本发明实施例进行详细描述。如图3所示,根据本发明实施例的建立连接的方法200包括:
S203,STA向AP发送第一认证消息。该第一认证消息及以后的空口消息中都可以包含Algorithm以及确定的RSN元素中的参数,下文中不再重述。该第一认证消息可以包括EAP响应/标识消息,该EAP响应/标识消息中包括用户标识User-ID。该EAP响应/标识消息可以作为EAP认证过程的触发消息。应理解,该第一认证消息以及后续的认证消息可以从现有规范中的Authentication消息修改得来。可选地,该第一认证消息包括DHCP发现消息。
S204,AP收到第一认证消息后,将User-ID转发给AS。根据AP和AS之间的通信协议,AP和AS可能是简单地将EAP消息封装在它们之间的协议报文中进行传递,例如在本步骤中,AP从第一认证消息中提取EAP响应/标识消息,并将EAP响应/标识消息封装在接入请求(Access Request,简称为“ARQ”)消息中发送给AS;也可能是AP和AS将EAP消息中的信息提取出来重新封装在它们之间的报文中传递,例如在本步骤中,AP从EAP响应/标识消息中提取用户标识User-ID,并将User-ID封装在ARQ消息中发送给AS。应理解,本发明实施例中将AP发给AS的消息都统称为ARQ消息,即接入请求之意,并将AS发给AP的消息都统称为接入接受(Access Accept,简称为“AAC”)消息,即接入认可之意。
S205,AS从AP收到User-ID,如果该User-ID存在,AS就向AP发送认证过程的第一个消息,从而开始认证过程。如果网络规定由AS分配IP地址给STA,则AS在发给AP的消息中包含预分配的IP地址。
S208,AP从S205的消息中获得AS预分配的IP地址或通过DHCP协议获得预分配的IP地址后,保存该IP地址,并在后续步骤中发给STA。
S209,AP向STA发送第二认证消息,其中包括AP现场值ANonce、EAP请求消息以及四步握手中的第一个消息中的其它相关信息。其中的EAP请求消息是AP和STA之间的EAP方法流程的第一个消息,同时又是这个EAP过程中的第二个EAP请求消息(EAP请求/标识、EAP响应/标识消息属于EAP过程、但不属于EAP方法流程),该EAP请求消息可以是直接转发AS在S205中封装在AAC消息中的EAP请求消息,也可能是AP解析AAC消息后重新生成的,下文中不再赘述。应理解,该EAP请求消息中包含的信息根据所使用的EAP方法不同而不同;并且STA收到该第二认证消息后,可以取出并暂时保存其中的ANonce以及四步握手中的第一个消息中的其它相关信息。
可选地,该第二认证消息包括DHCP供应消息。DHCP供应消息中包含分配IP地址的DHCP服务器的标识和DHCP服务器所分配的IP地址。如果网络规定由AS分配IP地址,则AP将AS的标识作为DHCP服务器标识。可能有多个DHCP服务器向AP发送了DHCP供应消息,则AP仅需要包含一个DHCP供应消息在第二认证消息中即可,通常被选中的DHCP服务器是AP收到的第一个DHCP供应消息的发送者。
S210,STA根据第二认证消息中的ANonce、自身的现场值SNonce和获取的第一MSK,可以得到PMK,并基于PMK、ANonce、SNonce、AP和STA的MAC地址,可以计算出第一PTK。任何EAP方法执行成功后,交互双方即AS和STA生成MSK。一旦获取MSK后,就可以得到PMK,进而可以算出PTK。一旦STA算出PTK之后,就用PTK保护发送给AP的空口消息,即在空口消息中包含MIC。
S211,STA向AP发送第三认证消息,该第三认证消息包括EAP方法中最后一个EAP响应消息、根据该第一PTK生成的用于保护该第三认证消息的第一MIC,以及四步握手的第二个消息中的其它相关信息。可选地,该第三认证消息还包括DHCP请求消息。
S212,AP收到第三认证消息之后,缓存该第三认证消息的内容及其第一MIC。因为AP还没有获得PMK,不能算出PTK,因此对该第三认证消息的第一MIC的验证延后进行。
S213,AP向AS发送ARQ消息,该ARQ消息中承载第三认证消息中的EAP响应消息中的信息。
S214,如果上述EAP过程成功,AS生成MSK,从而得到PMK。
S215,AS向AP发送认证成功消息,并且在其中包含PMK。
S216,AP收到AS的认证成功的消息后,获得PMK,并结合从第三认证消息中获得的SNonce、自己的ANonce、STA和AP的MAC地址等信息计算得到第二PTK,并用第二PTK验证消息第一MIC。
S219,AP向STA发送第四认证消息,该第四认证消息包括EAP成功消息、AP为STA分配的关联标识AID、组密钥GTK及其相关信息等,还包括ANonce等四步握手的第三个消息中其它相关信息,以及第二MIC,该第二MIC由AP根据该第二PTK生成,用于保护该第四认证消息。可选地,该第四认证消息还包括DHCP应答消息。其中的GTK及其相关信息是用PTK加密的。采用本发明实施例,第四认证消息中的AID也可以用PTK加密传输,从而能够增加信息的安全性。第四认证消息还可以包括由AP指定的其它信息,例如关联超时时间、最大空闲时间等。
S220,STA根据该第一PTK对第二MIC进行验证。如果STA验证第二MIC成功,则STA从第四认证消息中取出AID、GTK等信息,并且该方法200可以包括S221和S222,否则STA向AP发送验证失败消息或不作响应。
S221,STA验证第四认证消息的第二MIC成功后,向AP发送第五认证消息,该第五认证消息包括第四MIC,该第四MIC由STA根据第一PTK生成,用于保护该第五认证消息,并且该第五认证消息可以包括SNonce以及四步握手的第四个消息中其它相关信息。该第五认证消息的作用在于告知AP收到了第四认证消息,是上述整个入网过程中空口上的最后一个消息。
S222,AP收到第五认证消息后,会按例验证其第四MIC,如果验证失败,则可以取消该STA的关联,并通知AS整个认证过程失败。所谓取消关联就是将分配给STA的AID收回,并且将STA相关的认证信息例如PTK等删除,并拒绝接收后续STA发来的消息或不作响应。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
可选地,在S203之前,该方法200包括:
S201,STA在发现所要的AP之后,向AP发送第六认证消息,该第六认证消息中指示使用本发明实施例的建立初始连接的方法,并包括EAP开始消息。该EAP开始消息作为一个信息元素封装在该第六认证消息中。应理解,现有规范中Authentication帧包含的其它信息可以包含在该第六认证消息中,以在启动EAP过程的同时进行这些信息的交互,该信息例如包括移动域标识、支持的速率、电源能力、服务质量(QoS)能力、共存特性等。
S202,AP收到第六认证消息之后,向STA返回第七认证消息。该第七认证消息中的Algorithm取值和第六认证消息中的Algorithm取值相同。AP根据第六认证消息中的RSN元素,确定使用STA支持的认证方法中的一种,并在第七认证消息中的RSN元素中进行指示。第七认证消息中的RSN元素还可以包含其它一些由AP最终确定的信息,例如加密算法等。
当然,STA可能在第六认证消息的RSN元素中指定一种认证方法,则AP不能够进一步进行选择,只有确定AP是否支持该认证方法。如果AP不能支持STA指定的认证方法,那么AP在第七认证消息的状态字段中指示失败。如果在第六认证消息中,STA指示使用EAP认证机制,并且第六认证消息中包含了EAP开始消息,那么AP在第七认证消息中包含EAP请求/标识消息。当然也可以规定STA在第六认证消息中指示使用EAP,但不必包含EAP开始消息,因为EAP开始消息是在802.1x中补充定义的,标准的EAP协议中并不包含这个消息。AP收到第六认证消息后,如果发现STA希望使用EAP方法,那么AP就在第七认证消息中携带EAP请求/标识消息。第七认证消息还可以包括现有规范中Authentication和Association帧中的能力、属性信息等。
如果省略S201和S202,则该第六认证消息中包含的信息可以包含在该第一认证消息中,该第七认证消息中包含的信息可以包含在该第二认证消息中,即该第六认证消息和该第七认证消息实现的功能由该第一认证消息和该第二认证消息完成,使得初始连接建立过程使用更少的消息数量,更多地节省所需时间。
在本发明实施例中,如果终端的IP地址由网络侧设备分配,那么在S205中,AP收到AS的认证过程第一消息包括网络侧设备预分配的IP地址;在S208中,AP保存该IP地址;并且在S219中,AP向STA发送的第四认证消息包括网络侧设备给STA预分配的IP地址。
在本发明实施例中,如果由AP根据DHCP协议获取分配给STA的IP地址,那么该方法200还包括:
S206,如果AS在S205中没有为STA预分配IP地址,则AP的DHCP代理模块转发第一认证消息包括的DHCP发现消息或产生新DHCP发现消息并发送出去。DHCP发现消息是一个IP层的广播消息,网络侧可能存在多个DHCP服务器,则这多个DHCP服务器都可能收到该DHCP发现消息。
S207,收到DHCP发现消息的DHCP服务器向AP发送DHCP供应消息,该DHCP供应消息中携带所提供的IP地址及服务器自身的标识,该标识通常为DHCP服务器自己的IP地址。
S217,如果AP对第三认证消息的第一MIC验证成功,那么AP转发DHCP请求消息或产生新的DHCP请求消息,该DHCP请求消息中包含被选中的DHCP服务器的标识和该DHCP服务器为STA分配的IP地址。如果AP对A5的MIC验证不成功,说明之前的EAP过程发生异常,则向AS反馈认证失败,这里不详细描述。
S218,被选中的DHCP服务器向AP发送DHCP应答消息,确认为STA分配了之前分配的IP地址。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
在本发明实施例中,该第一认证消息还可以包括该SNonce,以便于AP可以较早地计算出PTK,从而能够较早地对空口消息进行保护。具体地,该第一认证消息还包括该SNonce,该第二认证消息还包括第三MIC,该第三MIC由该AP根据该第二PTK生成,用于保护该第二认证消息,其中该向该AP发送第三认证消息,包括:在根据该第一PTK验证该第三MIC正确时,向该AP发送第三认证消息。下面将结合图4,对该方案进行详细说明。
如图4所示,S301、S302与图3中的方法200中的S201、S202相同,在此不再赘述。STA向AP发送第一认证消息,该第一认证消息包括用户标识和STA的现场值SNonce(如S303所示);AP向AS发送第一接入请求消息,该第一接入请求消息包括该用户标识和该SNonce(如S304所示);AS生成MSK,并根据SNonce等信息计算得到PMK(如S305所示);AS向AP发送第一接入接受消息,该第一接入接受消息包括该PMK(如S306所示)。
AP接收到该PMK后,可以根据PMK、ANonce、SNonce、AP和STA的MAC地址,计算得到第二PTK,从而可以保护后续发送给STA的认证消息(如S309所示)。因此,AP发送给STA的第二认证消息还可以包括第三MIC,该第三MIC由AP根据该第二PTK生成,用于保护该第二认证消息(如S310所示)。STA接收到该第二认证消息后,需要将计算得到的第一PTK用于验证第三MIC(如S311所示),并且在STA验证该第三MIC成功时,向AP发送第三认证消息(如S312所示)。由于AP已经计算得到第二PTK,因此AP在收到该第三认证消息后,可以立即对第一MIC进行验证(如S313所示),并且AS向AP发送的认证成功消息不需要包括PMK(如S315所示)。
应理解,S307、S308、S314、S316至S321分别与图3中的方法200中的S206、S207、S213、S217至S222相同,在此不再赘述。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
上文中结合图2至图4,从终端STA的角度详细描述了根据本发明实施例的建立连接的方法,下面将结合图5,从接入点AP的角度,详细描述根据本发明实施例的方法。
如图5所示,根据本发明实施例的建立连接的方法400包括:
S410,AP接收终端发送的第一认证消息,该第一认证消息包括用户标识;
S420,AP根据该用户标识向该终端发送第二认证消息,该第二认证消息包括EAP方法请求消息和AP的现场值ANonce;
S430,AP接收该终端发送的第三认证消息,该第三认证消息包括EAP方法响应消息、该终端的现场值SNonce以及第一MIC,该第一MIC由该终端根据第一PTK生成,用于保护该第三认证消息,该第一PTK由该终端根据该ANonce、该SNonce和获取的第一MSK生成;
S440,AP根据该ANonce、该SNonce和获取的第二PMK生成第二PTK;
S450,AP在根据该第二PTK验证该第一MIC正确时,向该终端发送第四认证消息,该第四认证消息包括EAP成功消息、该AP为该终端配置的配置信息以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,以便于该终端根据该第一PTK对该第二MIC进行验证。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
应理解,对于成功的EAP认证过程,终端和AP应该获得相同的PMK,并在此基础上获得相同的PTK,即该第一PMK和该第二PMK应该相等,该第一PTK和该第二PTK应该相等。
可选地,如图5所示,在本发明实施例中,在终端验证该第二MIC正确时,该方法400还包括:
S460,AP接收该终端在验证该第二MIC正确时发送的第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
可选地,该配置信息包括关联标识AID和/或组临时密钥GTK。
可选地,该第一认证消息包括EAP响应标识消息,该EAP响应标识消息包括该用户标识。
在本发明实施例中,在AP接收终端发送的第一认证消息之后,该方法400还包括:
AP向认证服务器AS发送第一接入请求消息,该第一接入请求消息包括该用户标识;
AP接收该AS在确定该用户标识存在时发送的第一接入接受消息。
在本发明实施例中,在AP接收终端发送的第三认证消息之后,该方法400还包括:
AP向AS发送第二接入请求消息,该第二接入请求消息包括该EAP方法响应消息中的信息;
AP接收该AS在对该终端认证成功时发送的第二接入响应消息,该第二接入响应消息包括认证成功信息和该PMK。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,也可以由AP根据DHCP协议获取。当终端的IP地址由网络侧设备分配时,该第一接入接受消息包括该AS为该终端分配的第一IP地址,并且该第四认证消息还包括该第一IP地址。当终端的IP地址由AP根据DHCP协议分配时,在AP接收终端发送的第一认证消息之后,该方法400还包括:
AP发送DHCP发现消息;
AP接收DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,
并且在AP向该终端发送第四认证消息之前,该方法400还包括:
AP发送DHCP请求消息;
AP接收被选中的DHCP服务器发送的DHCP应答消息。
可选地,该第一认证消息还包括该DHCP发现消息,该第二认证消息还包括该DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括该DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的该DHCP应答消息。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
应理解,在本发明实施例中,EAP方法包括多种基于EAP的认证方法,例如EAP-AKA、EAP-TLS等,下面将结合图6,以EAP-AKA认证方法为例,对本发明实施例的建立连接的方法进行描述。应理解,本发明实施例仅以EAP-AKA为例进行说明,而并不构成对本发明实施例的任何限定。
如图6所示,该方法500包括:
S501,STA在发现所要的AP之后,向AP发送A1消息,A1消息中用Algorithm参数指示使用本发明初始连接建立方法,RSN信息元素中指示使用EAP机制。因为STA希望使用EAP认证机制,因此在A1消息中携带了EAP开始消息。
S502,AP收到A1消息之后,向STA返回A2消息。该A2消息中的Algorithm取值和A1消息中的Algorithm取值相同。因为AP支持EAP方法,所以AP在A2消息中携带EAP请求/标识消息。
S503,STA向AP发送A3消息。A3消息中包含EAP响应/标识消息。EAP响应/标识消息中包含用户标识User-ID。如果STA使用DHCP获得IP地址,则在A3消息中包含DHCP发现消息。
S504,AP收到A3消息后,将User-ID转发给AS。
S505,AS从AP收到User-ID,如果该User-ID存在,产生或取一个已经产生的AKA向量,计算MSK和AKA认证方法中用于保护消息的密钥K_aut,从MSK得到PMK。
AKA向量是AKA认证方法中的一个术语,一个AKA是针对一个User-ID产生的,向量包括一个随机数RAND、一个让STA认证AS的认证字AUTN、一个AS认证STA的数值RES、以及其它一些相关数据。其中的AUTN、RES都是在随机数RAND和共享密钥等数据参与运算的结果。用于保护消息的密钥K_aut也是在随机数RAND和共享密钥的参与下计算出来的。
S506,AS向AP发送认证过程的第一个消息开始认证过程,在这个消息中包含AKA向量中的随机数RAND、AUTN,并用密钥K_aut对RAND、AUTN等信息保护,产生消息认证码MAC1。AS还可以包含预分配的IP地址。
S507、S508,如果A3消息中包含DHCP发现消息,并且AS没有在S506的消息中为STA预分配IP地址,则AP的DHCP代理模块发送DHCP发现消息,并接收DHCP供应消息,在此不再赘述。
S509,AP收到AS的认证过程第一消息后,如果消息中包含预分配的IP地址,则保留该IP地址,或保留从DHCP供应消息中获得的IP地址,准备在后续步骤中发送给STA。
S510,AP向STA发送A4消息,其中包含AP现场值ANonce、EAP请求/AKA挑战(EAP-Request/AKA-Challenge)消息、A4消息的完整性码MIC,该A4消息还可以包含DHCP供应消息。EAP请求/AKA挑战消息中包含AS产生的RAND、AUTN、MAC1数据。
S511,STA收到A4消息后,从其中的EAP请求/AKA挑战消息中取出RAND等数据,验证AUTN的正确性,如果AUTN正确,根据RAND和共享密钥算出MSK、K_aut,再用K_aut验证MAC1是否正确。如果AUTN和MAC1验证都成功,则STA就认证AS成功,则STA从MSK得到PMK,进而可以利用PMK、SNonce、ANonce等数据计算PTK。
S512,STA认证AS成功并且验证A4消息的MIC成功后,向AP发送A5消息,其中包含EAP响应/AKA挑战(EAP-Response/AKA-Challenge)消息,并包含SNonce和MIC。如果STA通过DHCP协议获得IP地址,则在该A5消息中可以包含DHCP请求消息。EAP响应/AKA挑战消息中包含RES和MAC2,其中RES是由STA根据RAND、共享密钥等计算,MAC2是用K_aut对EAP响应/AKA挑战消息中RAND等数据的完整性保护。
S513,AP收到A5消息之后,缓存该消息中的内容及其MIC,并延后验证MIC。
S514,AP向AS发送消息,其中承载A5消息中EAP响应消息中的信息,即RES和MAC2。
S515,AS对RES和MAC2进行验证,即使用自己的AKA向量中的RES与消息中的RES对比,若相同,进一步用K_aut验证MAC2。
S516,若AS验证RES和MAC2成功,则对STA的认证成功,向AP发送认证成功消息,其中包含PMK。
S517,AP收到AS的认证成功消息后,取出PMK,结合自己的ANonce、A5消息中的SNonce以及AP和STA双方的MAC计算PTK,用PTK验证A5消息的MIC。若验证成功,则继续下列过程,否则向AS反馈认证失败。
S518、S519,如果AP使用DHCP协议为STA获取IP地址,则转发DHCP请求消息或产生新的DHCP请求消息,并接收DHCP应答消息,在此不再赘述。
S520,AP向STA发送A6消息,其中包含EAP成功消息、AP为STA分配的关联标识AID、组密钥GTK、MIC等其它相关信息,该A6消息还可以包括DHCP应答消息。其中的GTK及其相关信息是用PTK加密的。采用本发明,A6消息中的AID也可以用PTK加密传输。AP还可以在这一步包含由AP指定的其它信息,例如关联超时时间、最大空闲时间等。
S521,STA收到A6消息后,验证A6消息中的MIC,如果验证成功则继续后续步骤,否则STA向AP发送验证失败消息或不作响应。如果验证A6的MIC成功,STA从A6消息中取出AID、GTK等信息。如果A6消息包含DHCP应答消息,则STA确定获得IP地址。
S522,STA在验证A6消息中的MIC成功后,向AP发送A7消息,其中包含MIC,并可以包含SNonce,也可以包含其它一些信息。A7消息的作用在于告知AP收到了A6,是上述整个过程中空口上最后一个消息。
S523,AP收到A7消息后按例会验证其MIC,如果验证失败,则可以取消该STA的关联,并通知AS整个认证过程失败。所谓取消关联就是将分配给STA的AID收回,并且将STA相关的认证信息例如PTK等删除,AP将拒绝接收后续STA发来的消息或不作响应。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应理解,可以省略S501和S502,则该A1消息中包含的信息可以包含在该A3消息中,该A2消息中包含的信息可以包含在该A4消息中,即该A1消息和该A2消息实现的功能由该A3消息和该A4消息完成,使得初始连接建立过程使用更少的消息数量,更多地节省所需时间。
在根据本发明实施例的采用EAP-AKA认证方法的建立连接的方法500中,AS可以向STA发出挑战信息前就算出MSK的方法,此时需要在S503中的A3消息中携带SNonce。由此,在S505中,AS计算得到PMK,并在S506中,AS将PMK随挑战信息信息同时发送给AP。在S509中,由于AP提前拿到了PMK,并且从A3消息获得了SNonce,因此AP可以提前计算PTK。在S510中,由于AP已经算出PTK,因此可以在A4中就包含MIC。在S513中,由于在S509中,AP已经算出PTK,因此这里可以立即验证A5的MIC,而不必延后验证。并且在S516中,由于AS已经在S506中将PMK发送给AP,因此这一步的消息中不必再包含PMK。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
如图7至9所示,本发明实施例还提供了一种建立连接的方法,下面将结合图7至9,分别从终端STA和接入点AP的角度对该方法进行描述。
如图7所示,根据本发明实施例的建立连接的方法600包括:
S610,终端向接入点AP发送第一认证消息,该第一认证消息包括终端标识;
S620,终端接收该AP根据该终端标识发送的第二认证消息,该第二认证消息包括该AP的现场值ANonce;
S630,终端根据该ANonce、终端的现场值SNonce和预置的预共享密钥PSK,生成第一成对设备间的临时密钥PTK;
S640,终端向该AP发送第三认证消息,该第三认证消息包括该SNonce以及第一消息完整性码MIC,该第一MIC由该终端根据该第一PTK生成,用于保护该第三认证消息;
S650,终端接收该AP在根据第二PTK验证该第一MIC正确时发送的第四认证消息,该第四认证消息包括该AP为该终端分配的关联标识AID、组临时密钥GTK以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,该第二PTK由该AP根据该ANonce、该SNonce和该PSK生成;
S660,终端根据该第一PTK,对该第二MIC进行验证。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
可选地,如图7所示,在终端验证该第二MIC正确时,该方法600还可以包括:
S670,终端在验证该第二MIC正确时向该AP发送第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,也可以由AP根据DHCP协议获取。当终端的IP地址由网络侧设备分配时,该第四认证消息还包括该AP为该终端分配的第一互联网协议IP地址。
可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
可选地,该终端标识包括该终端的MAC地址和/或用户标识。
在本发明实施例中,在AP向STA发送第二认证消息之前,AP可以提前计算出PMK,从而能够进一步增加空口消息的安全性。此时,可选地,该第一认证消息还包括该SNonce,该第二认证消息还包括第三MIC,该第三MIC由该AP根据该第二PTK生成,用于保护该第二认证消息,其中该向该AP发送第三认证消息,包括:在根据该第一PTK验证该第三MIC正确时,向该AP发送第三认证消息。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
如图8所示,根据本发明实施例的建立连接的方法700包括:
S710,AP接收终端发送的第一认证消息,该第一认证消息包括终端标识;
S720,AP根据该终端标识向该终端发送第二认证消息,该第二认证消息包括AP的现场值ANonce;
S730,AP接收该终端发送的第三认证消息,该第三认证消息包括该终端的现场值SNonce以及第一MIC,该第一MIC由该终端根据第一PTK生成,用于保护该第三认证消息,该第一PTK由该终端根据该ANonce、该SNonce和预置的PSK生成;
S740,AP根据该ANonce、该SNonce和该PSK生成第二PTK;
S750,在根据该第二PTK验证该第一MIC正确时,向该终端发送第四认证消息,该第四认证消息包括该AP为该终端分配的关联标识AID、组临时密钥GTK以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,以便于该终端根据该第一PTK对该第二MIC进行验证。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
可选地,如图8所示,在终端验证该第二MIC正确时,该方法700还可以包括:
S760,AP接收该终端在验证该第二MIC正确时发送的第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,也可以由AP根据DHCP协议获取。当终端的IP地址由网络侧设备分配时,该第四认证消息还包括该AP为该终端分配的第一互联网协议IP地址。当终端的IP地址由AP根据DHCP协议获取时,在AP接收终端发送的第一认证消息之后,该方法700还包括:
发送DHCP发现消息;
接收DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,
在AP向该终端发送第四认证消息之前,该方法700还包括:
发送DHCP请求消息;
接收被选中的DHCP服务器发送的DHCP应答消息。
可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
可选地,该终端标识包括该终端的MAC地址和/或用户标识。
下面将以图9所示的实施例为例,详细描述使用PSK认证机制的建立连接的方法800。PSK认证机制实际上是跳过EAP认证过程的一种认证机制,在相关规范中,如果不执行EAP认证过程,直接用预置的PSK作为PMK进行四步握手,整个连接建立过程也包括802.11认证(开放系统)、关联、四步握手、IP分配等过程。如果四步握手能成功进行,则说明双方有相同的PSK(即作为PMK),也就等于完成了相互认证。PSK认证机制通常用于简单的网络部署,通常由AP直接完成对STA的认证,即AP就是AS。
如图9所示,该方法800包括:
S801,STA向AP发送A1消息,A1消息中指示使用本发明的建立连接的方法,并指示使用PSK认证机制。具体来说,就是用Algorithm参数指示使用本发明的快速初始连接建立方法,用RSN信息元素中的参数指定认证机制为PSK。当STA指定使用PSK认证机制时,就不用在A1消息中携带EAP消息。
S802,AP收到A1消息之后,向STA发送A2消息。A2消息中的Algorithm取值和A1消息中的Algorithm取值相同。
S803,STA向AP发送A3消息。A3消息中可以包括该终端的MAC地址和/或用户标识User-ID。如果STA使用DHCP获得IP地址,则在A3消息中包含DHCP发现消息。
AP收到A3后,如果A3中有User-ID,就将User-ID作为STA标识,否则,将STA的MAC地址作为STA标识。如果STA标识不存在,AP就结束上述过程,否则继续执行以下步骤。
S804、S805,如果AP不直接给STA分配IP地址,则AP作为DHCP代理转发或新生成DHCP发现消息,并接收DHCP供应消息,在此不再赘述。
S807,AP向STA发送A4消息,其中包含AP现场值ANonce,并可以包含DHCP供应消息。
S808,STA从A4消息中得到ANonce,并生成SNonce,并通过将PSK作为PMK,就可以生成第一PTK。
S809,STA向AP发送A5消息。如果STA通过DHCP协议获得IP地址,则在这个消息中包含DHCP请求消息。A5中包含用第一PTK保护A5消息生成的MIC。
S810,AP收到A5消息之后,将STA对应的PSK作为PMK,结合收到的SNonce和自己的ANonce等,计算第二PTK,用生成的第二PTK验证A5消息中的MIC。
S811、S812,如果AP验证A5消息的MIC成功,并且AP从DHCP Server那里为STA获得IP地址,则转发或生成DHCP请求消息,并接收DHCP应答消息,在此不再详述。
S813,如果AP验证A5消息的MIC成功,则向STA发送A6消息,其中包含AP为STA分配的关联标识AID、组密钥GTK及其相关信息等,以及A6消息的MIC。
S814,STA收到A6消息后,验证A6消息的MIC。
S815,STA验证A6消息的MIC成功后,向AP发送A7消息,其中包含MIC,并可以包含SNonce,也可以包含其它一些信息。
S816,AP收到A7消息后按例会验证该A7消息的MIC。
上述过程中,A4、A5、A6、A7四个消息基本与原来的四步握手过程类似,完成了四步握手的功能,而在A3、A4、A5、A6中包含DHCP消息,完成了IP地址分配,在A6中包含了AID,完成了原来关联过程完成的功能,因此可以用更少的空口消息完成相应的功能,提高了效率。应理解,A1、A2和A7消息实际上是可以省略的。
在本发明实施例中,可选地,在S803中,STA在A3消息中携带SNonce;并且该方法800还包括S806,AP直接将PSK作为PMK,并根据从A3消息得到了SNonce,提前算出PTK;在S807中,由于AP已经算出了PTK,因此在A4消息中就可以携带MIC;在S808中,因为A4消息中携带MIC,并且STA从A4消息得到ANonce,因此此时ATA能算出PTK,对A4消息中的MIC进行验证。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
因此,本发明实施例的建立连接的方法,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
上文中结合图2至图9,详细描述了根据本发明实施例的方法,下面将结合图10至图18,详细描述根据本发明实施例的装置。
图10示出了根据本发明实施例的终端1000的示意性框图。如图10所示,该终端1000包括:
第一发送模块1100,用于向AP发送第一认证消息,该第一认证消息包括用户标识;
第一接收模块1200,用于接收该AP根据该用户标识发送的第二认证消息,该第二认证消息包括可扩展认证协议EAP方法请求消息和该AP的现场值ANonce;
生成模块1300,用于根据该ANonce、该终端的现场值SNonce和获取的第一主会话密钥MSK,生成第一成对设备间的临时密钥PTK;
第二发送模块1400,用于向该AP发送第三认证消息,该第三认证消息包括EAP方法响应消息、该SNonce以及第一消息完整性码MIC,该第一MIC由该终端根据该第一PTK生成,用于保护该第三认证消息;
第二接收模块1500,用于接收该AP在根据第二PTK验证该第一MIC正确时发送的第四认证消息,该第四认证消息包括EAP成功消息、该AP为该终端配置的配置信息以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,该第二PTK由该AP根据该ANonce、该SNonce和获取的第二成对设备间的主密钥PMK生成;
验证模块1600,用于根据该第一PTK,对该第二MIC进行验证。
根据本发明实施例的终端1000中的各个模块的上述和其它操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
本发明实施例的终端,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
可选地,如图11所示,该终端1000还包括:
第三发送模块1700,用于在验证该第二MIC正确时,向该AP发送第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
可选地,该配置信息包括关联标识AID和/或组临时密钥GTK。
可选地,该第四认证消息还包括网络侧设备为该终端分配的第一互联网协议IP地址。
可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
可选地,该第一认证消息包括EAP响应标识消息,该EAP响应标识消息包括该用户标识。
可选地,该第一认证消息还包括该SNonce,该第二认证消息还包括第三MIC,该第三MIC由该AP根据该第二PTK生成,用于保护该第二认证消息,
其中第二发送模块1400还用于在根据该第一PTK验证该第三MIC正确时,向该AP发送第三认证消息。
因此,本发明实施例的终端,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
图12示出了根据本发明实施例的接入点2000的示意性框图。如图12所示,该接入点2000包括:
第一接收模块2100,用于接收终端发送的第一认证消息,该第一认证消息包括用户标识;
第一发送模块2200,用于根据该用户标识向该终端发送第二认证消息,该第二认证消息包括EAP方法请求消息和该AP的现场值ANonce;
第二接收模块2300,用于接收该终端发送的第三认证消息,该第三认证消息包括EAP方法响应消息、该终端的现场值SNonce以及第一MIC,该第一MIC由该终端根据第一PTK生成,用于保护该第三认证消息,该第一PTK由该终端根据该ANonce、该SNonce和获取的第一MSK生成;
生成模块2400,用于根据该ANonce、该SNonce和获取的第二PMK生成第二PTK;
第二发送模块2500,用于在根据该第二PTK验证该第一MIC正确时,向该终端发送第四认证消息,该第四认证消息包括EAP成功消息、该AP为该终端配置的配置信息以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,以便于该终端根据该第一PTK对该第二MIC进行验证。
根据本发明实施例的接入点2000中的各个模块的上述和其它操作和/或功能分别为了实现图5中的方法400的相应流程,为了简洁,在此不再赘述。
本发明实施例的接入点,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
可选地,如图13所示,该接入点2000还包括:
第三接收模块2600,用于接收该终端在验证该第二MIC正确时发送的第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
可选地,该配置信息包括关联标识AID和/或组临时密钥GTK。
可选地,该第一认证消息包括EAP响应标识消息,该EAP响应标识消息包括该用户标识。
可选地,如图14所示,该接入点2000还包括:
第三发送模块2710,用于在所述第一接收模块2100接收终端发送的第一认证消息之后,向认证服务器AS发送第一接入请求消息,该第一接入请求消息包括该用户标识;
第四接收模块2720,用于接收该AS在确定该用户标识存在时发送的第一接入接受消息。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,也可以由AP根据DHCP协议获取。当终端的IP地址由网络侧设备分配时,该第一接入接受消息包括该AS为该终端分配的第一IP地址,并且该第四认证消息还包括该第一IP地址。
可选地,如图14所示,该接入点2000还包括:
第六发送模块2770,用于在第二接收模块2300接收该终端发送的第三认证消息后,向AS发送第二接入请求消息,该第二接入请求消息包括该EAP方法响应消息中的信息;
第七接收模块2780,用于接收该AS在对该终端认证成功时发送的第二接入响应消息,该第二接入响应消息包括认证成功信息和该PMK。
可选地,如图15所示,该接入点2000还包括:
第四发送模块2730,用于在所述第一接收模块2100接收终端发送的第一认证消息之后,发送DHCP发现消息;
第五接收模块2740,用于接收DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址;
第五发送模块2750,用于在第二发送模块2500向该终端发送第四认证消息之前,发送DHCP请求消息;
第六接收模块2760,用于接收被选中的DHCP服务器发送的DHCP应答消息。
本发明实施例的接入点,通过在保持建立连接过程的安全性以及功能性的同时,减少空口消息交互数量,从而能够缩短建立连接时间,减小终端的电量消耗,并提高用户体验。
图16是根据本发明另一实施例的终端3000的示意性框图。如图16所示,该终端3000包括:
第一发送模块3100,用于向接入点AP发送第一认证消息,该第一认证消息包括终端标识;
第一接收模块3200,用于接收该AP根据该终端标识发送的第二认证消息,该第二认证消息包括该AP的现场值ANonce;
生成模块3300,用于根据该ANonce、该终端的现场值SNonce和预置的预共享密钥PSK,生成第一成对设备间的临时密钥PTK;
第二发送模块3400,用于向该AP发送第三认证消息,该第三认证消息包括该SNonce以及第一消息完整性码MIC,该第一MIC由该终端根据该第一PTK生成,用于保护该第三认证消息;
第二接收模块3500,用于接收该AP在根据第二PTK验证该第一MIC正确时发送的第四认证消息,该第四认证消息包括该AP为该终端分配的关联标识AID、组临时密钥GTK以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,该第二PTK由该AP根据该ANonce、该SNonce和该PSK生成;
验证模块3600,用于根据该第一PTK,对该第二MIC进行验证。
可选地,验证模块3600验证该第二MIC正确时,该终端3000还可以包括:第三发送模块,用于在验证该第二MIC正确时向该AP发送第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
在本发明实施例中,终端的IP地址可以由网络侧设备分配,也可以由AP根据DHCP协议获取。当终端的IP地址由网络侧设备分配时,该第四认证消息还包括该AP为该终端分配的第一互联网协议IP地址。
可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
可选地,该终端标识包括该终端的MAC地址和/或用户标识,和/或与MAC地址有映射关系的其他标识,如IP地址等。
可选地,该第一认证消息还包括该SNonce,该第二认证消息还包括第三MIC,该第三MIC由该AP根据该第二PTK生成,用于保护该第二认证消息,其中第二发送模块3400用于在根据该第一PTK验证该第三MIC正确时,向该AP发送第三认证消息。
根据本发明实施例的终端3000中的各个模块的上述和其它操作和/或功能分别为了实现图7中的方法600的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的终端,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
图17是根据本发明另一实施例的接入点4000的示意性框图。如图17所示,该接入点4000包括:
第一接收模块4100,用于接收终端发送的第一认证消息,该第一认证消息包括终端标识;
第一发送模块4200,用于根据该终端标识向该终端发送第二认证消息,该第二认证消息包括该AP的现场值ANonce;
第二接收模块4300,用于接收该终端发送的第三认证消息,该第三认证消息包括该终端的现场值SNonce以及第一MIC,该第一MIC由该终端根据第一PTK生成,用于保护该第三认证消息,该第一PTK由该终端根据该ANonce、该SNonce和预置的PSK生成;
生成模块4400,用于根据该ANonce、该SNonce和该PSK生成第二PTK;
第二发送模块4500,用于在根据该第二PTK验证该第一MIC正确时,向该终端发送第四认证消息,该第四认证消息包括该AP为该终端分配的关联标识AID、组临时密钥GTK以及第二MIC,该第二MIC由该AP根据该第二PTK生成,用于保护该第四认证消息,以便于该终端根据该第一PTK对该第二MIC进行验证。
可选地,在第二发送模块4500验证该第二MIC正确时,该接入点4000还可以包括:
第三接收模块,用于接收该终端在验证该第二MIC正确时发送的第五认证消息,该第五认证消息包括第四MIC,该第四MIC由该终端根据该第一PTK生成,用于保护该第五认证消息。
可选地,该第一认证消息还包括动态主机设置协议DHCP发现消息,该第二认证消息还包括DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址,该第三认证消息还包括DHCP请求消息,该第四认证消息还包括被选中的DHCP服务器发送的DHCP应答消息。
可选地,该终端标识包括该终端的MAC地址和/或用户标识。
可选地,如图18所示,该接入点4000还包括:
第三发送模块4600,用于发送DHCP发现消息;
第三接收模块4700,用于接收DHCP供应消息,该DHCP供应消息包括发送该DHCP供应消息的DHCP服务器的服务器标识和该DHCP服务器分配的第二IP地址;
第四发送模块4800,用于发送DHCP请求消息;
第四接收模块4900,用于接收被选中的DHCP服务器发送的DHCP应答消息。
根据本发明实施例的接入点4000中的各个模块的上述和其它操作和/或功能分别为了实现图8中的方法700的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的接入点,通过在保持建立连接过程的安全性以及功能性的同时,能够减少空口消息交互数量,缩短建立连接时间,加快终端入网的过程,并能够减小终端的电量消耗,提高空口消息的安全性,增加系统的兼容性以及提高用户体验。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。