执行链路建立和认证的系统和方法与流程

文档序号:11525037阅读:378来源:国知局
执行链路建立和认证的系统和方法与流程

本申请是申请日为2012年9月12日、申请号为201280044189.3(国际申请号pct/us2012/054874)、发明名称为“执行链路建立和认证的系统和方法”的中国专利申请的分案申请。

相关申请的交叉引用

本申请要求来自共同拥有的2011年9月12日提交的美国临时专利申请第61/533,627号(高通案卷号113346p1)、2011年9月15日提交的美国临时专利申请第61/535,234号(高通案卷号113346p2)、2012年1月4日提交的美国临时专利申请第61/583,052号(高通案卷号113346p3)、2012年3月5日提交的美国临时专利申请第61/606,794号(高通案卷号121585p1)、以及2012年5月11日提交的美国临时专利申请第61/645,987号(高通案卷号121585p2)和2012年3月15日提交的美国临时专利申请第61/611,553号(高通案卷号121602p1)的优先权,这些临时专利申请的内容通过整体引用明确地结合于此。此外,2012年9月11日提交的具有高通案卷号113346的题为“wirelesscommunicationusingconcurrentre-authenticationandconnectionsetup(使用并发重认证和连接建立的无线通信)”的非临时申请和2012年9月11日提交的具有高通案卷号121602的题为“systemsandmethodsforencodingexchangeswithasetofsharedephemeralkeydata(用于用一组共享短暂密钥数据对交换进行编码的系统和方法)”的非临时申请的内容通过引用结合于此。

背景

以下一般涉及无线通信,尤其涉及无线通信中的链路建立和认证过程。



背景技术:

技术进步已导致越来越小且越来越强大的计算设备。例如,当前存在各种各样的便携式个人计算设备,包括小、轻且用户易于携带的无线计算设备,诸如便携式无线电话、个人数字助理(pda)、以及寻呼设备。更具体地,便携式无线电话(诸如蜂窝电话和网际协议(ip)电话)可在无线网络上传达语音和数据分组。此外,许多这样的无线电话包括被结合于此的其他类型的设备。例如,无线电话还可包括数码相机、数码摄像机、数字记录器、以及音频文件播放器。另外,此类无线电话可处理可执行指令,包括可被用于访问因特网的软件应用(诸如web浏览器应用)。由此,这些无线电话可包括显著的计算能力。

无线通信网络使得通信设备能够在移动的同时传送和/或接收信息。这些无线通信网络可被通信地耦合至其他公共网或专用网以使得能够向和从移动接入终端进行信息传递。此类通信网络通常包括多个接入点(ap),这些接入点提供至接入终端(例如,移动通信设备、移动电话、无线用户终端)的无线通信链路。这些接入点可以是静止的(例如,固定在地面上)或移动的(例如,安装在车辆、卫星上等),并且可被定位成提供当接入终端在覆盖区内移动时的广覆盖区。

便携式设备可被配置成经由这些无线网络来传达数据。例如,许多设备被配置成根据使得能经由接入点进行无线数据交换的电气和电子工程师协会(ieee)802.11规范来操作。在一些通信系统中,当移动接入终端通过接入点附连至通信网络时,其执行网络接入认证。移动接入终端每次连接至不同接入点时,可能需要重复该认证过程。然而,重复该认证过程会引入显著的建立延迟。

许多通信设备被配置成在初始连接阶段以及一个或多个重连接阶段两者执行链路建立。当前系统对认证后进行的ap-ip地址指派采取预共享密钥以保护ip地址指派。

尽管利用系统中的两个或更多个消息处理点之间传达的多条消息允许链路建立,但减少所传达的消息数目同时维持所需的通信认证级别是高度期望的。

此外,在链路建立可被执行之前,移动通信设备可能要扫描附近的接入点。该扫描可以是“被动的”或“主动的”。在“被动”扫描中,设备可监听接入点活动(例如,控制消息)。在“主动”扫描中,设备可广播一查询并且随后等待来自附近接入点的响应。因此,“被动”扫描可能是耗时的,而“主动”扫描可能既消耗时间又消耗移动通信设备处的功率。



技术实现要素:

本发明公开了一种方法,包括:在接入点处,从移动设备接收请求;从所述请求中提取可扩展认证协议(eap)重认证发起消息和站一次性数(snonce),其中所述eap重认证发起消息被包括在所述请求的第一信息元素中且所述snonce被包括在所述请求的第二信息元素中,所述第一信息元素不同于所述第二信息元素;将所述eap重认证发起消息发送至认证服务器;从所述认证服务器接收应答消息,其中所述应答消息包括重认证主会话密钥(rmsk);生成接入点一次性数(anonce);以及将响应发送至所述移动设备,其中所述响应包括所述anonce。还公开了相应的装置、装备和非瞬态处理器可读介质。

附图说明

在结合附图理解下面阐述的详细描述时,各种特征、本质、和优点会变得明显,在附图中,相像的附图标记贯穿始终相应地标识类似元素。

图1是解说无线网络的示例的概念图。

图2是解说示例性用户设备的框图。

图3是解说在常规连接建立中可执行的消息收发的流程图。

图4是解说可根据本公开的一个或多个方面来执行的消息收发的流程图。

图5是解说在执行链路建立和认证时可执行的消息收发的流程图。

图6是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图7是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图8是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图9是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图10是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图11是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图12是解说在重认证协议期间可执行的消息收发的流程图。

图13解说可被用于重认证协议的密钥分层结构。

图14是示出用于生成重认证请求和发现请求并将其集束成关联请求的示例性过程的流程图。

图15是示出可在基站处操作以接收由站/终端发送的关联请求并从该关联请求中提取重认证请求和上层消息的示例性过程的流程图。

图16是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图17是示出可在图16的站处操作以执行链路建立和认证的示例性过程的流程图。

图18是示出可在图16的接入点处操作以执行链路建立和认证的示例性过程的流程图。

图19是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图20是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。

图21是示出可在图19-20的站处操作以执行链路建立和认证的示例性过程的流程图。

图22是示出可在图19-20的接入点处操作以执行链路建立和认证的示例性过程的流程图。

图23是解说可根据链路建立和认证的其他方面来执行的消息收发的图示。

图24是示出可在站处操作以执行如图23所示的链路建立和认证的示例性过程的流程图。

图25是示出可在接入点处操作以执行如图23所示的链路建立和认证的示例性过程的流程图。

图26是解说可根据链路建立和认证的其他方面来执行的消息收发的图示。

图27是示出可在站处操作以执行如图26所示的链路建立和认证的示例性过程的流程图。

图28是示出可在接入点处操作以执行如图26所示的链路建立和认证的示例性过程的流程图。

具体实施方式

在以下描述中参考了附图,附图中以解说方式示出本公开可在其中实践的具体实施例。这些实施例旨在充分详细地描述本公开的各方面以使得本领域技术人员能够实践本发明。可利用其它实施例,以及可对所公开的实施例作出改变而不会背离本公开的范围。以下详细描述不被理解为限制意义,且本发明的范围仅由所附权利要求来定义。

本文描述的各特征和方面提供了用于在连接建立的重认证过程期间的快速建立时间的设备和方法。例如,所描述的技术可以使移动设备(例如,站(sta))能够关于接入点(ap)执行链路建立,而无需首先监听信标或恳求来自该接入点的探测响应。信标或探测响应通常可包括将在链路建立期间使用的接入点一次性数(anonce)。因此,所描述的技术可以使sta能够在先前没有收到该anonce的情况下执行链路建立。根据“经修改的4路握手”技术,sta可向ap发送不受保护的关联请求,并且可在关联响应中接收来自ap的anonce。收到anonce随后可用于密钥导出。根据“下一个anonce”技术,在使用第一anonce所发起的第一链路建立期间,sta可接收第二anonce以供在第一链路建立之后的第二链路建立中使用。

