加密发现分组中的服务宣告消息的制作方法_3

文档序号:8270360阅读:来源:国知局
性系统400可包括多个应用。应用可包括例如游戏应用、音乐应用、购物应用及类似应用等等,并且可各自向无线设备202的用户以及向被配置成从无线设备202接收发现消息的一个或多个接收方设备提供服务。
[0075]这多个应用(包括应用402)中的每个应用可向安全性模块408请求安全性服务。在一些实施例中,安全性模块408可被包括在发现引擎404中。在其它实施例中,安全性模块408可与发现引擎404分开。这些应用(包括应用402)中的每个应用可向安全性模块408传递凭证以允许安全性模块408适当地保护由无线设备202传送的消息或分组的安全。各凭证可以是因每个特定应用而异的。各凭证可包括被用于加密旨在被传送给另一无线设备的消息或分组的加密密钥。发现引擎404和安全性模块408可驻留在媒体接入控制406层之上的层2内,从而这些凭证从应用402被传递给层2处的安全性模块。在一些实施例中,发现引擎和安全性模块408可驻留在媒体接入控制层内。由安全性模块408提供的安全性服务的示例包括对宣告(例如,发现消息或分组)的加密、对寻呼或查询消息或分组的加密、对等设备(例如,对等STA)的认证、以及媒体接入控制模糊化。例如,安全性模块408可以使用由应用402提供的凭证来加密发现分组、寻呼请求分组、或从无线设备202传送的任何其它分组。安全性模块408还可认证尝试与无线设备202通信的其它无线设备。安全性模块408还可以使无线设备202的媒体接入控制地址模糊以防止对发送给无线设备202和从无线设备202发送的分组的未经授权的使用。
[0076]图5解说了根据本公开的各方面的发现分组的示例性部分500。发现分组的该部分500解说了可被安全性模块408加密的发现分组的经加密字段的示例。发现分组可被从一个STA传送给社交WiFi网络中的另一 STA。被下载或STA本机的各个应用可以要求宣告或发现分组仅可被预定的一群其它STA解码。例如,游戏应用可以要求仅该应用的订户需要知道该游戏应用是否活跃(例如,具有该游戏应用的STA正在广播发现分组),并且因此可仅向特定订户的那些STA提供为解码与该应用有关的分组或消息所必需的凭证。这些凭证可以提供为加密和/或解密包括在这些分组中的信息所需的密钥。这些凭证可由该应用来提供。发现分组的该部分500包括各个部分或子字段,包括序列号子字段502、经加密宣告消息子字段504、以及消息完好性校验(MIC)子字段506。应当注意,以下描述的发现分组部分500的各子字段并非必需要按与所描述的次序相同的次序被包括在发现分组中。确切而言,各子字段可按任何次序被包括在发现分组部分500中或被包括在发现分组部分500的任何部分中。然而,给定发现分组的各子字段的次序可以是预定的(例如,在设备的制造商处或在设备的初始化之际编程、在无线设备之间的单独消息中传达等),从而使得无线设备(例如STA)具有关于发现分组中的哪些位对应于哪些部分的信息。还应注意,发现分组的该部分500可包括具有附加信息的其它子字段,诸如长度子字段、加密指示子字段、设备/服务信息子字段等,这将在以下关于图5a来进一步讨论。
[0077]序列号502可以提供对试图截取由第一 STA传送的信息的未经授权的STA所作出的攻击的保护。例如,未经授权的STA可能在该未经授权的STA尝试截取传送给第一 STA和传送自第一 STA的分组的情况下尝试重放攻击。该未经授权的STA可以随后向合法STA重放该分组以哄骗该合法STA相信所重放的分组是由第一 STA合法发送的。该合法STA将不会意识到该未经授权的的STA已经截取并重放了该分组,因为该未经授权的STA未曾更改该分组。序列号502可被用于通过每次传送包括部分500的分组时发生递增或增加来防止这一类型的攻击。合法接收方STA将预期序列号502高于它上一次从第一 STA接收到分组时的序列号,并且因此将仅在分组包括高于先前接收到的序列号的情况下才接受该分组。如果所重放的分组被合法STA接收到,则序列号将不会高于或将低于由该合法STA最后一次接收到的序列号,并且该合法STA将不接受所重放的分组。
[0078]发现分组的该部分500的经加密宣告消息504可包括应用名称、无线装置名称(例如宣告方STA名称)、应用描述、设备描述、用户信息、或与宣告方STA、应用、和/或STA的用户有关的任何其它私有信息。宣告消息504可使用任何已知加密算法来加密。例如,临时密钥完好性协议可被用于使用48位初始化向量来加密宣告消息504。作为另一示例,Diffie-HelIman密钥交换协议可被用于加密宣告消息504。发起加密的应用可以提供为执行加密和/或解密所必需的密钥。经加密宣告消息(例如,经加密应用名称、经加密无线装置名称等)可使用一个或多个凭证来加密。
[0079]发现分组的部分500的MIC 506可被用于进一步保护对传送给第一 STA或传送自第一 STA的分组的未经授权的截取或使用。MIC 506可被用于通过检测已经被未经授权的STA重放或伪造的分组来保护分组的有效载荷和/或报头。MIC 506可包括使用散列算法所生成的散列。MIC 506可针对每个分组以及针对每个发送方-接收方对来生成。在一些实施例中,第一 MIC可被用于从第一 STA传送给合法STA发送方的分组,而第二 MIC可被用于从合法STA传送给第一 STA的分组。MIC 506可以基于被用于产生密钥(例如,初始化向量)的值、目的地媒体接入控制地址、源媒体接入控制地址、优先级、和/或有效载荷。MIC506可被附加至发现分组的该部分500的末尾。一旦接收到具有MIC 506的分组,接收方STA就将尝试验证MIC 506。如果检测到MIC失败,则可采取对策并可结束通信。如果MIC得到了接收方STA的验证,则该帧将被接收方STA接受并处理。在一些实施例中,在MIC被验证后,接收方STA可记录序列号502的值,从而将来的分组必须包括大于所记录的值的序列号。此外,传送方STA可以使用认证协议来认证自其接收到寻呼分组的一个或多个接收方设备,如以下进一步描述的。
[0080]在一些实施例中,发现分组可包括具有一个或多个经加密字段以及一个或多个未经加密字段的多个字段。例如,图5a解说了根据本公开的各方面的示例性发现分组500。发现分组500a包括至少一个经加密字段510a和至少一个未经加密字段512a。取决于特定发现分组500a的使用,字段514a和516a可以是经加密或未经加密的。在一些实施例中,发现引擎404a和/或安全性模块408可以加密字段和/或字段内的信息,并且可以将经加密字段和未经加密字段插入到发现分组500a中。在一些实施例中,STA中的一个或多个应用和程序可以仅要求宣告或发现分组或消息中的某些信息被加密。这一个或多个应用或程序可通过使包括在宣告或发现消息中的其它信息保持未经加密来允许使该信息公开或共用以供网络中的所有STA解码。例如,STA中的第一应用和第二应用可以提示要在发现分组(例如,发现分组500a)中传送的宣告中的安全信息和非安全信息的传输。STA可在第一经加密字段(例如,字段510a)中包括来自第一应用的安全信息并且可在第一未经加密字段(例如,字段512a)中包括来自第一应用的非安全信息。STA可进一步在第二经加密字段(例如,字段514a或516a)中包括来自第二应用的安全信息并且可在第二未经加密字段(例如,字段514a或516a)中包括来自第二应用的非安全信息。例如,安全信息可包括来自游戏应用的指示该游戏应用活跃的信息、关于该应用的用户的私有信息、口令信息等。非安全信息可包括不是私有的任何信息并且可包括例如位置信息(例如,全球定位系统(GPS)位置等)、应用和/或服务类型、关于STA上的非专有应用的信息、应用名称、无线装置名称等。应注意,取决于发现分组500a的特定使用,发现分组500a可包括更多或更少数量的经加密和/或未经加密字段。还应注意,比图5a中解说的那些字段更多的字段可被包括在发现分组500a中。
[0081]经加密字段510a可包括各种子字段,诸如长度子字段518a、经加密指示子字段520a、序列号子字段502a、经加密宣告消息子字段504a、以及消息完好性校验(MIC)子字段506a。序列号502a、经加密宣告消息504a、和消息完好性校验(MIC) 506a以与以上关于图5描述的相同方式来操作。长度子字段518a向接收方STA提供对字段510a的长度(例如,位数)的指示。经加密指示子字段520a向接收方STA提供关于字段510a是经加密还是未经加密的指示。例如,经加密指示子字段520a可包括单个比特,其中值I向接收方STA指示字段510a是经加密的。本领域技术人员将理解具有值O的单个比特、或者具有其它比特值组合的多个比特也可被用于向接收方STA指示字段510a是经加密或未经加密的。
[0082]未经加密字段512a可包括各种子字段,诸如长度子字段522a、经加密指示子字段524a、未经加密宣告消息子字段526a、以及设备/服务信息子字段528a。长度子字段522a向接收方STA提供对字段512a的长度的指示。经加密指示子字段524a向接收方STA提供关于字段510a是经加密还是未经加密的指示,例如使用值为O或I的单个比特或者具有各种比特值组合的多个比特。未经加密宣告消息子字段526a可包括宣告方STA上的应用或程序旨在使之公开或共用以供网络中的所有接收方STA接收并解码的非安全信息。设备/服务信息子字段528a还可包括旨在使之公开或共用以供所有接收方STA接收并解码的非安全未经加密信息。包括在设备/服务信息子字段528a中的信息可具体地与宣告方STA的设备信息和/或由宣告方STA和/或宣告方STA上的应用提供的服务信息有关。非安全信息可包括不是私有的任何信息并且可包括例如位置信息(例如,全球定位系统(GPS)位置等)、应用和/或服务类型、关于STA上的非专有应用的信息、应用名称、无线装置名称、或者用户和/或应用不旨在保密的任何其它信息。例如,宣告方STA的应用可以提示关于其GPS位置的非安全宣告信息的传输从而任何接收方STA可以确定其位置、与该应用的应用名称或该STA的无线装置名称有关的非安全宣告信息、以及关于该应用的特定用户的安全宣告信息。非安全位置信息可被包括在未经加密字段512a的未经加密设备/服务信息子字段528a内,非安全应用名称信息可被包括在未经加密字段512a的未经加密宣告消息子字段526a内,而安全消息可被包括在经加密字段510a的经加密宣告消息子字段504a内。因此,宣告方STA可以使用经加密字段和未经加密字段来传送具有安全信息和非安全信息的发现分组500a。
[0083]发现分组500a可进一步包括发现分组标签508a。发现分组标签508a可被用于唯一性地标识发现分组500a。在一些实施例中,宣告方STA可持续改变包括在发现分组的传送地址字段(未示出)中的媒体接入控制(MAC)地址以防止一个或多个未经授权设备(诸如未经授权STA)通过该宣告方STA的MAC地址来跟踪该STA。结果,两个或更多个STA可能不时地使用相同的MAC地址和/或宣告方STA可以在搜索方STA能基于发现分组或帧来发送查询之前改变其所使用的MAC地址。发现分组标签508a可由宣告方STA(例如,由发现引擎404和/或安全性模块408)来生成以唯一性地标识发现分组。在一些实施例中,发现分组标签508a可以是由宣告方STA中的随机数发生器生成的随机生成的数字。例如,宣告方STA可以传送包括由宣告方STA生成的发现分组标签的发现分组。至少一个搜索方STA可以接收发现分组。当搜索方STA基于接收到的发现分组而向宣告方STA发送查询时,搜索方STA可以将该查询分组的接收地址字段中的接收地址设置为被包括在接收到的发现分组的传送地址字段中的传送地址。搜索方STA可进一步将包括在接收到的发现分组中的发现分组标签包括在内。结果,宣告方STA可通过检查接收地址以及发现分组标签值来唯一性地确定该查询分组旨在给宣告方STA。在一些实施例中,使发现分组标签的长度充分大以确保两个STA选取相同MAC地址和相同发现分组标签值的概率很小。例如,发现分组标签长度可在4字节到32字节之间。作为另一示例,如果发现分组中有足够空间可用,则发现分组长度可以大于32字节。
[0084]应当注意,以上描述的经加密字段和未经加密字段的各子字段并非必需要按所描述的相同次序来被包括。确切而言,各子字段可按任何次序被包括或被包括在各字段的任何部分中。还应注意,经加密和未经加密字段可包括比图5a中解说的那些子字段更多的具有附加信息的子字段或者更少的子字段。
[0085]图6解说了一示例性信号流图,该示例性信号流图解说在图1中解说的实体间交换的信号流。图6中解说的信号流提供了用于供STA对正对由该STA发送的发现分组作出响应的寻呼方STA进行认证的机制。如果广告方STA仅希望具有某些凭证的STA来寻呼它,则对寻呼方STA的认证可能是期望的。例如,寻呼方STA上使用社交WiFi的社交联网应用可以要求若寻呼请求分组不是来自使用相同社交联网应用的STA的情况下则它们应被丢弃。作为另一示例,寻呼方STA上的游戏应用可以要求它验证寻呼请求消息是传送自使用相同游戏应用的另一 STA。
[0086]在一些实施例中,对等STA的认证可包括使用认证协议,诸如等同方认证安全认证协议。该等同方认证安全认证协议可被用于允许两个对等STA在不使用中央服务器的情况下安全地验证对共享口令的拥有。每个STA可以发起该协议并被认为是认证过程中的等同方。广告方STA可要求希望向该广告方STA发送寻呼请求消息的任何STA必须在寻呼该广告方STA之前完成等同方认证安全认证过程。等同方认证安全认证协议包括每个对等STA个体地定义相同的口令,该口令被用于认证消息交换。该协议不要求使该口令的任何部分暴露于来自第三方的威胁,因为该口令不在这两个STA之间交换。作为在这两个STA之间成功认证的结果,配对主密钥(PMK)在这些STA之间被生成和共享。
[0087]当第一和第二 STA彼此认证了时,每个STA可从共享秘密中推导出一数字。第一STA可随后连同标识符一起向第二
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1