所描述的技术还可允许使用临时密钥进行上层信令保护。例如,代替发送不受保护的关联请求,sta可经由来自ap的信标或探测响应来接收第一anonce(例如,anonce1)并且可基于第一anonce导出第一密钥(例如,第一成对瞬态密钥(ptk))。第一密钥可用于保护由sta发送至ap的关联请求。响应于接收到关联请求,ap可生成第二anonce(例如,anonce2),并且可基于第二anonce导出第二密钥(例如,第二ptk)。ap可将关联响应传送至sta,该关联响应包括第二anonce并且使用第二密钥来保护。sta可基于第二anonce导出第二密钥,并且可使用第二密钥来处理关联响应并且完成链路建立。第二密钥还可用于保护在sta与ap之间传达的后续消息(例如,数据消息)。

或者,代替经由信标或探测响应从ap接收anonce,sta可在该信标或探测响应中接收anonce种子。anonce种子可以是由ap频繁更新的密码种子值。sta可通过用sta的媒体接入控制(mac)地址对anonce种子进行散列化来生成anonce。因此,与经由信标消息广播到多个sta的anonce不同,在sta处基于anonce种子以及sta的mac地址所生成的anonce对于sta可以是唯一的。sta可使用所生成的anonce来发起与ap的链路建立。在链路建立期间,ap可基于anonce种子以及sta的mac地址来生成anonce,sta的mac地址可被包括在来自sta的链路建立消息(例如,关联请求)中。将注意到,与其他握手技术形成对比,该技术可涉及sta在ap之前生成anonce。有利地,anonce对于sta可以是唯一的,可按“明文”(即,不加密)发送,并且在由ap传送之前可能不是未经授权的设备可预测的。

在一个特定实施例中,一种方法包括将不受保护的关联请求从移动设备发送至接入点。该方法还包括从接入点接收关联响应,其中该关联响应包括anonce。该方法包括在移动设备处使用anonce生成成对瞬态密钥(ptk)。

在另一特定实施例中,一种装置包括处理器和存储指令的存储器,该指令可由处理器执行以将不受保护的关联请求发送至接入点并且从接入点接收关联响应,其中该关联响应包括anonce。该指令还可由处理器执行以使用anonce来生成ptk。

在另一特定实施例中,一种方法包括在接入点处从移动设备接收不受保护的关联请求。该方法还包括从不受保护的关联请求提取发起消息,并且将发起消息发送至认证服务器。该方法还包括从认证服务器接收应答消息,其中该应答消息包括重认证主会话密钥(rmsk)。该方法包括生成anonce并且将关联响应发送至移动设备,其中该关联响应包括anonce。

在另一特定实施例中,一种装置包括处理器和存储指令的存储器,该指令可由处理器执行以从移动设备接收不受保护的关联请求。该指令还可由处理器执行以从不受保护的关联请求中提取发起消息,并且将发起消息发送至认证服务器。该指令可进一步由处理器执行以从认证服务器接收应答消息,其中该应答消息包括rmsk。该指令可由处理器执行以生成anonce并且将关联响应发送至移动设备,其中该关联响应包括anonce。

在另一特定实施例中,一种方法包括在移动设备处使用第一anonce发起与接入点的第一链路建立。该方法还包括在与接入点的第一链路建立期间,接收第二anonce以供在第一链路建立之后与接入点进行的第二链路建立中使用,其中第二anonce与第一anonce不同。

在另一特定实施例中,一种装置包括处理器和存储指令的存储器,该指令可由处理器执行以使用第一anonce发起与接入点的第一链路建立。该指令还可由处理器执行以在与接入点的第一链路建立期间,接收第二anonce以供在第一链路建立之后与接入点进行的第二链路建立中使用,其中第二anonce与第一anonce不同。

在另一特定实施例中,一种方法包括在使用第一anonce的第一链路建立期间,将第二anonce从接入点发送至移动设备以供在第一链路建立之后与移动设备进行的第二链路建立中使用,其中第二anonce与第一anonce不同。

在另一特定实施例中,一种装置包括处理器和存储指令的存储器,该指令可由处理器执行以在使用第一anonce的第一链路建立期间,将第二anonce发送至移动设备以供在第一链路建立之后与移动设备进行的第二链路建立中使用,其中第二anonce与第一anonce不同。

在另一特定实施例中,一种方法包括在移动设备处从接入点接收第一anonce。该方法还包括使用第一anonce生成第一ptk。该方法进一步包括将关联请求发送至接入点,其中该关联请求包括snonce并且使用第一ptk来保护。该方法包括从接入点接收关联响应,其中该关联响应包括第二anonce并且使用第二ptk来保护。该方法还包括使用第二anonce和snonce生成第二ptk。该方法进一步包括使用第二ptk来保护要发送至接入点的至少一条后续消息。

在另一特定实施例中,一种装置包括处理器和存储指令的存储器,该指令可由处理器执行以在接入点处生成要发送至移动设备的anonce种子。该指令还可由处理器执行以基于anonce种子和从移动设备接收到的该移动设备的mac地址来生成anonce。该指令可进一步由处理器执行以基于所生成的anonce来执行与移动设备的链路建立。

在无线网络(诸如802.11(wifi)网络)中,移动用户可从一个网络移动至另一网络。在某些情况下,这些网络可由同一网络承运商或实体来管理。

此类使用情况的某些非限制性示例是:

1.热点通过

(a)用户可经过(若干非重叠的)公众可接入wifi热点(例如,在咖啡店或其他公共场所)。在具有连通性时,用户终端可上传和下载信息(诸如电子邮件、社交联网消息等)。另一示例是乘坐火车的乘客,这些火车可能穿过具有wifi接入点的多个火车站。

2.火车

(b)用户可能乘坐经由本地接入点(ap)向顾客提供wifi服务的火车。该ap可使用基于无线802.11的主干线来连接至轨旁基础设施。定向天线可用于沿轨道提供连续覆盖。

3.驶过收费/称重站

(c)在高速公路上驶过收费站或经过称重站的车辆可能能够连接到该收费站或称重站的ap。在驶过(或被称重)时,信息(诸如向顾客收通行费或货物信息交换)可被提供。

启用针对这些非重叠但相关的连接的应用可依赖于标准ip协议集,并且潜在地信任底层无线技术以建立安全链路。

在用于建立网际协议(ip)连接的某些所提议的系统中,在接收信标之前,可能存在16个往返交换(往返接入终端传达的32条消息)来为该接入终端建立安全链路。

在本文描述的所提议系统的所选实施例中,可以执行快速链路建立,其中用于在接收到信标之后建立ip连接和安全链路的消息数目从先前16个往返交换(32条消息)减少至1个往返交换(2条消息)。可扩展认证协议/重认证协议(eap/erp)可用作快速链路建立的一部分。

图1是解说用于在一个或多个终端与接入点之间传达数据的无线网络配置的一个示例的概念图。图1的网络配置100可用于在一个或多个终端与接入点之间传达数据。网络配置100包括耦合至网络104的接入点102。接入点102可被配置成向各种通信设备提供无线通信,这些通信设备诸如无线设备(在本文中也可被称为站(sta)和接入终端(at)106、108、110)。作为一个非限制性示例,接入点102可以是基站。作为非限制性示例,站/终端106、108、110可以是个人计算机(pc)、膝上型计算机、平板计算机、移动电话、个人数字助理(pda)、和/或被配置成用于无线地发送和/或接收数据的任何设备、或其任何组合。网络104可包括分布式计算机网络,诸如传输控制协议/网际协议(tcp/ip)网络。

接入点102可被配置成提供各种无线通信服务,包括但不限于:无线保真(wifi)服务、微波接入全球互通性(wimax)服务、以及无线会话发起协议(sip)服务。站/终端106、108、110可被配置成用于无线通信(包括但不限于遵循由电气和电子工程师协会(ieee)开发的802.11、802.11-2007、和802.11x规范族的通信)。另外,站/终端106、108、110可被配置成向接入点102发送数据以及从接入点102接收数据。

图2是解说一示例性站/终端200的框图。处理器210(例如,数字信号处理器(dsp))耦合至存储器232,该存储器232用于存储信息(诸如用于处理和传送的数据)以及供在处理器210上执行的指令260。如本文描述的,该指令可由处理器210执行以用于执行站/终端的各种方法和功能。此外,如本文描述的,接入点(ap)、认证服务器(as)、和动态主机配置协议(dhcp)服务器可类似地包括处理器和存储指令的存储器,该指令可由处理器执行以用于分别执行ap、as和dhcp服务器的各种方法和功能。

显示控制器226可耦合至处理器210和显示设备228。编码器/解码器(codec)234也可耦合至处理器210。作为用户接口设备的非限制性示例,扬声器236和话筒238可耦合至codec234。无线控制器240可耦合至处理器210和天线242。在一个特定示例中,可将处理器210、显示控制器226、存储器232、codec234和无线控制器240包括在系统级封装或片上系统设备222中。在一个特定示例中,输入设备230和电源244可耦合至片上系统设备222。此外,在一个特定示例中,如所解说的,显示设备228、输入设备230、扬声器236、话筒238、天线242、和电源244可在片上系统设备222外部。然而,显示设备228、输入设备230、扬声器236、话筒238、无线天线242、和电源244中的每一者可耦合至片上系统设备222的一组件,诸如接口或控制器。

图3是解说在常规连接建立中可执行的消息收发的流程图。在站/终端302与接入点304之间所示的消息可包括探测和认证请求。局域网(lan)上的可扩展认证协议(eap)(eapol)过程可以开始并且包括标识阶段、受保护的eap(peap)阶段、以及eap-微软质询握手认证协议(eap-mschapv2)。一旦eap成功,eapol密钥就可被建立。因此,为了建立链路建立和认证,必须向或从站/终端302传达至少16条消息。

在本文描述的所提议系统的各特定实施例中,用于(在接收到信标之后)建立ip连接的消息数目(从16条消息)减少至2条消息。可扩展认证协议重认证协议(erp)可用作如下文参照图12和13更完整地描述的重认证的一部分,并且可包括以下优化。站/终端(sta)302可执行一次完整的eap认证,并且此后保持使用erp快速重认证来进行快速初始链路建立。

在发送关联请求之前,由站/终端302生成重认证主会话密钥(rmsk),而无需从网络获得质询。由站(sta)302从rmsk生成成对瞬态密钥(ptk),并且该成对瞬态密钥(ptk)包括密钥确认密钥(kck)、密钥加密密钥(kek)、以及瞬态密钥(tk)。

关联请求由站302发送,并且将eap重授权请求与带有快速提交的动态主机配置协议(dhcp)发现以及snonce(例如,snonce由sta302拾取,即,站一次性数)进行集束。经集束的消息可被包括作为一个或多个信息元素(ie)。eap重授权请求由认证服务器(authserver)308使用重认证完整性密钥(rik)来认证。使用重认证主会话密钥(rmsk)或从该rmsk导出的成对瞬态密钥(ptk)来保护带有快速提交的dhcp发现和snonce。带有快速提交的dhcp发现可以是经加密且经mic(消息完整性编码)的、或是未经加密但经mic的。尽管本文的示例中的某一些可利用发现请求(例如,带有快速提交的发现)来解说高效的重认证概念,但应当理解,可改为使用在(协议栈的)上层用于指派ip地址的任何消息。

如果dhcp消息被加密,则接入点304可保持带有快速提交的dhcp发现和snonce消息,直到eap重认证请求被认证服务器308证实。为证实该消息,接入点(ap)304等待直到它从认证服务器308接收到rmsk并且导出成对瞬态密钥(ptk)。基于从认证服务器308获得的rmsk,接入点304导出ptk,该ptk用于mic(消息完整性代码)以及用于对该消息进行解密。

如果dhcp消息未被加密,则在大多数情况下消息来自正确设备的预期下,接入点304可将带有快速提交的dhcp发现转发至dhcp服务器(但保留snonce消息直到eap重认证请求被认证服务器308证实)。即使带有快速提交的dhcp发现可被发送至dhcp服务器,接入点304也将保持dhcp确认,直到它基于从认证服务器308获得的rmsk验证了dhcp发现消息并且接入点304导出了ptk。

接入点(ap)304随后发送用ptk保护的dhcp确认+gtk/igtk。换言之,dhcp确认被加密并且消息完整性被保护。

一个非限制性方面可在用于链路建立和认证的过程中包括以下步骤中的一个或多个步骤。

第一,用户可获得站/终端302并且执行完整的eap认证,作为与特定网络(例如,特定wifi网络)的初始建立的一部分。作为一个非限制性示例,可能完整的eap认证可被维持达一特定认证时段,诸如举例来说,一年。

第二,在该认证时段期间,用户经过(若干非重叠的)公众可接入wifi热点(例如,在咖啡店和其他公共场所)。换言之,该步骤可在该认证时段期间被执行多次并且与作为建立网络的一部分的多个接入点304来执行。站/终端302将使用erp来执行与网络的快速初始链路建立(fils)。如下文更完整地解释的,使用关联请求消息将erp与dhcp快速发现进行集束将使得用于该关联请求的信令减少至一个往返。在该认证时段期间,用户的站/终端302可以在与网络连接时继续执行erp以用于快速初始链路建立(fils)。

第三,随着该认证时段的期满将至,可警告用户在给定时段(例如2周)内再次执行与网络的“完整附连”。在该时段期间,基于早先的完整eap认证,用户将继续能够使用快速认证直到它期满或完整附连被执行。完整附连通知可源自网络,或可在站/终端302上被本地配置。

第四,如果用户不执行完整附连,则一年之后,网络将使erp失败,并且将发起针对另一年的完整eap认证(如步骤1中概括的)。

图4-11解说用于执行两消息链路建立和认证的各种不同场景。

图4是解说为客户站执行高效链路建立和认证的第一示例的流程图。在步骤0a和0b,当通信地耦合至第一接入点ap1304a时,站/终端(sta)302可执行完整eap认证。一旦移动(步骤1)至更接近第二接入点ap2304b并且检测到它的信标(步骤2),站/终端302就可寻求经由第二接入点ap2304b来重认证它自己。在该过程中,接入点304b传送信标/探测,该信标/探测包括用于快速初始链路建立(fils)的能力指示符。该能力指示符可指示处理带有经集束的erp与dhcp快速发现的关联请求的能力。在步骤3中,在发送关联请求之前,站/终端302使用erp生成重认证主会话密钥(rmsk)(参见图13),其中:

rmsk=kdf(k,s);

k=rrk;并且

s=rmsk标签|"\0"|seq|长度。

站/终端302将该一条或多条消息打包成关联请求的信息元素(ie)(或参数/有效载荷)(步骤3)。例如,此类关联请求可包括:1)eap重认证发起(使用rik的消息完整性);2)带有快速提交的dhcp发现(经加密的及使用kck/kek的消息完整性);和/或3)eapol密钥(snonce、anonce)(使用kck的消息完整性)。eapol密钥可被配置成整个帧或子集。anonce(即,接入点一次性数)可由站/终端302选择,并且被发送至接入点ap2304b。例如,接入点(ap2)304b可确保站/终端302正使用在过去若干秒/毫秒内所发送的anonce(例如,从ap2的信标所获得的最新近anonce)。接入点ap2304b保持dhcp和eapol密钥消息,直到它从认证服务器308接收到根主会话密钥(rmsk)。接入点ap2304b从rmsk生成ptk。接入点ap2304b为dhcp和eapol密钥消息执行消息完整性代码(mic)交换,并且对dhcp进行解密。在发送到站/终端302之前,接入点ap2304b使用rmsk导出kck/kek以保护dhcp确认和eapol密钥消息。

在各个示例中,anonce可由ap2304b通过以下方式发送:或是使用信标来发送以允许使用被动扫描的站,或是当主动扫描被使用时在探测响应消息中发送。当anonce由ap2304b使用信标来发送时,anonce可在每一信标或多个信标中被改变。站302可将由站302拾取的anonce包括在从站302发送至ap2304b的关联请求消息中。

图5是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项1a。图5中执行的过程类似于图4中执行的那些过程(选项1),除了rmsk(而不是ptk的kck/kek)被用来认证封装在关联请求消息中的dhcp发现和eapol密钥消息。

图6是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项1b。图6中执行的过程类似于图4中执行的过程(选项1),除了以下可能的差别。在图6上示出的步骤2中,接入点304可广告dhcp请求可被加密的能力。在图6上示出的步骤4中,站/终端302可决定dhcp消息是否应被加密。站/终端302可考虑若干因素,诸如举例来说,dhcp发现请求是否包含任何私有信息等。如果站/终端决定对dhcp发现请求进行加密,则接入点304可保持该消息(如图4和5中所示)。

如果站/终端决定不对dhcp发现请求进行加密,则可执行以下步骤。在图6上示出的步骤4中,dhcp发现请求信息元素(ie)或参数仅仅是受消息完整性保护的。基于步骤4,接入点304发送带有快速提交的dhcp发现(步骤6),而无需等待对eap重认证发起请求的响应(步骤9)。该过程导致ip地址指派与eap重认证规程并行发生。在图6上示出的步骤7a中,接入点保持来自dhcp服务器的dhcp确认直到步骤10b,在该步骤10b中dhcp发现被证实。如果消息完整性失败,则接入点304发起一规程来删除使用dhcp确认所指派的ip地址。

图7是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项2。图7中执行的过程类似于图4中执行的过程(选项1),除了以下可能的差别。代替独立地认证dhcp消息和eapol密钥消息,可使用kck/kek来认证包括eap重认证、dhcp发现和eapol密钥在内的组合有效载荷。接入点304提取eap重认证发起消息,并且将其转发至认证服务器308,而无需证实使用kck/kek认证了的整个消息。接入点304在从认证服务器308接收到rmsk之后认证整个消息。

图8是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项2a。图8中执行的过程类似于图5中执行的过程(选项1a),除了以下可能的差别。代替独立地认证dhcp消息和eapol密钥消息,可使用rmsk来认证包括eap重认证、dhcp发现和eapol密钥在内的组合有效载荷。接入点304提取eap重认证发起消息,并且将其转发至认证服务器308,而无需证实使用rmsk认证了的整个消息。接入点304在从认证服务器308接收到rmsk之后认证整个消息。可在步骤5之前发送dhcp发现消息(步骤9)。在这种情况下,如果认证不成功,则所指派的ip地址被忽略。

图9是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项2b。图9中执行的过程类似于图4中执行的过程,除了以下可能的差别。在步骤2,接入点可广告dhcp请求可被加密的能力。在步骤4,站/终端302决定dhcp消息是否应被加密。站/终端302可考虑若干因素,诸如举例来说,dhcp发现请求是否包含任何私有信息等。如果站/终端302决定对dhcp发现请求进行加密,则接入点304将保持该消息,如上文在选项2和选项2a中描述的。如果站/终端302决定不对dhcp发现请求进行加密,则可执行以下步骤。在步骤4,dhcp发现消息ie是仅仅受消息完整性保护的。基于步骤4,接入点304发送带有快速提交的dhcp发现(步骤6),而无需等待对eap重认证发起请求的响应(步骤9)。该过程导致ip地址指派与eap重认证规程并行发生。在步骤7a中,接入点304保持来自dhcp服务器的dhcp确认直到步骤10b,在该步骤10b中dhcp发现被证实。如果消息完整性失败,则接入点304发起一规程来删除使用dhcp确认消息所指派的ip地址。

图10是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项3。图10中执行的过程类似于图4和5中执行的过程(选项1和1a),除了以下可能的差别。anonce可在关联响应中连同“安装ptk、gtk、igtk”消息一起被发送。图10中的步骤9和11可与如选项1b和选项2b中描述的步骤5-7并行执行。

选项4也可从选项1和2中导出,除了以下可能的差别。代替步骤4处的单条消息(即,关联请求),关联请求可被拆分成封装dhcp发现消息的消息1(m1)以及封装eap重认证发起消息和snonce的消息2(m2)。接入点304直到接收到eapol密钥才对dhcp发现消息进行动作。这两条消息(m1和m2)可分隔开sifs时段。该选项4可具有eapol结构可被重用的优势。

图11是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。该过程可被称为选项5。图11中执行的过程类似于图4中执行的过程(选项1),除了以下可能的差别。接入点304传送信标/探测响应,该信标/探测响应包括用于并发erp和/或ip地址指派的快速初始链路建立(fils)能力指示符。在该场景中,由接入点304指派的ip地址的租赁定时器未期满。站/终端302在发送至第二接入点304的dhcp请求中使用由第一接入点304a指派的ip地址,以确认它是否能继续使用该ip地址。如果该ip地址已期满,则dhcp服务器306发送dhcp-nak。

图12是解说在重认证协议期间可执行的消息收发的流程图。在站/终端302首次附连至网络时,站/终端302执行与认证服务器308的完整eap交换。结果,主会话密钥(msk)被分发给eap认证器。认证器和站/终端302随后使用主会话密钥(msk)按需建立瞬态会话密钥(tsk)。在初始eap交换之时,站/终端302和认证服务器308还导出emsk,该emsk被用来导出重认证根密钥(rrk)。更具体地,重认证根密钥(rrk)可从扩展msk(emsk)或从域专有根密钥(dsrk)导出,该dsrk本身是从emsk导出的。重认证根密钥(rrk)可仅对站/终端302和认证服务器308可用,并且一般不被分发给任何其他实体。此外,重认证完整性密钥(rik)可从重认证根密钥(rrk)导出。站/终端302和认证服务器308可使用重认证完整性密钥(rik)来在执行erp交换时提供拥有证明。重认证完整性密钥(rik)一般也不被发放给任何其他实体,并且一般仅对站/终端302和认证服务器308可用。

出于eap重认证的目的,定义了两个新eap代码:eap发起和eap完成。当站/终端302请求erp时,它执行图12的底部框中示出的erp交换。

图13解说可被用于重认证协议的密钥分层结构。主会话密钥(msk)可从根密钥导出,并且成对主密钥(pmk)可从主会话密钥(msk)导出。扩展msk(emsk)可从根密钥导出。对于erp交换,各种附加密钥可从扩展msk(emsk)导出。dsrk1-dsrkn可被导出。每一个域专有根密钥(dsrk)密钥都可包括rrk。可从重认证根密钥(rrk)导出重认证完整性密钥(rik)和重认证主会话密钥(rmsk1…rmskn)。每一个rmsk都可包括成对主密钥(pmk)。成对瞬态密钥(ptk)(其可包括密钥确认密钥(kck)、密钥加密密钥(kek)和瞬态密钥(tk))可从pmk导出。

图14是示出可在站/终端处操作以生成重认证请求和上层消息(例如,发现请求)并将其集束成关联请求的示例性过程1400的流程图。操作框1402指示从接入点接收包括随机数或一次性数(例如,anonce)的信标。在操作框1404,终端使用该随机数或一次性数根据加密密钥用可扩展认证协议来生成重认证请求。在操作框1406,终端生成上层消息。例如,此类上层消息可以是发现请求、带有快速提交的动态主机配置协议(dhcp)发现请求、和/或网际协议(ip)地址指派消息。

操作框1408指示在某些方面,终端可响应于先前认证过程的结果来生成重认证主会话密钥(rmsk)。操作框1410指示在某些方面,终端可根据rmsk、随机数(anonce)、和/或本地生成的随机数(snonce)来生成成对瞬态密钥(ptk)。

操作框1412指示在某些方面,终端可以用rmsk来对上层消息进行加密。操作框1414指示在某些方面,终端可以用ptk或者kck与kek的组合来对上层消息进行加密。在其他方面,上层消息可以是不经加密的。

操作框1416指示在某些方面,终端可将关联请求生成为封装dhcp发现消息的第一消息、封装eapol重认证发起消息的第二消息。

操作框1418指示终端将该上层消息与重认证请求集束成关联请求。操作框1420指示在某些方面,终端可分开传送第一消息和第二消息。

图15是示出可在基站处操作以接收由站/终端发送的关联请求并从该关联请求中提取重认证请求和上层消息的示例性过程1500的流程图。操作框1502指示在某些方面,接入点可生成随机数,并且传送包括该随机数的信标。

操作框1504指示接入点从终端接收关联请求,该关联请求包括被集束在一起的上层消息(例如,发现请求)与重认证请求。操作框1506指示接入点从该关联请求中提取上层消息,并且将其转发至配置服务器。操作框1508指示接入点从该关联请求中提取重认证请求,并且将其转发至认证服务器。

操作框1510指示在某些方面,接入点可从认证服务器接收加密密钥。操作框1512指示在某些方面,接入点可从该加密密钥、该随机数、和从终端接收到的收到随机数生成ptk。操作框1514指示在某些方面,接入点可以用ptk内的kck和kek的组合来验证上层消息,该ptk包括lan上的可扩展认证协议(eapol)密钥确认密钥(kck)以及eapol密钥加密密钥(kek)。

将注意到,参考图4-15描述的特定实施例可涉及用于快速初始链接建立的4路握手。一般而言,4路握手可包括:1)ap向sta发送anonce,2)sta向ap发送snonce,3)ap向sta发送ptk,以及4)sta确认该握手完成。

因此,4路握手的第一部分可涉及在发起与接入点的链路建立之前,sta监听信标或恳求来自接入点的探测响应。例如,信标或探测响应可包括将由sta用于加密和/或消息完整性目的的anonce。然而,监听信标可能消耗时间,而恳求探测响应可能消耗时间和功率。因此,通过使sta能够执行链路建立而无需首先监听信标或恳求来自接入点的探测响应,可以节省sta处的时间和功率。

图16是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。具体而言,图16解说允许链路建立而无需首先监听信标或恳求来自接入点的探测响应的经修改的4路握手。

图16中解说的所选消息和操作可与图4-11中解说的消息和操作相对应,其中具有以下修改。sta302可在步骤2生成rmsk和snonce,并且在步骤3向ap304发送不受保护的关联请求。不受保护的关联请求可包括snonce。与图4的实施例形成对比,sta302可在接收anonce和导出ptk之前执行这些操作。由于sta302在接收anonce和导出ptk之前发送关联请求,因此ap304可提取关联请求的eap重认证发起部分并且将其转发至as308(如步骤4指示的),而无需执行如图4中描述的anonce验证。相反,ap304可依赖于as308传送带有所导出的rmsk的应答消息(步骤7)作为对sta302的认证。

在接收到rmsk之后,ap304可在步骤9生成anonce,并且在步骤10a基于anonce、rmsk和snonce导出ptk。因此,在sta302处导出ptk之前,可在ap304处导出ptk。在步骤12,ap304可将包括anonce的关联响应发送至sta302,其中该关联响应是使用ptk的kck和kek来保护的。在接收到来自ap304的关联响应之后,在步骤12a,sta302可使用rmsk、snonce和该关联响应中的anonce生成ptk。

从ap304发送的关联响应(其包括anonce)是使用anonce进行完整性保护的。关联响应中除anonce以外的信息元素也可被加密。因此,ap304可使用在ap304处使用关联请求中从sta302获得的snonce、从as308获得的rmsk、以及本地生成且尚未传送至sta302的anonce生成的ptk对关联响应进行“预保护”(即,预加密/预完整性保护)。一旦接收到关联响应,sta302就从关联响应中提取anonce、生成ptk、并且验证对消息的完整性保护。因此,sta302基于从消息中获得的密钥来对该消息进行“后证实”。与首先确认密钥并且随后使用这些密钥来保护数据的常规握手方案相比,此类预保护和后证实可允许更快的链路建立。

图16的实施例因此可以使sta302能够执行用于链路建立的经修改的4路握手,而无需首先监听信标或恳求探测响应。这可减少链路建立时间并且节省sta302处的功率。应当注意,由于sta302不等待信标/探测响应,因此sta302可对不受保护的关联请求使用替换寻址机制。例如,当ap304为sta302所“已知”时,sta302可能先前已将ap304的基本服务集标识符(bssid)存储在sta302的存储器中。为发起链路建立,sta302可检索所存储的bssid,并且可基于bssid将不受保护的关联请求发送至ap304。ap304可能为sta302所“已知”的情形包括当ap304先前已被sta302访问时(例如,“家庭”ap或“办公室”ap)、以及当sta302最近未移动时(例如,如由sta302的蜂窝和/或全球定位系统(gps)能力所确定的)。因此,在一个特定实施例中,sta302可响应于在sta302处所确定的位置信息而发送关联请求(例如,当sta302“知道”目标ap304在sta302附近时)。

图17是示出可在图16的sta302处操作以执行链路建立和认证的示例性过程1700的流程图。在1702,移动设备(例如,sta302)可检索该移动设备先前访问过的接入点的bssid。行进至1704,移动设备可生成rmsk和snonce。前进至1706,移动设备可基于bssid将不受保护的关联请求发送至接入点。例如,参考图16,在步骤3,sta302可将不受保护的关联请求发送至ap304。

继续至1708,移动设备可从接入点接收关联响应,其中该关联响应包括anonce。在1710,移动设备可使用rmsk、snonce以及收到关联响应中的anonce来生成ptk。例如,参考图16,sta302可在步骤12从ap304接收关联响应,并且可在步骤12a导出ptk。

图18是示出可在图16的ap304处操作以执行链路建立和认证的示例性过程1800的流程图。在1802,接入点可从移动设备接收不受保护的关联请求,其中该不受保护的关联请求包括snonce。行进至1804,接入点可从不受保护的关联请求中提取发起消息。继续至1806,接入点可将发起消息发送至认证服务器,并且可从该认证服务器接收应答消息,其中该应答消息包括rmsk。例如,参考图16,ap304可在步骤3从sta302接收不受保护的关联请求,并且可在步骤8从as308接收rmsk。

前进至1808,接入点可生成anonce。在1810,接入点还可使用rmsk、anonce和snonce生成ptk。继续至1812,接入点可将关联响应发送至移动设备,其中该关联响应包括anonce且使用ptk来保护。例如,参考图16,ap304可在步骤9生成anonce,在步骤10a导出ptk,并且在步骤12将关联响应发送至sta302。

图19是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。具体而言,图19解说在第一链路建立期间提供可在第一链路建立之后的第二链路建立期间使用的“下一个”anonce。

图16中解说的所选消息和操作可与图4-11中解说的消息和操作相对应,其中具有以下修改。sta302可使用第一anonce(例如,anonce[x])来发起与ap304的第一链路建立1902。在一个特定实施例中,第一anonce可能先前已经由信标或探测响应由ap304发送并由sta302接收(例如,如步骤2a所示)、从sta302的存储器中检索(例如,如步骤2b所示)、或其任何组合。

在第一链路建立1902期间,sta302可使用第一anonce(例如,anonce[x])将关联请求传送至ap304。在第一链路建立1902期间,ap304可将第二anonce(例如,anonce[x+1])提供给sta302。第二anonce可供在与ap304的后续第二链路建立1904中使用。例如,可在关联响应(例如,如步骤4a所示)中、在eapol消息(例如,如步骤4b所示)中、或其任何组合中提供第二anonce。

当sta302发起与ap304的第二链路建立1904时,sta302可使用第二anonce(例如,anonce[x+1]),而不是等待信标或恳求探测响应。在一个特定实施例中,第二anonce(例如,anonce[x+1])可具有由ap304设置的有效性生存期(validitylifetime),并且sta302在发起第二链路建立1904之前可在步骤5a确定第二anonce是有效的。如果第二anonce被确定为无效,则sta302可如参考图20描述地行进。

一旦确定第二anonce(例如,anonce[x+1])是有效的,sta就可使用第二anonce发起第二链路建立1904。如步骤6所示,在第二链路建立1904期间,sta302可使用第二anonce发送第二关联请求。如步骤7a或7b所示,sta302还可接收将在与ap304的后续第三链路建立中使用的第三anonce(例如,anonce[x+2])。

图20是解说可根据链路建立和认证的其他方面来执行的消息收发的流程图。图20中解说的消息和操作可与图19中示出的那些消息和操作相对应,其中具有以下修改。

在步骤5a,sta302可确定第二anonce(例如,anonce[x+1])是无效的(例如,由于有效时段期满)。因此,如步骤5b所示,并非能够在第二链路建立1904期间使用第二anonce,sta302可等待或恳求经由信标或探测响应的新anonce(例如,anonce[y])。新anonce随后可用于发起第二链路建立1904。在第二链路建立1904期间,sta302可从ap304接收另一anonce(例如,anonce[y+1])以供后续第三链路建立中使用。

因此,在图19-20中描述的实施例可以向移动设备提供“下一个anonce”,以使得后续链路建立可被更快执行并且可消耗更少功率。另外,应当注意,为便于解说,图19-20的实施例可能没有包括链路建立中所涉及的所有消息收发。例如,未示出与dhcp操作有关的消息收发以及ap304与as308之间的消息收发。

图21是示出可在图19-20的sta302处操作以执行链路建立和认证的示例性过程2100的流程图。在2102,移动设备可使用第一anonce发起与接入点的第一链路建立。第一anonce可从存储器中检索、和/或经由信标或探测响应从接入点接收。前进至2104,移动设备可在与接入点的第一链路建立期间接收第二anonce,以供在与接入点的后续第二链路建立中使用。第二anonce可在关联响应和/或eapol消息中被接收。例如,参考图19-20,sta302可使用第一anonce(例如,anonce[x])发起第一链路建立1902,并且可在第一链路建立1902期间接收第二anonce(例如,anonce[x+1])。

继续至2106,移动设备可确定第二anonce是否有效。例如,移动设备可在发起第二链路建立之前作出这样的确定。为进行解说,移动设备可使用连同第二anonce一起发送的定时器或预配置的定时器来确定第二anonce是否有效。当第二anonce被确定为有效时,在2108,移动设备可使用第二anonce发起第二链路建立。例如,参考图19,sta302可使用第二anonce(例如,anonce[x+1])发起第二链路建立1904。

当第二anonce被确定为无效时,在2110,移动设备可从接入点接收新anonce。新anonce可在信标或探测响应中被接收。行进至2112,移动设备可使用新anonce发起与接入点的链路建立。例如,参考图20,移动设备可对该链路建立使用新anonce(例如,anonce[y])。

图22是示出可在图19-20的ap304处操作以执行链路建立和认证的示例性过程2200的流程图。在2202,接入点可将第一anonce发送至移动设备。第一anonce可在发起使用第一anonce的第一链路建立之前被发送。前进至2204,接入点可在第一链路建立期间向移动设备发送第二anonce,以供在与移动设备的后续第二链路建立中使用。例如,参考图19-20,在使用第一anonce(例如,anonce[x])的第一链路建立1902期间,ap304可向sta302发送第二anonce(例如,anonce[x+1])以供在后续第二链路建立1904中使用。

图23是解说可根据链路建立和认证的其他方面来执行的消息收发的图示。具体而言,图23解说使用“临时”密钥(例如,ptk)进行链路建立期间的上层信令保护。由于上层信令消息(在sta302与认证服务器308之间)具有内置安全保护,因此上层信令消息可使用“较弱的”anonce(例如,具有较低安全性质的anonce)来保护,这可允许更快的信令规程用于关联。“较强的”anonce与上层信令并行地被导出,并且被用于如本文描述的进一步数据传递。

图23中解说的所选消息和操作可与图4-11中解说的消息和操作相对应,其中具有以下修改。如步骤2所示,ap304可将第一anonce(例如,anonce1)发送至sta302。如步骤3a所示,sta302可基于anonce1和sta302的snonce导出第一ptk(例如,ptk1)。在步骤4,sta302可将关联请求发送至ap304。关联请求可包括snonce并且可使用ptk1来保护。为进行解说,关联请求可使用从ptk1导出的第一密钥确认密钥(kck1)来保护。

在步骤8a,ap304可基于anonce1和关联请求中所包括的snonce来导出ptk1。在步骤12,ap可生成第二anonce(例如,anonce2),并且可基于anonce2和snonce来导出第二ptk(例如,ptk2)。在步骤13,ap304可将关联响应发送至sta302,其中该关联响应包括anonce2并且使用ptk2来保护。为进行解说,关联响应可使用基于ptk2导出的kck和密钥加密密钥(kek)来保护。在步骤14,sta302可基于snonce和anonce2生成ptk2以完成链路建立。ptk2可被sta302和ap304用来保护sta302与ap304之间所传达的后续消息(例如,数据消息)。

因此,不同于图16中解说的消息流(其涉及不受保护的关联请求的传输),图23的消息流使用“临时”ptk1来保护关联请求。将注意到,尽管ptk1是使用可能为多个sta所知的anonce(例如,可经由信标将anonce1广播到多个sta)来生成的,但仅仅一条消息(关联请求)是使用“临时”密钥ptk1来保护的。各后续消息(包括sta302与ap304之间的关联响应和数据消息)是使用不同的密钥ptk2来保护的。图23的消息流因此在ap不被“知道”或不被“信任”(诸如在公共接入区域)的情形中可以是优选的。

图24是示出可在站(诸如,如图23解说的传达和处理消息的sta302)处操作以执行链路建立和认证的示例性过程2400的流程图。在2402,移动设备(例如,sta302)可从接入点(例如,ap304)接收第一anonce(例如,anonce1)。前进至2404,移动设备可使用第一anonce生成第一ptk(例如,ptk1)。继续至2406,移动设备可将关联请求发送至接入点。关联请求可包括snonce并且可使用第一ptk来保护。

在2408,移动设备可从接入点接收关联响应。关联响应可包括第二anonce(例如,anonce2)并且可使用第二ptk(例如,ptk2)来保护。前进至2410,移动设备可使用第二anonce和snonce生成第二ptk。继续至2412,移动设备可使用第二ptk来保护要发送至接入点的一条或多条后续消息。

图25是示出可在接入点(诸如,如图23解说的传达和处理消息的ap304)处操作以执行链路建立和认证的示例性过程2500的流程图。在2502,接入点(例如,ap304)可将第一anonce(例如,anonce1)发送至移动设备(例如,sta302)。例如,第一anonce可经由单播探测响应或广播信标来发送。前进至2504,接入点可从移动设备接收关联请求。关联请求可包括snonce并且可使用第一ptk(例如,ptk1)来保护。在2506,接入点可基于第一anonce和snonce生成第一ptk。

继续至2508,接入点可生成第二anonce(例如,anonce2),并且可基于第二anonce和snonce生成第二ptk(例如,ptk2)。在2510,接入点可将关联响应发送至移动设备。关联响应可包括第二anonce并且可使用第二ptk来保护。

图26是解说可根据链路建立和认证的其他方面来执行的消息收发的图示。具体而言,图26解说使用anonce种子来生成anonce。

图26中解说的所选消息和操作可与图4-11中解说的消息和操作相对应,其中具有以下修改。如步骤2所示,ap304可在信标或探测响应中将anonce种子发送至sta302。在一个特定实施例中,anonce种子是由ap304频繁更新的64位密码种子值。在一个特定实施例中,anonce种子(例如,在信标中)被广播到多个sta。如步骤3所示,sta302可使用anonce种子来生成设备专有anonce。在一个特定实施例中,通过对anonce种子以及对于sta302是唯一的和/或描述sta302的值(例如,sta302的mac地址或与sta302相关联的某一其他值)执行一函数(例如,散列函数)来生成anonce。将理解,与广播到多个sta的anonce不同,在步骤3中生成的anonce对于sta302可以是唯一的。sta302可基于所生成的anonce来执行与ap304的链路建立。

在步骤8a,ap304可基于anonce种子以及sta302的mac地址来导出anonce。例如,sta302的mac地址可由ap304从步骤4中所发送的关联响应中检索。在生成anonce之后,ap304可执行并且完成与sta302的链路建立。

将注意到,与其他握手技术不同,图26的实施例涉及sta302在ap304之前生成anonce。然而,为保留后向兼容性,根据图26的anonce种子技术所生成的anonce可共享与握手技术中各anonce类似的性质。例如,anonce对于sta302可以是唯一的,anonce和/或anonce种子可按“明文”(例如,使用如步骤2所示的信标或探测响应消息或如步骤4所示的eapol密钥消息)发送,并且anonce在由ap304传送之前可能不是未经授权的设备可预测的。

图27是示出可在站(诸如,如图26解说的传达和处理消息的sta302)处操作以执行链路建立和认证的示例性过程2700的流程图。在2702,移动设备(例如,sta302)可从接入点(例如,ap304)接收anonce种子。前进至2704,移动设备可基于anonce种子和移动设备的mac地址来生成anonce。继续至2706,移动设备可基于所生成的anonce来执行与接入点的链路建立。

图28是示出可在接入点(诸如,如图26解说的传达和处理消息的ap304)处操作以执行链路建立和认证的示例性过程2800的流程图。在2802,接入点(例如,ap304)可将anonce种子发送至移动设备(例如,sta302)。前进至2804,接入点可接收移动设备的mac地址。例如,mac地址可被包括在来自移动设备的消息(诸如,关联请求)中。继续至2806,接入点可基于anonce种子和移动设备的mac地址来生成anonce。在2808,接入点可通过将移动设备所报告的anonce与接入点所计算出的anonce相比较来验证移动设备的真实性。如果移动设备通过验证,则接入点可基于所生成的anonce来执行与移动设备的链路建立。

应当注意到,尽管各个实施例和选项可能在本文中被描述为替换方案,但来自不同实施例和选项的不同特征可被组合以执行链路建立和认证。

本文描述的各种技术可应用于基于拉取和基于推送的数据场景。例如,参考图16-18描述的经修改的4路握手以及参考图19-22描述的“下一个”anonce技术可应用于基于拉取和基于推送的数据场景。由移动设备执行的一个或多个应用(诸如,电子邮件和社交联网应用)可周期性地检查数据更新。经修改的4路握手或“下一个”anonce技术可以使此类数据更新拉取能够更快地且移动设备处的电池消耗降低地发生。作为另一示例,移动设备处的(诸)应用可被配置成(例如,从服务器)接收经推送的数据更新。数据更新的初始部分可在蜂窝连接上被接收。然而,数据更新的其余部分可以(例如,通过wifi)来更快地接收和/或以降低的电池消耗来接收,因为数据更新的初始部分触发了使用如本文描述的经修改的4路握手或“下一个”anonce技术的快速初始链路建立。参考图23-25描述的临时ptk技术以及参考图26-28描述的anonce种子技术也可用于此类基于拉取和基于推送的数据场景中。

结合所描述的各实施例,第一设备可包括用于将不受保护的关联请求从移动设备发送至接入点的装置。例如,用于发送的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成发送不受保护的关联请求的一个或多个其他设备、或其任何组合。第一设备还可包括用于从接入点接收关联响应的装置,其中该关联响应包括anonce。例如,用于接收的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成接收关联响应的一个或多个其他设备、或其任何组合。第一设备可进一步包括用于在移动设备处使用anonce来生成ptk的装置。例如,用于生成的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成生成ptk的一个或多个其他设备、或其任何组合。

第二设备可包括用于在接入点处从移动设备接收不受保护的关联请求的装置。例如,用于接收不受保护的关联请求的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成接收不受保护的关联请求的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。第二设备还可包括用于从该不受保护的关联请求提取发起消息的装置。例如,用于提取的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成提取发起消息的一个或多个其他设备(例如,ap的处理器)、或其任何组合。第二设备可进一步包括用于将该发起消息发送至as的装置。例如,用于发送该发起消息的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成发送发起消息的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。

第二设备可包括用于从as接收应答消息的装置,其中该应答消息包括rmsk。例如,用于接收应答消息的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成接收应答消息的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。第二设备还可包括用于生成anonce的装置。例如,用于生成的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成生成anonce的一个或多个其他设备(例如,ap的处理器)、或其任何组合。第二设备可进一步包括用于将关联响应从接入点发送至移动设备的装置,其中该关联响应包括anonce。例如,用于发送该关联响应的装置可包括:ap102的一个或多个组件、ap304中的一个或多个组件、被配置成发送关联响应的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。

第三设备可包括用于在移动设备处使用第一anonce发起与接入点的第一链路建立的装置。例如,用于发起的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成发起链路建立的一个或多个其他设备、或其任何组合。第三设备还可包括用于在与接入点的第一链路建立期间接收第二anonce以供在第一链路建立之后与接入点的第二链路建立中使用的装置。例如,用于接收的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成接收anonce的一个或多个其他设备、或其任何组合。

第四设备可包括用于在使用第一anonce的第一链路建立期间将第二anonce从接入点发送至移动设备以供在第一链路建立之后与移动设备的第二链路建立中使用的装置。例如,用于发送第二anonce的装置可包括:ap102的一个或多个组件、ap304中的一个或多个组件、被配置成发送anonce的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。第四设备还可包括用于在发起第一链路建立之前经由信标或探测响应将第一anonce发送至移动设备的装置,其中第二anonce与第一anonce不同。例如,用于发送第一anonce的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成发送anonce的一个或多个其他设备(例如,ap的无线控制器和/或天线)、或其任何组合。

第五设备可包括在移动设备处从接入点接收第一anonce的装置。例如,用于接收的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成接收anonce的一个或多个其他设备、或其任何组合。该设备还可包括用于使用第一anonce来生成第一ptk的装置。例如,用于生成的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成生成ptk的一个或多个其他设备、或其任何组合。第一anonce可被视为“弱”anonce,例如由于其在信标中被广播到多个sta或由于其值是可预测的。然而,因为上层信令消息中嵌入的隐式安全性,所以使用此类“弱”anonce是可接受的。此外,如本文描述的,第二“较强的”anonce可被导出并用于进一步的数据传递。

该设备可进一步包括用于将关联请求发送至接入点的装置,其中该关联请求包括snonce并且使用第一ptk来保护。例如,用于发送的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成发送关联请求的一个或多个其他设备、或其任何组合。

该设备可包括用于在移动设备处从接入点接收关联响应的装置,其中该关联响应包括第二anonce并且使用第二ptk来保护。例如,用于接收的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成接收关联响应的一个或多个其他设备、或其任何组合。第二anonce可被视为“强”anonce。

该设备还可包括用于在移动设备处使用第二anonce和snonce来生成第二ptk的装置。例如,用于生成的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成生成ptk的一个或多个其他设备、或其任何组合。该设备可进一步包括用于使用第二ptk来保护要从移动设备发送至接入点的至少一条后续消息的装置。例如,用于使用的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成保护消息的一个或多个其他设备、或其任何组合。

第六设备可包括用于将第一anonce从接入点发送至移动设备的装置。例如,用于发送的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成发送anonce的一个或多个其他设备、或其任何组合。该设备还可包括用于从移动设备接收关联请求的装置,其中该关联请求包括snonce并且使用第一ptk来保护。例如,用于接收的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成接收关联请求的一个或多个其他设备、或其任何组合。

该设备可进一步包括用于在接入点处基于第一anonce和snonce来生成第一ptk的装置。例如,用于生成的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成生成ptk的一个或多个其他设备、或其任何组合。该设备可包括用于生成第二anonce的装置。例如,用于生成第二anonce的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成生成anonce的一个或多个其他设备、或其任何组合。该设备还可包括用于基于第二anonce和snonce来生成第二ptk的装置。例如,用于生成的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成生成ptk的一个或多个其他设备、或其任何组合。

该设备可进一步包括用于将关联响应发送至移动设备的装置,其中该关联响应包括第二anonce并且使用第二ptk来保护。例如,用于发送的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成发送关联响应的一个或多个其他设备、或其任何组合。

第七设备可包括在移动设备处从接入点接收anonce种子的装置。anonce种子可(例如,经由信标)被广播到多个设备。例如,用于接收anonce种子的装置可包括:sta106-110的一个或多个组件、无线控制器240、天线242、sta302的一个或多个组件、被配置成接收anonce种子的一个或多个其他设备、或其任何组合。该设备还可包括用于在移动设备处基于anonce种子以及移动设备的mac地址来生成anonce的装置。例如,用于生成的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成生成anonce的一个或多个其他设备、或其任何组合。

该设备可进一步包括用于基于所生成的anonce来执行与接入点的链路建立的装置。例如,用于执行的装置可包括:sta106-110的一个或多个组件、处理器210、sta302的一个或多个组件、被配置成执行链路建立的一个或多个其他设备、或其任何组合。

第八设备可包括用于将anonce种子从接入点发送至移动设备的装置。例如,用于发送的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成发送anonce种子的一个或多个其他设备、或其任何组合。

该设备还可包括用于接收移动设备的mac地址的装置。例如,用于接收的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成接收mac地址的一个或多个其他设备、或其任何组合。该设备可进一步包括用于基于anonce种子和移动设备的mac地址来生成anonce的装置。例如,用于生成的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成生成anonce的一个或多个其他设备、或其任何组合。

该设备可包括用于基于所生成的anonce来执行与移动设备的链路建立的装置。例如,用于执行的装置可包括:ap102的一个或多个组件、ap304的一个或多个组件、被配置成执行链路建立的一个或多个其他设备、或其任何组合。

提供前面对所公开的实施例的描述是为了使本领域技术人员皆能制作或使用所公开的实施例。对这些实施例的各种修改对于本领域技术人员而言将是显而易见的,并且本文中定义的原理可被应用于其他实施例而不会脱离本公开的范围。因此,本公开并非旨在被限定于本文中公开的实施例,而是应被授予与如由所附权利要求定义的原理和新颖性特征一致的最广的可能范围。

本文描述的各元素可包括同一元素的多个实例。这些元素可由数字标号(例如,110)来一般地指示,并且可由跟有字母标号的数字指示符(例如,110a)或之前有“破折号”的数字指示符(例如,110-1)来具体地指示。为了便于跟上描述,绝大部分元素数字指示符以介绍或最全面地描述这些元素的图的编号开始。

应当理解,本文中使用诸如“第一”、“第二”等指定对元素的任何引述并不限制这些元素的量或次序,除非显式陈述此类限制。相反,这些指定可在本文中用作区别两个或更多个元素或者元素实例的便捷方法。因此,对第一元素和第二元素的引述并不意味着此处可采用仅两个元素或者第一元素必须以某种方式位于第二元素之前。另外,除非另行说明,否则元素集可包括一个或更多个元素。

除非在本文中另行指出,否则所示出和所描述的具体实现仅仅是示例并且不应解释成用于实现本公开的仅有的方式。本领域普通技术人员将容易明白,本公开中的各个示例可通过众多其它划分系统来实践。

本领域普通技术人员将可理解,信息和信号可使用各种不同技术和技艺中的任一种来表示。例如,贯穿本描述可能述及的数据、指令、命令、信息、信号、位、码元、和码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。为了陈述和描述的清楚性,一些附图可能将诸信号解说为单个信号。本领域普通技术人员将理解,信号可表示信号总线,其中该总线可具有各种各样的位宽并且本公开可在任何数目的数据信号上实现,包括单个数据信号。

在该描述中,元件、电路、和功能可能以框图形式示出以免将本公开湮没在不必要的细节中。相反,除非在本文中另行指出,否则所示出和所描述的具体实现仅仅是示例性的并且不应解释成用于实现本公开的仅有的方式。另外,块定义和各个块之间的逻辑划分对于具体实现是示例性的。本领域普通技术人员将容易明白,本公开可通过众多其它划分系统来实践。对于大部分而言,涉及时序考量及诸如此类的细节已被省略,其中此类细节对于获得对本公开的完整理解并不是必需的且在相关领域普通技术人员的能力之内。

本文描述的以及附图中解说的一个或更多个组件、动作、特征、和/或功能可以被重新安排和/或组合成单个组件、动作、特征、或功能,或实施在数个组件、动作、特征、或功能中。还可添加附加的元件、组件、动作、和/或功能而不会脱离本发明。本文中描述的算法也可以高效地实现在软件中和/或嵌入在硬件中。

还应注意,这些实施例可能是作为被描绘为流程图、流图、结构图、或框图的过程来描述的。尽管流程图可能会把诸操作描述为顺序过程,但是这些操作中有许多能够并行或并发地执行。另外,这些操作的次序可以被重新安排。过程在其操作完成时终止。过程可对应于方法、函数、规程、子例程、子程序等。当过程对应于函数时,它的终止对应于该函数返回调用方函数或主函数。

此外,存储介质可表示用于存储数据的一个或多个设备,包括只读存储器(rom)、随机存取存储器(ram)、磁盘存储介质、光学存储介质、闪存设备和/或其他用于存储信息的机器可读介质、以及处理器可读介质、和/或计算机可读介质。术语“机器可读介质”、“计算机可读介质”和/或“处理器可读介质”可包括,但不限于非瞬态介质,诸如便携或固定的存储设备、光存储设备、以及能够存储、包含或承载指令和/或数据的各种其它介质。因此,本文中描述的各种方法可全部或部分地由可存储在“机器可读介质”、“计算机可读介质”和/或“处理器可读介质”中并由一个或更多个处理器、机器和/或设备执行的指令和/或数据来实现。

此外,诸实施例可以由硬件、软件、固件、中间件、微代码、或其任何组合来实现。当在软件、固件、中间件或微码中实现时,执行必要任务的程序代码或代码段可被存储在诸如存储介质之类的机器可读介质或其它存储中。处理器可以执行这些必要的任务。代码段可表示规程、函数、子程序、程序、例程、子例程、模块、软件包、类,或是指令、数据结构、或程序语句的任何组合。通过传递和/或接收信息、数据、自变量、参数、或存储器内容,一代码段可被耦合到另一代码段或硬件电路。信息、自变量、参数、数据等可以经由包括存储器共享、消息传递、令牌传递、网络传输等的任何合适的手段被传递、转发、或传输。

结合本文中公开的示例描述的各个解说性逻辑块、模块、电路、元件和/或组件可用通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑组件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文中描述的功能的任何组合来实现或执行。通用处理器可以是微处理器,但替换地,处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以实现为计算组件的组合,例如dsp与微处理器的组合、数个微处理器、与dsp核心协作的一个或多个微处理器、或任何其他此类配置。配置成用于执行本文描述的实施例的通用处理器被认为是执行此类实施例的专用处理器。类似地,通用计算机在配置成用于执行本文描述的实施例时被认为是专用计算机。

结合本文中公开的示例描述的方法或算法可直接在硬件中、在能由处理器执行的软件模块中、或在这两者的组合中以处理单元、编程指令、或其他指示的形式实施,并且可包含在单个设备中或跨多个设备分布。软件模块可驻留在ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动盘、cd-rom、或本领域中所知的任何其他形式的存储介质中。存储介质可耦合到处理器以使得该处理器能从/向该存储介质读写信息。替换地,存储介质可以被整合到处理器。

例如,sta功能性可使用存储在处理器可读介质上的指令来实现。一种特定介质可存储指令,这些指令可被执行以使处理器生成将由移动设备发送至接入点的不受保护的关联请求。这些指令还可被执行以使处理器使用从来自接入点的关联响应中检索的anonce来生成ptk。另一种特定介质可存储指令,这些指令可由处理器执行以在移动设备处使用第一anonce发起与接入点的第一链路建立。这些指令还可被执行以使处理器在与接入点的第一链路建立期间接收第二anonce以供在第一链路建立之后与接入点的第二链路建立中使用。

作为另一示例,ap功能性可使用存储在处理器可读介质上的指令来实现。例如,一种特定介质可存储指令,这些指令可被执行以使处理器从自移动设备接收到的不受保护的关联请求中提取发起消息。这些指令还可被执行以使处理器从响应于该发起消息自认证服务器接收到的应答消息中提取rmsk。这些指令可进一步被执行以使处理器生成anonce并且生成要发送至移动设备的关联响应,其中该关联响应包括anonce。另一种特定介质可存储指令,这些指令可由处理器执行以在使用第一anonce的第一链路建立期间将第二anonce从接入点发送至移动设备以供在第一链路建立之后与移动设备的第二链路建立中使用。

本领域技术人员将可进一步领会,结合本文中公开的实施例描述的各种解说性逻辑块、模块、电路、和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件、软件还是其组合取决于具体应用和加诸于整体系统的设计选择。

本文中所描述的本发明的各种特征可实现于不同系统中而不脱离本发明。应注意,以上实施例仅是示例,且不应被解释成限定本发明。这些实施例的描述旨在解说,而并非旨在限定权利要求的范围。由此,本发明的教导可以现成地应用于其他类型的装置,并且许多替换、修改、和变形对于本领域技术人员将是显而易见的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1