无线通信系统

申请号 CN201380053858.8 申请日 2013-09-16 公开(公告)号 CN104704769A 公开(公告)日 2015-06-10
申请人 皇家飞利浦有限公司; 发明人 J.A.C.伯恩森;
摘要 一种无线通信系统包括两个通信单元(101、103),其使用 近场通信 (NFC)和Wi-Fi两者来交换公钥标识数据。比较器(213)将经由NFC接收的公钥标识数据和经由Wi-Fi接收的公钥标识数据进行比较。如果它们不匹配,则通信 控制器 (203、303)终止Wi-Fi通信,并且特别地可终止安全Wi-Fi通信建立。如果公钥标识数据匹配,则通信控制器(203、303)从公钥标识数据确定匹配的会话密钥和网络密钥。该方法利用基于双向NFC通信的完全双向设备认证来提供对例如中间人攻击的增大的安全性和鲁棒性。
权利要求

1.一种用于包括第一通信单元(101)和第二通信单元(103)的无线通信系统的操作的方法,所述方法包括:
所述第一通信单元(101)使用NFC通信传输第二公钥标识数据到第二通信单元(103),所述第二公钥标识数据指示所述第一通信单元(101)的公钥;
所述第一通信单元(101)使用Wi-Fi通信传输指示所述第一通信单元(101)的公钥的公钥标识数据到第一Wi-Fi通信单元;
所述第二通信单元(103)使用NFC通信从所述第一通信单元(101)接收所述第二公钥标识数据;
所述第二通信单元(103)使用Wi-Fi通信从第二Wi-Fi通信单元接收第四公钥标识数据;
所述第二通信单元(103)生成指示所述第二公钥标识数据是否匹配所述第四公钥标识数据的第二匹配指示;
如果所述第二匹配指示指示所述第二公钥标识数据不匹配所述第四公钥标识数据则所述第二通信单元(103)终止与所述第二Wi-Fi通信单元的Wi-Fi通信,并且否则执行以下步骤:
  响应于所述第二公钥标识数据和所述第四公钥标识数据中的至少一个来生成所述第一通信单元(101)的所述公钥,
  从所述第一通信单元(101)的所述公钥和所述第二通信单元(103)的私钥生成第二会话密钥,
  生成第二网络密钥,
  通过使用所述第二会话密钥对所述第二网络密钥进行加密来生成第二经加密的网络密钥,并且
  将所述第二经加密的网络密钥和指示所述第二通信单元(103)的公钥的公钥标识数据传输到所述第二Wi-Fi通信单元;
所述第二通信单元(103)使用NFC通信传输第一公钥标识数据到所述第一通信单元(101),所述第一公钥标识数据指示所述第二通信单元(103)的公钥;
所述第一通信单元(101)使用近场通信、NFC通信来从所述第二通信单元(103)接收所述第一公钥标识数据;
所述第一通信单元(101)使用Wi-Fi通信从第一Wi-Fi通信单元接收第三公钥标识数据和第一经加密的网络密钥;
所述第一通信单元(101)生成指示所述第一公钥标识数据是否匹配所述第三公钥标识数据的第一匹配指示;
如果所述第一匹配指示指示所述第一公钥标识数据不匹配所述第三公钥标识数据则所述第一通信单元(101)终止与所述第一Wi-Fi通信单元的Wi-Fi通信,并且否则执行以下步骤:
  响应于所述第一公钥标识数据和所述第三公钥标识数据中的至少一个来生成所述第二通信单元(103)的所述公钥;
  从所述第二通信单元(103)的所述公钥和所述第一通信单元(101)的私钥生成第一会话密钥;
通过使用所述第一会话密钥对所述第一经加密的网络密钥进行解密来生成第一网络密钥;并且使用所述第一网络密钥与所述第一Wi-Fi通信单元通信。
2.一种包括第一通信单元(101)和第二通信单元(103)的无线通信系统,所述第一通信单元(101)包括:
用于使用近场通信、NFC通信从所述第二通信单元(103)接收第一公钥标识数据的第一NFC接收器(205);
用于使用NFC通信传送第二公钥标识数据到所述第二通信单元(103)的第一NFC传送器(207),所述第二公钥标识数据指示所述第一通信单元(101)的公钥;
用于执行与第一Wi-Fi通信单元的Wi-Fi通信的第一通信控制器(203),所述第一通信控制器(203)被布置为传输指示所述第一通信单元(101)的所述公钥的公钥标识数据到所述第一Wi-Fi通信单元并且从所述第一Wi-Fi通信单元接收第三公钥标识数据和第一经加密的网络密钥;
用于生成指示所述第一公钥标识数据是否匹配所述第三公钥标识数据的第一匹配指示的第一比较器(213);
其中所述第一通信控制器(203)被布置为如果所述第一匹配指示指示所述第一公钥标识数据不匹配所述第三公钥标识数据则终止与所述第一Wi-Fi通信单元的所述Wi-Fi通信,并且否则:
响应于所述第一公钥标识数据和所述第三公钥标识数据中的至少一个来生成所述第二通信单元的所述公钥,
从所述第二通信单元(103)的所述公钥和所述第一通信单元(101)的私钥生成第一会话密钥,
通过使用所述第一会话密钥对所述第一经加密的网络密钥进行解密来生成第一网络密钥,并且
使用所述第一网络密钥与所述第一Wi-Fi通信单元通信;并且
所述第二通信单元(103)包括:
用于使用NFC通信从所述第一通信单元(101)接收所述第二公钥标识数据的第二NFC接收器(305);
用于使用NFC通信传输所述第一公钥标识数据到所述第一通信单元(101)的第二NFC传送器(307),所述第一公钥标识数据指示所述第二通信单元(103)的公钥;
用于执行与第二Wi-Fi通信单元的Wi-Fi通信的第二通信控制器(303),所述第二通信控制器(303)被布置为传输指示所述第二通信单元(103)的所述公钥的公钥标识数据到所述第二Wi-Fi通信单元并且从所述第二Wi-Fi通信单元接收第四公钥标识数据;
用于生成指示所述第二公钥标识数据是否匹配所述第四公钥标识数据的第二匹配指示的第二比较器(313);
其中所述第二通信控制器(303)被布置为如果所述第二匹配指示指示所述第二公钥标识数据不匹配所述第四公钥标识数据则终止与所述第二Wi-Fi通信单元的所述Wi-Fi通信,并且否则:
响应于所述第二公钥标识数据和所述第四公钥标识数据中的至少一个来生成所述第一通信单元(101)的所述公钥,
从所述第一通信单元(101)的所述公钥和所述第二通信单元(103)的私钥生成第二会话密钥;
生成第二网络密钥;
通过使用所述第二会话密钥对所述第二网络密钥进行加密来生成第二经加密的网络密钥,并且
将所述第二经加密的网络密钥和指示所述第二通信单元(103)的公钥的公钥标识数据传输到所述第二Wi-Fi通信单元。
3.根据权利要求2所述的无线通信系统,其中所述第一公钥标识数据和所述第三公钥标识数据中的至少一个包括所述第二通信单元的所述公钥。
4.根据权利要求2所述的无线通信系统,其中所述第一公钥标识数据和所述第三公钥标识数据中的至少一个包括所述第二通信单元的所述公钥的散列。
5.根据权利要求2所述的无线通信系统,其中所述第一比较器(213)被布置为从所述第一公钥标识数据确定第一密钥并且从所述第三公钥标识数据确定第二密钥,并且响应于所述第一密钥和所述第二密钥的比较来生成所述第一匹配指示。
6.根据权利要求2所述的无线通信系统,其中所述第一公钥标识数据包括所述第二通信单元(103)的所述公钥的第一散列;并且所述第一匹配指示器被布置为从所述第三公钥标识数据确定所述第二通信单元(103)的所述公钥;从所生成的第二通信单元(103)的的公钥生成第二散列;并且响应于所述第一散列和所述第二散列的比较生成所述第一匹配指示。
7.根据权利要求2所述的通信单元,其中所述第二通信单元(103)还被布置为通过NFC通信传输Wi-Fi配置数据到所述第一通信单元(101),并且所述第一通信控制器(203)被布置为响应于所述Wi-Fi配置数据适配所述Wi-Fi通信。
8.根据权利要求2所述的通信单元,其中所述第一通信单元(101)被布置为仅当所述第一匹配指示指示了所述第一公钥标识数据匹配所述第三公钥标识数据,传输秘密数据到所述第二通信单元(103)。
9.根据权利要求8所述的通信单元,其中所述第一通信单元(101)被布置为经由Wi-Fi通信链路传输所述秘密数据到所述第二通信单元(103)。
10.根据权利要求2所述的无线通信系统,其中使用在所述第一通信单元(101)和所述第二通信单元(103)之间的NFC点对点通信链路来执行所述NFC通信。
11.根据权利要求2所述的无线通信系统,其中所述第二通信单元(103)被布置为传输所述第一公钥标识数据到NFC标签;并且所述第一NFC接收器(205)被布置为通过NFC阅读操作从所述NFC标签阅读所述第一公钥标识数据。
12.根据权利要求2所述的无线通信系统,其中所述第一通信单元(101)被布置为传输所述第二公钥标识数据到NFC标签;并且所述第二NFC接收器(305)被布置为通过NFC阅读操作从所述NFC标签阅读所述第二公钥标识数据。
13.根据权利要求2所述的无线通信系统,其中所述第一通信单元(101)被布置为响应于所述第一匹配指示指示了所述第一公钥标识数据不匹配所述第三公钥标识数据的这个检测,传输认证失败消息到所述第二通信单元(103)。
14.根据权利要求2所述的无线通信系统,其中第二通信单元(103)被布置为响应于所述第二匹配指示指示了所述第二公钥标识数据不匹配所述第四公钥标识数据的这个检测,传输认证失败消息到所述第一通信单元(101)。
15.根据权利要求2所述的无线通信系统,其中所述第一通信单元(101)和所述第二通信单元(103)被布置为根据Wi-Fi简单配置规范来发起通信建立。
16.一种用于无线通信系统的通信单元,所述通信单元(101)包括:
用于使用近场通信、NFC通信从另一通信单元(103)接收第一公钥标识数据的NFC接收器(205);
用于使用NFC通信将第二公钥标识数据传输到所述另一通信单元(103)的NFC传送器(207),所述第二公钥标识数据指示所述通信单元(101)的公钥;
用于执行与Wi-Fi通信单元的Wi-Fi通信的通信控制器(203),所述通信控制器(203)被布置为传输指示所述通信单元(101)的所述公钥的公钥标识数据到所述Wi-Fi通信单元并且从所述Wi-Fi通信单元接收第三公钥标识数据和经加密的网络密钥;
用于生成指示所述第一公钥标识数据是否匹配所述第三公钥标识数据的第一指示的比较器(213);
其中所述通信控制器(203)被布置为如果所述匹配指示指示所述第一公钥标识数据不匹配所述第三公钥标识数据则终止与所述Wi-Fi通信单元的所述Wi-Fi通信,并且否则:
响应于所述第一公钥标识数据和所述第三公钥标识数据中的至少一个来生成所述另一通信单元的所述公钥,
从所述另一通信单元(103)的公钥和所述通信单元(101)的私钥生成会话密钥,通过使用所述会话密钥对所述经加密的网络密钥进行解密来生成网络密钥,并且使用所述网络密钥与所述第一Wi-Fi通信单元通信。
17.一种用于无线通信系统的通信单元,所述通信单元(103)包括:
用于使用NFC通信从另一通信单元(101)接收第一公钥标识数据的NFC接收器(305);
用于使用NFC通信将第二公钥标识数据传输到另一通信单元(101)的NFC传送器(307),所述第二公钥标识数据指示所述通信单元(103)的公钥;
用于执行与Wi-Fi通信单元的Wi-Fi通信的通信控制器(303),所述通信控制器(303)被布置为传输指示所述通信单元的所述公钥的公钥标识数据到所述Wi-Fi通信单元并且从所述Wi-Fi通信单元接收第三公钥标识数据;
用于生成指示所述第一公钥标识数据是否匹配所述第三公钥标识数据的匹配指示的比较器(313);
其中所述通信控制器(303)被布置为如果所述匹配指示指示所述第一公钥标识数据不匹配所述第三公钥标识数据则终止与所述Wi-Fi通信单元的所述Wi-Fi通信,并且否则:
响应于所述第一公钥标识数据和所述第三公钥标识数据中的至少一个来生成所述另一通信单元(101)的所述公钥,
从所述另一通信单元(101)的所述公钥和所述通信单元(103)的私钥生成会话密钥,生成网络密钥,
通过使用所述会话密钥对所述网络密钥进行加密来生成经加密的网络密钥,并且将所述经加密的网络密钥和指示所述通信单元(103)的公钥的公钥标识数据传输到所述Wi-Fi通信单元。

说明书全文

无线通信系统

技术领域

[0001] 本发明涉及无线通信系统中的认证,并且特别地但不排他地涉及在通信单元之间的Wi-Fi通信的建立。

背景技术

[0002] 无线通信系统已变得无所不在并且为包括移动通信应用的很多通信应用提供灵活和有效的支持。一个普遍的无线通信标准集合是例如在很多家庭中使用以提供无线联网和互联网接入的Wi-Fi家族通信标准。除其他之外,Wi-Fi家族通信标准还包括由电气与电子工程师协会(IEEE)定义的普遍的IEEE802.11a、IEEE802.11b、IEEE802.11g和IEEE802.11n标准。Wi-Fi还被广泛用于商店、旅馆、饭店等以提供无线互联网接入。
[0003] 大多数无线通信系统的一个重要方面是它们提供安全通信。这样的安全应当优选确保第三方不能在空中通信上窃听,即第三方不能接收到无线电传输并且成功对数据解码。为了提供这样的保护,可以将空中的数据传输进行加密。然而,为了加密数据,两个设备必须能够安全建立将要使用的加密密钥。另一重要的因素是通信设备的认证,使得给定的通信设备可以确信其与预期的其他通信设备通信,而不是可能的试图拦截数据消息的第三通信设备。
[0004] 在Wi-Fi接入点(AP)和Wi-Fi站(STA)之间的Wi-Fi链路或在Wi-Fi直接点对点组拥有者(GO)和客户端之间的Wi-Fi链路可被密码学保护以获得机密性和完整性。这在Wi-Fi保护接入(WPA)规范(具体在2004年8月的“Wi-Fi Protected Access (WPA) – Enhanced Security Implementation Based on IEEE P802.11i standard”版本3.1中)中规定。该标准提供两个认证方法。第一个被称为WPA2-Personal或WPA2-PSK(预共享密钥)并且提供了用于不具有认证服务器家庭网络和小企业的解决方案。第二个方法被称为WPA2-Enterprise并且使用IEEE 802.1X-认证服务器。
[0005] 在两个系统中,所有需要的密钥从被已知为成对主密钥(PMK)的一个密钥导出。在WPA2-PSK模式中,PMK对于必须使用由WPA2保护的Wi-Fi来进行相互通信的所有设备来说是相同的,并且相应地在WPA2能够被使用之前其必须与所有相关设备共享。在WPA2-Enterprise中,PMK对于每对通信设备来说是不同的并且在与认证服务器的协议中确定。
[0006] 当两个Wi-Fi设备建立Wi-Fi连接(例如希望加入Wi-Fi网络的具有Wi-Fi的膝上型计算机必须利用该网络的接入点建立Wi-Fi链路)时,它们执行所谓的WPA四路握手以便得到它们的公共成对临时密钥(PTK),该密钥是从中导出保护该特定链路的所有其他密钥的密钥。PTK从PMK和在四路握手期间经由Wi-Fi用明文发送的一些数字导出。作为结果,已进行四路握手并且知道PMK的任何设备能够计算PTK,并且因此能够解密在这两个设备之间的所有Wi-Fi通信。Wi-Fi设备甚至可能迫使另一设备再次利用AP执行四路握手。
[0007] 在WPA2-PSK模式中,PMK是256比特值。人难以分发256比特的数字(例如以在一个设备上读取十六进制码并且将其输入到另一设备中),因此还可能使用高达63个字符的通行码,从该通行码可导出256比特的PMK。
[0008] 尽管对于人来说,这样的通行码比起随机的256比特的数字更容易处理,但是其仍然被认为过于繁重,因此Wi-Fi联盟开发了一种被称为Wi-Fi简单配置(WSC)规范的变体(“Wi-Fi Simple Configuration Technical Specification”,版本2.0.2,2011,Wi-Fi联盟,还被称为Wi-Fi保护建立-WPS)。在该规范中,定义了将网络证书(包括PMK或可从中导出PMK的通行码的网络证书)从一个设备传输到另一设备的安全方法。该方法使用8个消息,被称为M1-M8。取决于所使用的变体,是否发生错误等,不是所有8个消息必须被使用。当两个设备同意使用WSC时,一个设备发送消息M1到另一设备,并且另一设备然后以消息M2进行响应,等等。如果一个设备开始不相信另一设备,则其终止该协议。如果没有遇到问题,则起初不知道PMK的设备将以安全方式从另一设备获得PMK。
[0009] 用于设立用于保护网络证书的传输的加密密钥的WSC方法是基于用于约定公共秘密密钥的Diffie-Hellman密钥交换算法的。Diffie-Hellman密钥交换算法在加密领域中是熟知的,并且其基于每个设备仅传递可由任何人并且通过使用仅该个体设备知道的私有代码来知道的代码。攻击者如果不知道对应的私有代码的话不能使用可由任何人知道的所述代码。
[0010] 例如,双方可约定两个整数,质数p和基数g。这些数字可以是公用的并且被普遍知道。每方然后选择秘密整数(第一方选择a,第二方选择b),该秘密整数仅被每个个体方知道并且决不被传递到另一方或任何其它设备。
[0011] 第一方计算值A = ga mod p并且发送结果A到另一方。仅计算的值A被传递而秘密值a不被传递。此外,用于导出A的函数是所谓的单向函数,其容易被用于在一个方向上进行计算但是实际上不能被反转。具体地,尽管当g、p和a已知时,相对容易计算A,但是从A、g和p计算a非常难。对于被用于Diffie-Hellman密钥交换算法中的特定函数,这被已知为离散对数问题。
[0012] 类似地,第二方着手计算B = gb mod p并且将其传输到第一方。
[0013] 第一方然后着手计算值Ba mod p并且第二方着手计算值Ab mod p。此外,可以表a b明的是,B mod p = A mod p,即第一方和第二方着手计算相同值。该值因此可由每个设备基于它们的秘密代码、从另一方接收的值和一些预先约定的公用值来分别确定。
[0014] 然而,在不知道a或b的情况下,即在不知道任何秘密整数的情况下,非常难以计算该值。尽管理论上不是不可能,但是如果所使用的整数足够大,则实际上不可能计算该值或秘密整数。相应地,窃听设备不可能确定由两方确定的该值。该值可因此用作加密密钥。
[0015] 使用消息M1和M2来执行WSC协议的Diffie-Hellman部分。Diffie-Hellman工作,使得监听到该交换的设备都不能够计算这两个设备各自得到的该秘密加密密钥(Diffie-Hellman(DH)密钥)。然而,Diffie-Hellman方法的问题是其不提供设备认证,这意味着每个设备不具有与哪个特定其他设备建立了该加密密钥的信息。
[0016] 除了别的之外,消息M1包含被称为N1的随机数(一次性数(nonce))和发送M1的设备的Diffie-Hellman公钥。N1被用于免受所谓的重放攻击,由此攻击者尝试使用先前拦截的来自合法设备的针对挑战的已知良好响应。如果挑战包含具有足够比特的随机部分,则相同挑战被使用多于一次实际上将不会发生,因此攻击者记住针对挑战的已知良好响应是没有意义的。类似地,除了别的之外,消息M2包含被称为N2的随机数(一次性数)和发送M2的设备的Diffie-Hellman公钥。随机数据可以特别地是一次性数或密码学的一次性数,其是被仅使用一次的数字或比特串。这可例如通过生成具有足够多的比特的随机数来实现,从而生成两个相同的一次性数的可能性是可忽略的。M2可以已经包含利用秘密加密密钥(Diffie-Hellman(DH)密钥)加密的信息。
[0017] 该方法对于中间人攻击可能是敏感的,在中间人攻击中,窃听设备建立与两个通信设备的通信链路并且在设备之间转发消息。这样的中间人设备可与通信设备中的每一个分别建立加密,并且可简单地使用适当的加密用于每个设备。通信设备将不知道,它们经由中间体与另一设备通信,因为它们都认为它们已经直接与另一设备建立了加密。因此,第三设备可能执行中间人攻击,即其可分别与两个设备执行WSC协议的Diffie-Hellman部分,导致其与一个设备约定一个Diffie-Hellman密钥并且与另一设备约定另一Diffie-Hellman密钥。因为其知道两个密钥,其可解密来自一个设备的消息,读取它,利用另一DH密钥对其再加密,并且然后将其发送到另一设备。除了一些可能消息延迟之外,其它两个设备将不能够检测到中间人设备。由一个设备发送的东西被另一设备接收。然而,第三设备将具有对传递的数据的完全可见性。
[0018] WSC流程通过以多种方式使用第二“带外”信道来解决该认证问题。
[0019] 一个这样的方式以基于PIN的建立为基础。在该建立中,用户必须在一个设备上读取PIN号码(8个十进制数字)并且将其手动输入另一设备。PIN可以是例如在第一设备上或在与第一设备一起提供的粘贴物或卡片上印制的静态PIN。PIN还可以是例如在第一设备的显示器上示出的动态PIN。
[0020] 该WSC建立的消息M3-M8用于以密码学安全的方式将PIN逐步地披露给彼此。如果两个设备确信另一设备知道相同PIN,它们将着手使用Diffie-Hellman密钥来在M7或M8消息中传输由设备之一已知的PMK到另一设备。当两个设备都知道相同PMK时,它们可使用四路握手来建立用于Wi-Fi的WPA2。因此,在该方法中,M3-M8消息是认证设备和传输PMK所必须的。
[0021] WSC还建议基于近场通信(NFC)的使用的另一方法。近场通信是利用近场磁耦合以在适当使能的设备之间传输数据(以及如果必要的话传输电)的通信技术。特别地,由ISO/IEC(国际标准化组织/国际电工技术委员会)和NFC论坛(http://www.nfc-forum.org/home/)开发了近场通信标准以提供能够在两种模式之一中工作的双向通信技术,或者使用点对点通信(其有时还被称为NFC对等模式),或者使用其中有源主站与无源标签通信的不对称布置(类似于常规RFID技术)。工作范围典型地大约仅几厘米。
[0022] Wi-Fi简单配置规范描述了使用NFC的三种方式,即- 具有设备PIN或设备口令的NFC令牌或NFC标签,
- 具有网络证书的NFC令牌或NFC标签,
- 用于设备PIN或设备口令或网络证书的传输的NFC对等模式。
[0023] 应当注意的是,术语NFC令牌和NFC标签趋向于被可互换地使用以指代相同实体。由NFC论坛定义并且在它们的NFC规范中使用的官方名称是NFC标签。然而,术语NFC令牌也被频繁使用并且由负责Wi-Fi标准的Wi-Fi联盟明确使用。在下文中,将使用术语NFC标签。
[0024] 然而,使能NFC的设备可以工作在阅读器/写入器和点对点模式(并且还可工作在NFC标签仿真模式)中,NFC标签典型是无源设备,这意味着标签并不需要其自己的电源(例如电池)来工作,而是由从它读取或写入到它的设备的能量来供电。一些NFC标签是只读的,即它们存储可仅由使能NFC的设备读取的数据。其它NFC标签既可以从使能NFC的设备读取,也可以由使能NFC的设备写入。在NFC标签仿真模式中,NFC标签除了其NFC无线接口之外,还具有可用于读取和写入数据到NFC标签的电接口。以该方式,NFC标签将针对在NFC空中接口上与其通过接口接合的外部设备表现为例如无源NFC标签,但是有线接口允许例如NFC标签被适配和动态配置成,或被用于在连接到其有线接口的处理器和在NFC空中接口上与其通过接口接合的外部设备之间的双向通信。术语“NFC标签”、无源NFC标签和“标签”在本文中可互换地使用。
[0025] 在下文中,更详细描述使用NFC通信的认证流程。为了简洁和清楚,将使用术语配对秘密来指代旨在不被攻击设备知道的信息,并且特别指代设备PIN、设备口令、PMK或网络证书。
[0026] 8数字PIN对于用户来说比63个字符的通行码更容易处理。然而,WSC提供给用户甚至更简单的方式来传输PIN,即利用所谓的口令令牌。口令令牌是其中存储了设备PIN(未加密)的NFC标签。尽管WSC规范将此称为设备口令,但是其在WSC协议中用作设备PIN。NFC设备(例如读取NFC标签的NFC阅读器)需要典型地处于几个厘米以内以便进行可靠的通信。这提供了以下优势:用户可非常高度地确信如果他使两个NFC设备紧靠在一起,则由这些设备之一读取的NFC信息将在另一设备中起源。
[0027] WSC规范还规定了如何将NFC用于(未加密)PMK的直接传输,即作为在所谓的配置令牌中的所谓的网络证书的一部分。
[0028] NFC令牌或NFC标签可在设备的外壳中构建,或其可被集成在信用卡尺寸的卡中。装备有NFC阅读器的设备可使用NFC阅读操作无线地读取这样的NFC标签。装备有NFC写入器的设备可使用NFC无线地或经由有线连接写这样的NFC标签。
[0029] NFC还规定了所谓的NFC对等操作模式,其中两个NFC设备使用NFC但不使用NFC标签直接相互通信。WSC规范允许NFC对等模式还被用于使用与在NFC标签中使用的消息格式化相同的消息格式化来传输设备PIN、设备口令和网络证书,这意味着设备PIN、设备口令和网络证书在这些传输期间未被加密。
[0030] 使用NFC建立安全Wi-Fi链路对于用户来说是非常容易的。在单独的NFC标签的情况下,用户简单地利用另一设备的NFC标签接触一个设备(的NFC阅读器位置)。在集成NFC标签的情况下,或在NFC对等模式的情况下,用户利用另一设备(例如具有内置NFC的智能电话)来接触一个设备的(NFC阅读器位置)。
[0031] 然而,已发现,当前NFC认证操作不提供最优安全性。例如,如果其他设备能够检测认证/安全数据,则它们可能能够访问它们不被允许访问的Wi-Fi网络或设备。
[0032] 例如,设备PIN或设备口令用于如上所解释的,相互地认证两个Wi-Fi设备。仅所涉及的两个设备应当知道设备PIN或口令。然而,如果另一设备,例如中间人攻击者,能够确定设备PIN或设备口令,则其可使用该设备PIN或设备口令来与这两个设备建立单独的通信。具体地,第三设备可使用该信息来通过与每个设备交换消息M3-M8来构建与两个原始设备的信任关系。因此,两个设备将认为第三设备是经认证的另一设备并且仍然不清楚它们正经由中间人设备来通信。
[0033] 在预共享密钥模式中,密钥被导出以使得知道PMK并且遵循WPA四路握手(其中在两个设备之间的密钥被确定)的任何设备可独立地确定密钥。因此,如果网络证书是已知的,第三设备可从那时起解密在PSK模式中使用那些证书的Wi-Fi网络上的所有通信量(网络证书包含可使用非秘密流程从其计算PMK的通行码或比特串)。实际上如果第三设备错过四路握手,该设备甚至可能迫使另一设备与第三设备再次执行四路握手。
[0034] 使用以NFC通信的形式的带外通信的认证方法基于由于NFC通信链路的非常受限的距离而被认为是安全的NFC通信。然而,这样的系统可以具有取决于关于NFC通信链路的这些假设的弱点,并且可在一些情形中不提供最优安全性。尽管NFC通信的非常有限的范围提供了对抗能够获得秘密信息的其它设备的一些保护,但是其不能够完全保证这将决不发生。实际上,最近研究已表明,NFC通信可在大的距离处(实际上在高达几米的距离处)被检测和解码。
[0035] 因此,改进的方法将是有利的,并且特别地,允许增大的灵活性、用户友好度、改进的安全性和/或改进的性能的方法将是有利的。

发明内容

[0036] 相应地,本发明试图优选单独地或以任何组合减轻、缓和或消除上文提到的缺点中的一个或多个。
[0037] 根据本发明的一方面,提供一种用于包括第一通信单元和第二通信单元的无线通信系统的操作的方法,该方法包括:第一通信单元使用NFC通信传输第二公钥标识数据到第二通信单元,第二公钥标识数据指示第一通信单元的公钥;第一通信单元使用Wi-Fi通信传输指示第一通信单元的公钥的公钥标识数据到第一Wi-Fi通信单元;第二通信单元使用NFC通信从第一通信单元接收第二公钥标识数据;第二通信单元使用Wi-Fi通信从第二Wi-Fi通信单元接收第四公钥标识数据;第二通信单元生成指示第二公钥标识数据是否匹配第四公钥标识数据的第二匹配指示;如果第二匹配指示指示第二公钥标识数据不匹配第四公钥标识数据则第二通信单元终止与第二Wi-Fi通信单元的Wi-Fi通信,并且否则执行以下步骤:响应于第二公钥标识数据和第四公钥标识数据中的至少一个来生成第一通信单元的公钥,从第一通信单元的公钥和第二通信单元的私钥生成第二会话密钥,生成第二网络密钥,通过使用第二会话密钥对第二网络密钥进行加密来生成第二经加密的网络密钥,并且将第二经加密的网络密钥和指示第二通信单元的公钥的公钥标识数据传输到第二Wi-Fi通信单元;第二通信单元使用NFC通信传输第一公钥标识数据到第一通信单元,第一公钥标识数据指示第二通信单元的公钥;第一通信单元使用近场通信、NFC通信来从第二通信单元接收第一公钥标识数据;第一通信单元使用Wi-Fi通信从第一Wi-Fi通信单元接收第三公钥标识数据和第一经加密的网络密钥;第一通信单元生成指示第一公钥标识数据是否匹配第三公钥标识数据的第一匹配指示;如果第一匹配指示指示第一公钥标识数据不匹配第三公钥标识数据则第一通信单元终止与第一Wi-Fi通信单元的Wi-Fi通信,并且否则执行以下步骤:响应于第一公钥标识数据和第三公钥标识数据中的至少一个来生成第二通信单元的公钥;从第二通信单元的公钥和第一通信单元的私钥生成第一会话密钥;通过使用第一会话密钥对第一经加密的网络密钥进行解密来生成第一网络密钥;并且使用第一网络密钥与第一Wi-Fi通信单元通信。
[0038] 根据本发明的一方面,提供一种包括第一通信单元和第二通信单元的无线通信系统,第一通信单元包括:用于使用近场通信、NFC通信从第二通信单元接收第一公钥标识数据的第一NFC接收器;用于使用NFC通信传输第二公钥标识数据到第二通信单元的第一NFC传送器,第二公钥标识数据指示第一通信单元的公钥;用于执行与第一Wi-Fi通信单元的Wi-Fi通信的第一通信控制器,第一通信控制器被布置为传输指示第一通信单元的公钥的公钥标识数据到第一Wi-Fi通信单元并且从第一Wi-Fi通信单元接收第三公钥标识数据和第一经加密的网络密钥;用于生成指示第一公钥标识数据是否匹配第三公钥标识数据的第一匹配指示的第一比较器;其中第一通信控制器被布置为如果第一匹配指示指示第一公钥标识数据不匹配第三公钥标识数据则终止与第一Wi-Fi通信单元的Wi-Fi通信,并且否则:响应于第一公钥标识数据和第三公钥标识数据中的至少一个来生成第二通信单元的公钥,从第二通信单元的公钥和第一通信单元的私钥生成第一会话密钥,通过使用第一会话密钥对第一经加密的网络密钥进行解密来生成第一网络密钥,并且使用第一网络密钥与第一Wi-Fi通信单元通信;并且第二通信单元包括:用于使用NFC通信从第一通信单元接收第二公钥标识数据的第二NFC接收器;用于使用NFC通信传输第一公钥标识数据到第一通信单元的第二NFC传送器,第一公钥标识数据指示第二通信单元的公钥;用于执行与第二Wi-Fi通信单元的Wi-Fi通信的第二通信控制器,第二通信控制器被布置为传输指示第二通信单元的公钥的公钥标识数据到第二Wi-Fi通信单元并且从第二Wi-Fi通信单元接收第四公钥标识数据;用于生成指示第二公钥标识数据是否匹配第四公钥标识数据的第二匹配指示的第二比较器;其中第二通信控制器被布置为如果第二匹配指示指示第二公钥标识数据不匹配第四公钥标识数据则终止与第二Wi-Fi通信单元的Wi-Fi通信,并且否则:响应于第二公钥标识数据和第四公钥标识数据中的至少一个来生成第一通信单元的公钥,从第一通信单元的公钥和第二通信单元的私钥生成第二会话密钥,生成第二网络密钥;通过使用第二会话密钥对第二网络密钥进行加密来生成第二经加密的网络密钥,并且将第二经加密的网络密钥和指示第二通信单元的公钥的公钥标识数据传输到第二Wi-Fi通信单元。
[0039] 本发明可在使用Wi-Fi通信的无线通信系统中提供更安全的通信。可实现通信单元的改进的认证。特别地,在很多实施例中,该方法可提供低复杂性但是有效和安全的设备认证。特别地,可实现高度确信每个通信单元正与期望的其它通信单元通信。因此,可提供给用户这样的高度确信,通信是与预期的接受者。该方法可提供对例如中间人攻击的改进的抵抗。
[0040] 增大的认证可靠性可通过使用两个类型的通信链路并且特别通过利用NFC认证用于Wi-Fi通信的设备,来实现。这可确保紧密接近被要求用于认证。该方法可提供对例如中间人攻击的改进的弹性和减小的敏感性。在很多情形中,该方法可特别提供对来自可能能够检测和接收NFC通信的第三方的攻击的改进的弹性。
[0041] 特别地,该方法可提供这样的高度确信,即Wi-Fi通信由预期的两个通信单元执行。特别地,该方法提供这样的高度确信,即Wi-Fi通信是在被包含在NFC数据交换中的相同设备之间。特别地,NFC通信的短范围允许用户物理地控制公钥标识数据的交换,即用户可确保第一公钥标识数据在被预期进行相互通信的两个通信单元(第一和第二通信单元)之间交换。该方法然后允许NFC交换被用于确保Wi-Fi通信在正确的通信单元之间。特别地,该方法允许例如第一通信单元以非常高的可能性确定:该Wi-Fi通信是与预期的通信单元发起的,因为如果Wi-Fi通信不可提供与经由NFC传输到它的公钥相同的公钥,则该Wi-Fi通信被终止。因此,用户可确保Wi-Fi通信是与已通过使提供公钥标识数据的NFC传送器足够靠近以允许其在非常短的NFC范围上进行传输而标识的通信单元。
[0042] 特别地,该方法可使用低复杂度操作,允许用户确保双向Wi-Fi通信和NFC通信是在相同的通信单元之间,由此允许短范围NFC特性以确保Wi-Fi通信是在由用户预期的通信单元之间。特别地,如果第一匹配指示指示了匹配,则可确保第一Wi-Fi通信单元实际上是与第二通信单元相关联的通信单元(以及特别地,其可以是第二通信控制器)。类似地,如果第二匹配指示指示了匹配,则可确保第二Wi-Fi通信单元实际上是与第一通信单元相关联的通信单元(以及特别地,其可以是第一通信处理器)。
[0043] 此外,并非利用常规基于NFC的认证,该方法而是要求通信单元使用NFC通信提供完全双向认证。因此,两个通信单元支持在NFC和Wi-Fi通信链路两者上的公钥标识数据的传输,并且因此任何通信单元可确保如果另一通信单元的NFC传送器在某一时刻没有足够靠近以允许它通过NFC传输公钥标识数据,则该任何通信单元将终止Wi-Fi通信。因此,攻击的通信单元将不能够仅仅通过能够接收来自另一通信单元的NFC通信来追踪Wi-Fi通信单元。与常规单向认证(其中NFC认证是单向通信的)相比,这允许改进的安全性。特别地,即使攻击设备能够从第一或第二通信单元中的一个接收NFC传输,也将不能够将该信息用于中间人攻击,因为攻击者不拥有对应的私钥。相反,将仅针对用于其的在两个方向上的NFC通信是可能(即其中两个通信单元都能够通过NFC链路接收和传输)的设备而建立Wi-Fi通信。
[0044] 与常规信念相反,发明人意识到通过使用基于双向NFC的认证而不是单向认证来获得改进的安全性。实际上,对于采用NFC进行认证的现有系统,已经认为,单个NFC通信提供完全安全的系统。然而,发明人已意识到,以下情况可能发生,其中这样的方法可在一些情形中导致次最优的操作,以及可通过使用使用多个NFC数据交互的双向认证来实现改进的安全性。
[0045] 特别地,该方法可提供改进的安全性并且可允许这样的通信系统,为了认证完全安全,其不要求NFC通信是私密的或不可检测的。实际上,在很多实施例中,NFC传输可以是完全公用的,同时仍提供安全操作,并且特别地提供这样的高度确信,即Wi-Fi通信实际上在预期的通信单元之间执行。
[0046] 特别地,与例如当前WSC方法相比,不仅可能实现比组合NFC和Wi-Fi简单配置的常规方法更安全的操作,而且还可实现更有效的操作。实际上,可能省略6个消息M3-M8,该6个消息M3-M8在执行传统WSC协议的过程中通过Wi-Fi在两个设备之间交换,以便检查两个设备是否都知道相同的设备PIN并且传输网络密钥(例如PMK)。代替地,所描述的方法可允许使用M2消息(的变型)来传输网络密钥,其中可利用密钥(从Diffie-Hellman(DH)密钥)导出)来加密网络密钥。
[0047] 该方法可允许基于NFC传输在两个方向上对Wi-Fi通信的认证,并且特别可允许发起通信建立的通信单元以及响应的通信单元两者的认证。例如,第一通信单元可发起新通信的建立,其中该发起包括传输第三公钥标识数据到第二通信单元。第二通信单元在其通过NFC接收不到对应的公钥标识数据时终止该通信建立。然而,尽管由第一通信单元发起了该通信建立,但是该单元在其通过Wi-Fi和NFC两者接收不到匹配的公钥标识数据时也将终止该通信建立。此外,仅当通过经由NFC接收的公钥标识数据认证了两个通信单元时,该过程才允许非常有效地创建将用于保护通信的网络密钥。
[0048] 该方法因此允许非常安全的通信创建,其中,高度确信通信实际上是在期望的通信单元之间并且使用了不能由不同于两个期望的通信单元的通信单元从在这两个期望的通信单元之间经由Wi-Fi和NFC交换的消息确定的网络密钥。
[0049] 第一通信单元特别地与第一Wi-Fi通信单元通信,其试图确保第一Wi-Fi通信单元实际上是第二通信单元。然而,起初不确信第一Wi-Fi通信单元是否实际上是第二通信单元。因此,在一些情形中,第一Wi-Fi通信单元可能是第二通信单元。然而,在其它情形中,第一Wi-Fi通信单元可能是假装是第二通信单元的攻击的Wi-Fi通信单元。
[0050] 类似地,第二通信单元特别地与第二Wi-Fi通信单元通信,其试图确保第二Wi-Fi通信单元实际上是第一通信单元。然而,起初不确信第二Wi-Fi通信单元是否实际上是第一通信单元。因此,在一些情形中,第二Wi-Fi通信单元可能是第一通信单元。然而,在其它情形中,第二Wi-Fi通信单元可能是假装是第一通信单元的攻击的Wi-Fi通信单元。
[0051] 第一Wi-Fi通信单元因此是在不同情形中,可能或可能不与第二通信单元相同的通信单元。类似地,第二Wi-Fi通信单元是在不同情形中,可能或可能不与第一通信单元相同的通信单元。
[0052] 在其中第一Wi-Fi通信单元实际上是第二通信单元的情形中,第三公钥标识数据是从第一Wi-Fi通信单元(即在该情况下从第二通信单元)传输到第一通信单元的指示第二通信单元的公钥的公钥标识数据。因为这将匹配通过NFC接收的第一公钥标识数据,所以应当得到正的第一匹配指示。此外,在该情况下,从第二通信单元传送的第二经加密的网络密钥与由第一通信单元接收的第一经加密的网络密钥相同。在该情况下,第一通信单元生成与第二通信单元相同的会话密钥,即第一和第二会话密钥是等同的。相应地,第一通信单元能够利用第一会话密钥来解密第一经加密的网络密钥以生成第一网络密钥,该第一网络密钥将与第二网络密钥等同。
[0053] 在其中第二Wi-Fi通信单元实际上是第一通信单元的情形中,第四公钥标识数据是从第二Wi-Fi通信单元(即在该情况下从第一通信单元)传输到第二通信单元的指示第一通信单元的公钥的公钥标识数据。因为这将匹配通过NFC接收的第二公钥标识数据,所以应当得到正的第二匹配指示。在该情况下,第二通信单元将被布置为从接收的公钥标识数据生成会话密钥并且通过使用会话密钥加密第二网络密钥来生成第二经加密的网络密钥。这被传输到第二Wi-Fi通信单元/第一通信单元,并且因此第一和第二经加密的网络密钥是相同的。然而,因为第一通信单元可解密该密钥,第一通信单元可生成与第二通信单元相同的网络密钥,即第一和第二网络密钥是等同地。相应地,第一通信单元能够解密第一经加密的网络密钥以生成第一网络密钥,(如提到的,其将与第二网络密钥等同)。然而,其仅当通过NFC和Wi-Fi接收的公钥标识数据匹配的时候(即仅当从第二通信单元接收经加密的网络密钥的时候)才如此做。
[0054] 因此,当第一Wi-Fi通信单元实际上是第二通信单元并且第二Wi-Fi通信单元实际上是第一通信单元时,则第一公钥标识数据将匹配第三公钥标识数据,第二公钥标识数据将匹配第四公钥标识数据,第三公钥标识数据将是从第一Wi-Fi通信单元传输到第一通信单元的指示第二通信单元的公钥的公钥标识数据,第四公钥标识数据将是从第二Wi-Fi通信单元传输到第二通信单元的指示第一通信单元的公钥的公钥标识数据,第一经加密的密钥是第二经加密的密钥,第一会话密钥与第二会话密钥相同,并且第一网络密钥和第二网络密钥相同。如果第一通信单元不是第二Wi-Fi通信单元或第二通信单元不是第一Wi-Fi通信单元,则这将不是如此。
[0055] 第一匹配指示可以是根据匹配准则,指示第一公钥标识数据是否匹配第三公钥标识数据的二进制指示。类似地,第二匹配指示可以是根据匹配准则,指示第二公钥标识数据是否匹配第四公钥标识数据的二进制指示。
[0056] 如果它们指示相同公钥,则公钥标识数据可被认为是匹配的。特别地,如果第一公钥标识数据和第三公钥标识数据是等同的或标识至少一个等同公钥,则它们可被认为是匹配的。在一些实施例中,公钥标识数据中的一个或多个可允许对应的公钥从公钥标识数据唯一地确定,例如公钥标识数据可以以适当的表示方式直接表示公钥。在一些实施例中,公钥标识数据中的一个或多个可提供允许通信单元确定对应的公钥的信息,例如其可包含允许通信单元从本地或远程的公钥储存器或列表获取公钥的地址数据。在一些实施例中,公钥标识数据中的一个或多个可包括公钥的非唯一表示,即公钥标识数据可对应于多个可能的公钥。在这样的实施例中,如果任何匹配公钥可从可能的公钥中找到,则可认为匹配存在。作为特定示例,公钥标识数据中的一个或多个可包括对应公钥的散列。
[0057] 公钥标识数据可以特别地是可在确定用于对应通信单元的公钥中使用的任何数据。特别地,用于通信单元的公钥标识数据可包括或包含用于该通信单元的公钥、用于该通信单元的公钥的散列或用于该通信单元的身份指示。在第一种情况下,接收公钥标识数据的通信单元可将公钥简单确定为提供的数据。在后两种情况下,通信单元可通过在存储公钥的关联值和关联散列或通信单元身份的表中的表查找来确定公钥。
[0058] 近场通信是利用近场磁耦合来传输数据的通信技术。近场通信链路可以典型地具有最大20、10或甚至5cm(厘米)的数据通信范围。NFC通信可特别根据由NFC论坛定义的NFC标准。
[0059] Wi-Fi通信可以是 兼容Wi-Fi通信标准 家族(例如比 如IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11n、IEEE802.11ac和IEEE802.11ad标准中的一个)的通信。Wi-Fi通信链路可以特别支持基于IEEE802.11标准的通信。
[0060] 特别地,Wi-Fi通信可以是实质上基于IEEE802.11标准家族、Wi-Fi联盟标准和验证程序、和无线千兆比特联盟标准和验证程序中的一个或多个的在2.4GHz、5GHz和60GHz频谱带中的无线通信。
[0061] 如果对应匹配指示指示了对应公钥标识数据不匹配,则第一或第二通信处理器可以特别地终止Wi-Fi通信建立。
[0062] 第一NFC传送器可以被包含有第一通信单元的其它特征,或可以在一些实施例中是单独的。例如,第一NFC传送器可被实施为可以与第一通信单元的其它功能分离的无源NFC标签。类似地,第二NFC传送器可以被包含有第二通信单元的其它特征,或可以在一些实施例中是单独的。例如,第二NFC传送器可被实施为可以与第二通信单元的其它功能分离的无源NFC标签。
[0063] 根据本发明的一些实施例,第一公钥标识数据和第三公钥标识数据中的至少一个包括第二通信单元的公钥。
[0064] 这在很多实施例中可提供改进的操作,并且可特别允许便利的公钥确定。
[0065] 类似地,第二公钥标识数据和第四公钥标识数据中的至少一个可包括第二通信单元的公钥。
[0066] 根据本发明的一些实施例,第一公钥标识数据和第三公钥标识数据中的至少一个包括第二通信单元的公钥的散列。
[0067] 这在很多实施例中可提供改进的操作,并且可特别允许便利和降低的资源通信。散列的使用还可提供附加的安全性。
[0068] 在一些实施例中,第二公钥标识数据和第四公钥标识数据中的至少一个包括第一通信单元的公钥的散列。
[0069] 根据本发明的一些实施例,第一比较器被布置为从第一公钥标识数据确定第一密钥并且从第三公钥标识数据确定第二密钥,并且响应于第一密钥和第二密钥的比较来生成第一匹配指示。
[0070] 这在很多实施例中可提供改进的操作。特别地,其可允许精确地确定第一和第三公钥标识数据是否对应于相同公钥。第一密钥可以是第二通信单元的公钥的第一公钥候选,并且第二密钥可以是第二通信单元的公钥的第二公钥候选。如果第一和第二公钥候选等同,则它们可被第一通信单元用作第二通信单元的公钥。
[0071] 在一些实施例中,第二比较器被布置为从第二公钥标识数据确定第三密钥并且从第四公钥标识数据确定第四密钥,并且响应于第三密钥和第四密钥的比较来生成第二匹配指示。
[0072] 这在很多实施例中可提供改进的操作。特别地,其可允许精确地确定第一和第三公钥标识数据是否对应于相同公钥。
[0073] 根据本发明的一些实施例,第一公钥标识数据包括第二通信单元的公钥的第一散列;并且第一匹配指示器被布置为从第三公钥标识数据确定第二通信单元的公钥;从所生成的第二通信单元的公钥生成第二散列;并且响应于第一散列和第二散列的比较生成第一匹配指示。
[0074] 这在很多实施例中可提供改进的操作。特别地,其可允许精确地确定第一和第三公钥标识数据是否对应于相同公钥。
[0075] 在一些实施例中,第二公钥标识数据包括第一通信单元的公钥的第三散列;并且第二匹配指示器被布置为从第四公钥标识数据确定第一通信单元的公钥;从所生成的第一通信单元的公钥生成第四散列;并且响应于第三散列和第四散列的比较生成第二匹配指示。
[0076] 根据本发明的可选特征,第二通信单元还被布置为通过NFC通信传输Wi-Fi配置数据到第一通信单元,并且第一通信控制器被布置为响应于Wi-Fi配置数据适配Wi-Fi通信。
[0077] 这可提供Wi-Fi通信的便利或例如更快的配置和建立。典型地,Wi-Fi配置建立数据可以是可通过任何通信单元偷听的公用数据。
[0078] Wi-Fi配置数据可以特别是Wi-Fi配置建立数据,并且通信处理器可特别被布置为响应于Wi-Fi配置建立数据来建立Wi-Fi通信。
[0079] Wi-Fi配置数据可以特别包括定义强制或可选链路参数、要使用的信道、公用网络参数、组拥有者信息等的数据。
[0080] 根据本发明的可选特征,第一通信单元被布置为仅当第一匹配指示指示了第一公钥标识数据匹配第三公钥标识数据,才传输秘密数据到第二通信单元。
[0081] 该方法可允许,在可确保通信实际上是在预期的通信单元之间之前秘密数据不被传递。如此,可确保秘密信息不被提供给非预期方。秘密数据可包括针对其的分发被控制的所有数据。特别地,秘密数据可以是非公用数据。
[0082] 第一通信单元可以相应地不传输数据到第一Wi-Fi通信单元,直到已确定了,这实际上关联于与第二通信单元相同的公钥为止。秘密数据可特别包括预共享密钥(PSK)、网络密钥或成对主密钥(PMK)或设备密钥或设备PIN代码。
[0083] 根据本发明的可选特征,第二通信单元被布置为仅当第二匹配指示指示了第二公钥标识数据匹配第四公钥标识数据时才传输秘密数据到第一通信单元。
[0084] 该方法可允许,在可确保通信实际上是在预期的通信单元之间之前秘密数据不被传递。如此,可确保秘密信息不被提供给非预期方。秘密数据可包括针对其的分发被控制的所有数据。特别地,秘密数据可以是非公用数据。
[0085] 第二通信单元可以相应地不传送数据到第二Wi-Fi通信单元,直到已确定了,这实际上关联于与第二通信单元相同的公钥为止。秘密数据可特别包括预共享密钥(PSK)、网络密钥或成对主密钥(PMK)或设备密钥或设备PIN代码。
[0086] 根据本发明的可选特征,第一通信单元被布置为经由Wi-Fi通信链路传输秘密数据到第二通信单元。
[0087] 这在很多实施例中可提供改进和/或便利的操作。秘密数据的传递可例如在Wi-Fi简单配置建立的消息M2-M8中的任一个中。
[0088] 根据本发明的可选特征,使用在第一通信单元和第二通信单元之间的NFC点对点通信链路来执行NFC通信。
[0089] 这在很多实施例中可允许更简单的实施和/或操作。
[0090] 根据本发明的可选特征,第二通信单元被布置为传输第一公钥标识数据到NFC标签;并且第一NFC接收器被布置为通过NFC阅读操作从NFC标签阅读第一公钥标识数据。
[0091] 这在很多实施例中可以提供改进的用户体验和/或便于实施。
[0092] 根据本发明的可选特征,第一通信单元被布置为传输第二公钥标识数据到NFC标签;并且第二NFC接收器被布置为通过NFC阅读操作从NFC标签阅读第二公钥标识数据。
[0093] 这在很多实施例中可以提供改进的用户体验和/或便于实施。
[0094] 根据本发明的可选特征,第一通信单元被布置为响应于第一匹配指示指示了第一公钥标识数据不匹配第三公钥标识数据的这个检测来传输认证失败消息到第二通信单元。
[0095] 这可提供改进的用户体验和/或更安全的通信。
[0096] 根据本发明的可选特征,第二通信单元被布置为响应于第二匹配指示指示了第二公钥标识数据不匹配第四公钥标识数据的这个检测来传输认证失败消息到第一通信单元。
[0097] 这可提供改进的用户体验和/或更安全的通信。
[0098] 根据本发明的可选特征,第一通信单元和第二通信单元被布置为根据Wi-Fi简单配置规范来发起通信建立。
[0099] 本发明可特别允许支持Wi-Fi简单配置通信建立的无线通信系统的改进的性能。可实现改进的安全性和/或效率。Wi-Fi简单配置规范可以例如是Wi-Fi简单配置技术规范,版本2.0.2,©2011Wi-Fi联盟。
[0100] 根据本发明的一方面,提供了一种用于无线通信系统的通信单元,该通信单元包括:用于使用近场通信、NFC通信从另一通信单元接收第一公钥标识数据的NFC接收器;用于使用NFC通信将第二公钥标识数据传输到另一通信单元的NFC传送器,第二公钥标识数据指示该通信单元的公钥;用于执行与Wi-Fi通信单元的Wi-Fi通信的通信控制器,通信控制器被布置为传输指示该通信单元的公钥的公钥标识数据到Wi-Fi通信单元并且从Wi-Fi通信单元接收第三公钥标识数据和经加密的网络密钥;用于生成指示第一公钥标识数据是否匹配第三公钥标识数据的第一指示的比较器;其中通信控制器被布置为如果该匹配指示指示第一公钥标识数据不匹配第三公钥标识数据则终止与Wi-Fi通信单元的Wi-Fi通信,并且否则:响应于第一公钥标识数据和第三公钥标识数据中的至少一个来生成另一通信单元的公钥,从另一通信单元的公钥和该通信单元的私钥生成会话密钥,通过使用会话密钥对经加密的网络密钥进行解密来生成网络密钥,并且使用网络密钥与第一Wi-Fi通信单元通信。
[0101] 根据本发明的一方面,提供了一种用于无线通信系统的通信单元,该通信单元包括:用于使用NFC通信从另一通信单元接收第一公钥标识数据的NFC接收器;用于使用NFC通信将第二公钥标识数据传输到另一通信单元的NFC传送器,第二公钥标识数据指示该通信单元的公钥;用于执行与Wi-Fi通信单元的Wi-Fi通信的通信控制器,通信控制器被布置为传输指示该通信单元的公钥的公钥标识数据到Wi-Fi通信单元并且从Wi-Fi通信单元接收第三公钥标识数据;用于生成指示第一公钥标识数据是否匹配第三公钥标识数据的匹配指示的比较器;其中通信控制器被布置为如果该匹配指示指示第一公钥标识数据不匹配第三公钥标识数据则终止与Wi-Fi通信单元的Wi-Fi通信,并且否则:响应于第一公钥标识数据和第三公钥标识数据中的至少一个来生成另一通信单元的公钥,从另一通信单元的公钥和该通信单元的私钥生成会话密钥,生成网络密钥,通过使用会话密钥对网络密钥进行加密来生成经加密的网络密钥,并且将经加密的网络密钥和指示该通信单元的公钥的公钥标识数据传输到Wi-Fi通信单元。
[0102] 根据下文描述的(多个)实施例,本发明的这些和其它方面、特征和优点将变得显而易见,并且将参考下文描述的(多个)实施例来阐明本发明的这些和其它方面、特征和优点。附图说明
[0103] 将仅通过示例的方式,参考图来描述本发明的实施例,其中图1图示了根据本发明的一些实施例的无线通信系统的示例;
图2图示了根据本发明的一些实施例的用于无线通信系统的通信单元的元件的示例;
以及
图3图示了根据本发明的一些实施例的用于无线通信系统的通信单元的元件的示例。

具体实施方式

[0104] 图1图示了根据本发明的一些实施例的无线通信系统的示例。
[0105] 无线通信系统包括第一通信单元101和第二通信单元103,其试图安全和私密地传递数据。在第一通信单元101和第二通信单元103之间的数据通信经由Wi-Fi通信链路来执行。例如,第一通信单元101或第二通信单元103可以是Wi-Fi接入点并且另一单元可以是受接入点支持的移动通信单元。第一通信单元101和第二通信单元103中的每一个可以例如是Wi-Fi AP和Wi-Fi 非AP站、Wi-Fi AP和Wi-Fi注册者、或两个Wi-Fi P2P设备。
[0106] Wi-Fi通信链路可以是兼容Wi-Fi通信标准家族(例如比如IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11n、IEEE802.11ac和IEEE802.11ad标准中的一个)的通信链路。Wi-Fi通信链路可以特别支持基于IEEE802.11标准的通信。
[0107] 特别地,Wi-Fi通信可以是实质上基于IEEE802.11标准家族、Wi-Fi联盟标准和验证程序、和无线千兆比特联盟标准和验证程序中的一个或多个的在2.4GHz、5GHz和60GHz频谱带中的无线通信。
[0108] Wi-Fi联盟创建了用于IEEE802.11标准家族(的几个部分)的验证程序。Wi-Fi联盟可创建用于无线千兆比特联盟标准(的几个部分)的验证程序。Wi-Fi联盟还创建用于Wi-Fi通信本身的标准,例如比如用于Wi-Fi通信链路的简单建立的Wi-Fi简单配置标准。
[0109] 期望的是,Wi-Fi通信是安全的,使得由第一通信单元101和第二通信单元103交换的数据不能被另一其他设备解码。特别地,图1的系统可包括第三通信单元105,第三通信单元105是试图获得交换的数据的信息的窃听设备。图1的系统试图阻止第三通信单元105能够成功解码Wi-Fi数据通信。这包括提供鲁棒性以防来自第三通信单元105的中间人攻击。
[0110] 图2图示了第一通信单元101的元件并且图3图示了第二通信单元103的元件。在该示例中,两个通信单元101、103基本上包括如将在下文中描述的相同的功能。将使用前缀“第一”来描述第一通信单元101的实体并且将使用前缀“第二”来引用第二通信单元
103的实体。
[0111] 第一通信单元101包括第一Wi-Fi收发器201,其能够根据Wi-Fi标准在空中接口上接收和传送数据。第一Wi-Fi收发器201耦合到第一通信控制器203,第一通信控制器203被布置为生成、接收和处理在Wi-Fi空中接口上传递的数据。特别地,第一通信控制器
203可处理用户数据以便传送并且可解码接收的数据以便输出。取决于个体实施例和用户应用的细节,接收和解码的数据可以被输出到外部或内部功能。
[0112] 类似地,第二通信单元103包括第二Wi-Fi收发器301,其能够根据Wi-Fi标准在空中接口上接收和传送数据。此外,类似于第一通信单元101,第二Wi-Fi收发器301耦合到第二通信控制器303,第二通信控制器303被布置为生成、接收和处理在Wi-Fi空中接口上传递的数据。特别地,第二通信控制器303可处理用户数据以便传送并且可解码接收的数据以便输出。
[0113] 为了提供安全和秘密的通信,第一通信单元101和第二通信单元103可将加密用于所交换的数据中的至少一些。特别地,通信控制器203、303可包括用于对被传送的数据进行加密并且对在Wi-Fi通信链路上接收的数据进行解密的功能。通信控制器203、303可以可替换地或附加地包括用于添加完整性保护(例如密码学散列)给被传送的数据并且用于检查在Wi-Fi通信链路上接收的数据的完整性的功能。
[0114] 为了这样的加密和解密以及完整性保护在两个通信单元101、103处被执行,密钥需要在通信单元101、103之间被约定。典型地,为每个新通信建立而生成单独的密钥,并且将该密钥引用作为网络密钥。第一通信单元101和第二通信单元103的认证可以是通信建立的初始化的一部分。
[0115] 可以从网络密钥导出单独的密钥以用于加密和完整性保护。将认识到,在一些实施例中,网络密钥可以被再用于多于一次的通信建立。
[0116] 在图1的系统中,基于使用Wi-Fi通信已经在两个通信单元101、103之间交换的公钥信息,来加密用于给定Wi-Fi通信建立的网络密钥。特别地,第一通信单元101和第二通信单元103被布置为使用Wi-Fi通信执行Diffie-Hellman密钥交换算法以便生成密钥,该密钥将自此被称为会话主密钥。从该会话主密钥,于是能够可能确定另外的会话密钥。由通信单元之一使用会话主密钥或会话密钥来加密网络密钥并且将其发送到其它通信单元。在一些实施例中,会话密钥可以被直接生成为会话主密钥。将认识到,在其它实施例中,可使用其它密钥交换算法。还将认识到,在其它实施例中,可使用从会话主密钥导出的密钥来保护(经加密的)网络密钥的完整性,例如通过提供在(经加密的)网络密钥上的密码学散列。还将认识到,在一些实施例中,可使用NFC通信来执行Diffie-Hellman(或类似的)密钥交换算法。
[0117] 通信单元101、103可使用网络密钥来加密数据和/或提供在两个通信单元101、103之间在Wi-Fi连接上传递的数据的完整性保护。
[0118] 然而,在开始用户数据通信之前,第一通信单元101和第二通信单元103执行认证以确保实际上与期望的其它通信单元执行Wi-Fi通信。
[0119] 在所描述的系统中,该认证包括在两个NFC(近场通信)通信链路(即一个从第一通信单元101到第二通信单元103以及一个从第二通信单元103到第一通信单元101(或等同地,双向通信链路))上的通信。
[0120] 在该系统中,第二通信单元103传送第一公钥标识数据到第一通信单元101,第一公钥标识数据指示第二通信单元的公钥,自此被称为第二公钥。类似地,第一通信单元101传送第二公钥标识数据到第二通信单元103,第二公钥标识数据指示第一通信单元101的公钥,自此被称为第一公钥。因此,两个通信单元都经由NFC近距离通信从另一通信单元接收公钥的标识。经由NFC接收的公钥可以被信任为由已非常靠近NFC接收器并且典型地基本上小于10厘米的传送器传送。相应地,用户可确保,经由NFC接收的公钥表示预期的另一方。
[0121] 此外,在该系统中,通信单元被布置为建立Wi-Fi通信并且该建立包括通信单元中的每一个提供公钥标识数据到另一通信单元。因此,作为该建立的一部分,通信单元中的每一个经由Wi-Fi通信接收公钥标识数据。
[0122] 为了认证Wi-Fi通信实际上是与正确的另一方,通信单元中的每一个被布置为比较分别经由Wi-Fi和NFC接收的公钥标识数据是否对应于匹配的公钥。特别地,通信单元中的每一个可比较经由Wi-Fi接收的公钥标识数据所表示的公钥是否实际上与经由NFC接收的公钥标识数据所表示的公钥相同。如果是,则远程Wi-Fi通信实际上对应于NFC通信并且其可相应地被认为是被认证的。通信单元可相应地着手建立Wi-Fi通信。如果否,则Wi-Fi通信可能不是与预期的另一方,而是可能潜在地与攻击的通信单元(例如尝试中间人攻击)。因此,如果经由Wi-Fi接收的公钥标识数据所指示的公钥不同于通过NFC通信接收的公钥标识数据所指示的公钥,则通信单元着手终止Wi-Fi通信。
[0123] 在该系统中,经由NFC通信和Wi-Fi通信两者向两个通信单元提供公钥标识数据,由此提供全双向认证。此外,该双向认证基于两个通信单元都接收NFC公钥标识数据。相应地,为了攻击设备执行成功的例如中间人攻击,攻击设备接收NFC通信是不够的,而是其还必须能够经由NFC传送假公钥标识数据到通信单元。因为通信单元将使用标准NFC接收器,这样的通信的范围可被保证受限于非常短的范围并且因此用户将能够人工确保没有攻击设备足够靠近以提供假公钥标识数据。
[0124] 实际上,对于基于使用NFC通信的单向认证的常规认证原理而言,认证典型地依赖于一个通信单元经由NFC通信提供数据到另一单元,并且该通信单元然后使用所提供的数据以执行单向认证。例如,通信单元A可以使用NFC通信提供一次性数或pin代码给通信单元B。作为Wi-Fi通信建立的一部分,该一次性数可然后被传递回到通信单元A。通信单元A然后将接收的一次性数与经由NFC提供的一次性数进行比较,并且如果它们匹配,则其认为Wi-Fi通信建立实际上是与通信单元B。
[0125] 然而,发明人意识到,这样的单向认证可能不是足够安全的。例如,攻击的通信单元可以被设计成具有远超出NFC规范的接收灵敏度的接收灵敏度,并且相应地攻击的通信单元也许可能经由比对于NFC所期望的距离实质上更长的距离来接收NFC传送。因为通过带外NFC数据交换提供的安全性是基于NFC通信的受限范围的,所以安全性可被这样的攻击的通信单元的可能性所损害。例如,攻击的通信单元可能能够接收传送的一次性数或pin代码,并且可能假装成通信单元A初始化与通信单元B的Wi-Fi建立。因此,与在该领域中一般认为的相比,带外单向认证可能更不安全。
[0126] 然而,在当前方法中,利用在两个方向上提供的带外NFC通信来使用双向认证。因此,两个通信单元基于接收的NFC数据执行认证,并且通信单元都不基于仅经由Wi-Fi接收的数据或经由NFC传送的数据来执行认证。这提供了增大的安全性,因为通信单元的NFC接收器将被设计为遵循NFC的规范并且尤其将被设计为具有非常有限的范围。可以相应地确保NFC数据是从在NFC接收器的几厘米内的NFC传送器提供的,并且因此可人工地确保,数据是针对预期的通信单元。因此,该方法可确保,通过NFC通信的非常受限的范围的假设提供的安全性是有效的。
[0127] 此外,该方法允许确定从公钥导出的共享会话密钥,并且该共享会话密钥可被用于保护在两方(每个都已生成共享会话密钥)之间的网络密钥的传输。然而,因为两个通信单元都需要,匹配的公钥标识数据经由NFC提供,所以可保证会话密钥的确定是相同的,即可确保,使用的公钥实际上是预期的另一方的公钥,而不是潜在的攻击通信单元的公钥。此外,一个通信单元生成可被用于在通信单元之间的加密通信的网络密钥。使用基于另一通信单元的公钥所确定的会话密钥来加密该网络密钥,并且将该网络密钥传送到该另一通信单元。该通信单元使用通过NFC认证的公钥来生成会话密钥,并且因此将仅能够在其实际上是来自预期的另一方的情况下解密该网络密钥。如果是,则该通信单元解密所接收的网络密钥,并且通信可使用用于加密操作的该网络密钥而继续。
[0128] 带外通信不是特别定制或例如会话特有、可变或秘密的数据,而简单是标识通信单元的公钥的数据。因此,该方法提供安全认证,同时其仅使用标准、静态和公共可用公钥信息的带外传送。这可本质上减小复杂度并且允许增大的灵活性和改进的用户体验。例如,其可允许RFID标签被用于提供公钥标识数据到其它通信单元。
[0129] 实际上,能够接收通过NFC通信提供的公钥标识数据的潜在的攻击通信单元并不引入安全性险。相反,这可以仅仅允许攻击的通信单元确定通信单元的公钥,但是这将仍然不允许其确定安全会话密钥,即其将不能够生成与第一通信单元生成的会话密钥相同的来自该公钥的会话密钥,因为其不具有对私钥的访问权。
[0130] 因此,双向认证在两个方向上使用带外NFC通信以确保用于Wi-Fi通信的会话密钥是从正确的公钥生成的,即通信单元中的每一个可确信,Wi-Fi通信是与预期的另一方。
[0131] 因此,第一通信单元101和第二通信单元103中的每一个评估Wi-Fi通信是否将被建立成使用从适当的公钥导出的会话密钥。如果经由NFC和Wi-Fi接收的公钥标识数据对应于匹配的公钥,则这必然意味着Wi-Fi通信源自预期的通信单元。因为每个通信单元101、103已从经由NFC通信确认或提供的公钥确定了会话密钥,则可另外确保,密钥将仅被通过使相应的NFC通信模相互足够靠近(例如通过使通信设备相互靠近,或通过使NFC标签靠近NFC阅读器)而在物理上使能NFC通信的通信单元知道。典型地,要求用户手动使(视情况而定,设备或标签的)NFC天线在彼此的几厘米内。因此,该方法确保NFC公钥标识数据将仅在这样的两个设备之间交换,这两个设备在某个阶段被物理耦合使得NFC天线足够靠近彼此,以便传输公钥标识数据。因此,NFC通信的物理限制确保了用户能够控制哪些公钥被用在每个通信单元中,并且因此确保了每个通信单元能够被高确信度地保证使用预期的另一通信单元的公钥而不是潜在的攻击通信单元的公钥。特别地,尽管也许可能的是,NFC通信可在可能几米的距离处被拦截,但是用户可通常确信,通过标准NFC接收器读取的数据将源自被放置成与NFC阅读器进行NFC接触的设备。
[0132] 更详细地,第一通信单元101包括能够经由NFC通信链路传送数据的第一NFC传送器207以及能够经由NFC通信链路接收数据的第一NFC接收器205。同样地,第二通信单元103包括能够经由NFC通信链路传送数据的第二NFC传送器307以及能够经由NFC通信链路接收数据的第二NFC接收器305。因此,如果第一通信单元101和第二通信单元103被定位成足够靠近在一起(例如在几厘米内),则它们可经由NFC通信链路交换数据。
[0133] 第一NFC传送器207和第一NFC接收器205耦合到控制在NFC通信链路上的通信的第一NFC控制器209。类似地,第二NFC传送器307和第二NFC接收器305耦合到控制在NFC通信链路上的通信的第二NFC控制器309。
[0134] 第一NFC控制器209和第二NFC控制器309控制NFC通信,从而当使得第一通信单元101和第二通信单元103足够靠近在一起并且在NFC通信范围内时,第一NFC接收器205从第二NFC传送器307接收NFC数据并且特别地接收指示第二通信单元103的公钥的第一公钥标识数据。类似地,第二NFC接收器305从第一NFC传送器207接收NFC数据并且特别地其接收指示第一通信单元101的公钥的第三公钥标识数据。因此,当使得两个通信单元101、103相互接触时,经由NFC通信链路交换公钥标识数据,从而每个通信单元将被报告另一通信单元的公钥。
[0135] 第一NFC控制器209耦合到第一密钥储存器211,第一密钥储存器211储存第一通信单元101的公钥并且将其提供给第一NFC控制器209以生成由第一NFC传送器207传送的公钥标识数据(也被称为第二公钥标识数据)。类似地,第二NFC控制器309耦合到第二密钥储存器311,第二密钥储存器311储存第二通信单元103的公钥并且将其提供给第二NFC控制器309以生成由第二NFC传送器307传送的公钥标识数据(也被称为第一公钥标识数据)。
[0136] 第一NFC控制器209和第一通信控制器203耦合到第一比较器213,第一比较器213被布置为生成指示经由Wi-Fi连接接收的公钥标识数据(第三公钥标识数据)是否匹配经由NFC通信链路接收的公钥标识数据(第一公钥标识数据)的第一匹配指示。类似地,第二NFC控制器309和第二通信控制器303耦合到第二比较器313,第二比较器313被布置为生成指示经由Wi-Fi连接接收的公钥标识数据(第四公钥标识数据)是否匹配经由NFC通信链路接收的公钥标识数据(第二公钥标识数据)的第二匹配指示。
[0137] 第一匹配指示被反馈到第一通信控制器203并且第二匹配指示被反馈回第二通信控制器303。如果该匹配指示指示了在经由Wi-Fi和NFC接收的公钥标识数据之间不存在匹配,则对应的通信控制器203、303着手终止Wi-Fi通信。如果由NFC数据交换指示的正确公钥未被Wi-Fi通信使用,则这指示,Wi-Fi通信可能不在预期方之间并且可能是与攻击单元。相应地,检测到这样的匹配缺失的通信控制器203、303将终止Wi-Fi通信。
[0138] 该系统利用该带外验证作为认证和通信建立的一部分,这导致了,可被用于特定建立并且可被确保在预期方之间交换的网络密钥的安全传输。在该示例中,第一通信单元101试图发起与第二通信单元103的新的安全Wi-Fi通信。相应地,其试图使用加密并且因此网络密钥将被创建。第一通信单元101和第二通信单元103可着手执行将创建适当的会话密钥和网络密钥的安全Wi-Fi建立。该过程包括通信单元交换公钥标识数据,这允许一个通信单元确定另一通信单元的公钥。
[0139] 因此,第一通信单元101着手通过执行Wi-Fi通信以建立新的Wi-Fi通信链路来初始化新的Wi-Fi通信。该Wi-Fi通信因此是与远程Wi-Fi通信单元的,第一通信单元101意在将该远程Wi-Fi通信单元当作第二通信单元103。然而,第一通信单元101最初不能够确信其正与之通信的Wi-Fi通信单元实际上是第二通信单元101而不是攻击通信单元。
[0140] 类似地,第二通信单元103可执行Wi-Fi通信以建立新的Wi-Fi通信链路。特别地,其可经由初始化新的通信建立流程的Wi-Fi接收消息。第二通信单元103与远程Wi-Fi通信单元通信,但是其最初不能够确保该通信单元的身份。因此,第二通信单元103最初不能确信其正与之通信的Wi-Fi通信单元实际上是第一通信单元101而不是攻击通信单元。因此,Wi-Fi通信初始化,其中每个通信单元本质上与未知(或至少未认证的)Wi-Fi通信单元通信。实际上,Wi-Fi通信单元可能是预期的另一方或可能是攻击方。
[0141] 特别地,第一通信单元101可开始建立流程,并且作为该流程的一部分,其将指示第一通信单元101的公钥的公钥标识数据传递到第二通信单元103。第二通信单元103因此经由Wi-Fi接收公钥标识数据。由第二通信单元103接收的该公钥标识数据被称为第四公钥标识数据,并且在正常情况下,其实际上是从第一通信单元101传送的公钥标识数据。然而,在例如中间人攻击的情况下,所接收的第四公钥标识数据可能实际上是指示攻击单元的公钥的公钥标识数据。
[0142] 在该方法中,用户使第一通信单元101和第二通信单元103(或至少适当的NFC通信功能)相互足够紧密接触,以允许公钥标识数据的NFC传送。因此,除了经由Wi-Fi接收的第四公钥标识数据之外,第二通信单元103还经由NFC接收指示第一通信单元101的公钥的第二公钥标识数据。类似地,第一通信单元101经由NFC接收指示第二通信单元103的公钥的第一公钥标识数据。
[0143] 被第一通信单元101和第二通信单元103的NFC接收器接收的公钥标识数据可被保证是从非常靠近(几厘米)的NFC源接收的,该数据可被信任成对应于正确的公钥,即第一通信单元101可信任第一公钥标识数据并且第二通信单元103可信任第二公钥标识数据。
[0144] 第二比较器相应地比较第二和第四公钥标识数据并且生成反映这些是否对应于相同公钥的第二匹配指示。如果这不是如此,则第二通信单元103很可能未正与预期的第一通信单元101通信,而是第二通信单元103与试图将其自己的公钥提供给第二通信单元103的攻击单元通信。因此,在该情况下,第二通信单元103正与之通信的Wi-Fi通信单元不是预期的另一方(即其不是第一通信单元101),而相反是第三方,并且可以特别是攻击设备。在该情况下,第二通信控制器303因此着手终止通信建立。在该情况下,其可另外传送回消息以指示错误已出现并且通信正被终止。
[0145] 然而,如果该匹配指示指示了第二和第四公钥标识数据匹配,则第二通信单元103认为未知的Wi-Fi通信单元是被认证的,即其推断,其正通信的Wi-Fi通信实际上是与由NFC通信指示的第一通信单元101。因此,在该情况下未知的Wi-Fi通信单元被推断为实际上是第一通信单元101。
[0146] 在该情况下,第二通信控制器303着手基于第一通信单元101的公钥生成会话密钥并且还生成可被传递到第一通信单元101的网络密钥(网络密钥可以是可被用于加密的任何适当密钥)。
[0147] 作为第一步骤,第二通信控制器303可响应于第二公钥标识数据和第四公钥标识数据中的至少一个生成第一通信单元的公钥。因此,第一步骤是确定第一通信单元101的公钥。该公钥可因此从经由Wi-Fi接收的公钥标识数据或从经由NFC接收的公钥标识数据生成。实际上,因为会话密钥将典型地仅在Wi-Fi通信建立未被终止的情况下生成,并且因此当第二公钥标识数据和第四公钥标识数据匹配时,两个公钥标识数据将导致第一通信单元101的公钥。
[0148] 第二通信控制器303然后着手从第一通信单元101的公钥和第二通信单元(103)的私钥生成会话密钥(自此称为第二会话密钥)。
[0149] 第二通信控制器303另外生成可以是适合加密操作的任何密钥的网络密钥(自此称为第二网络密钥)。将认识到,可使用用于生成网络密钥的任何方法。典型地,该网络密钥被生成作为临时密钥,例如其仅可用于当前通信(或该通信的一部分)。在很多实施例中,网络密钥可以被简单地生成作为期望长度的随机数。在其它实施例中,相同网络密钥可被(再)用于与相同设备的新通信。
[0150] 第二通信控制器303然后着手通过使用第二会话密钥加密第二网络密钥,来生成经加密的网络密钥(自此,第二经加密的网络密钥)。因此,第二网络密钥不能从第二经加密的网络密钥生成,除非接受者知道第二会话密钥。然而,因为这是使用第二通信单元103的私钥和第一通信单元101的公钥生成的,(例如通过Diffie-Hellman密钥交换算法的特别属性),所以仅第一通信单元101能够再创建该会话密钥,并且因此解密第二加经密的网络密钥。
[0151] 第二通信控制器303然后着手传送第二经加密的网络密钥到另一通信单元,即被假定为第一通信单元101的通信单元。此外,第二通信单元103还传送指示第二通信单元103的公钥的公钥标识数据到另一Wi-Fi通信单元(并且因此在提名的情形中,到第一通信单元101)。
[0152] 第一通信单元101相应地体验到,其初始化与远程Wi-Fi通信单元的通信建立,其假定该远程Wi-Fi通信单元是第二通信单元103。响应于(多个)初始化消息,其接收经加密的网络密钥和指示另一通信单元的公钥的公钥标识数据(即,其接收第三公钥标识数据)。其还具有指示第二通信单元103的公钥的第一公钥标识数据。然而,第一通信单元101不仅仅假定所接收的数据来自第二通信单元103,即其不仅仅假定其正与之通信的Wi-Fi通信单元是第二通信单元103,而是相反着手对此进行检查。
[0153] 因此,第一比较器213着手比较第一和第三公钥标识数据以生成第一匹配指示。
[0154] 相应地,如果第一匹配指示指示了第一和第三公钥标识数据满足适当的匹配准则,则所接收的数据被认为是实际上来自第二通信单元103,即从其接收数据的Wi-Fi通信单元被认为实际上是第二通信单元103。在该情况下,第一通信控制器203继续Wi-Fi通信并且特别地,其可着手建立与第二通信单元103的Wi-Fi通信。然而,如果这不是如此,则第一通信单元101认为所接收的数据是来自潜在的攻击通信单元并且其着手终止该通信建立。因此,在该情况下,第一通信单元101正与之通信的Wi-Fi通信单元被推断为不是第二通信单元103。
[0155] 如果该匹配指示指示了第一和第三公钥标识数据,则第一通信控制器203着手从消息获取网络密钥,即其生成与第二网络密钥等同的第一网络密钥。
[0156] 特别地,第一通信控制器203首先从第一公钥标识数据或第三公钥标识数据(或两者)生成第二通信单元103的公钥。
[0157] 其然后着手从第二通信单元103的公钥和第一通信单元101的私钥生成第一会话密钥。当第一通信单元101和第二通信单元103直接通信时,第一和第二会话密钥将特别由于Diffie-Hellman密钥交换算法的特别属性而是等同的。
[0158] 因为每个通信单元从另一通信单元的公钥和其自己的私钥生成会话密钥,所以所确定的会话密钥将是等同的。相应地,第一通信单元101和第二通信单元103可着手使用所确定的会话密钥来创建安全的Wi-Fi通信。
[0159] 作为更详细的示例,第一密钥储存器211储存用于第一通信单元101的公钥。该a公钥特别是Diffie-Hellman密钥并且可特别地使用等式A = g mod p来生成,其中a是仅对于第一通信单元101来说是已知的秘密值,p是质数并且g是被称为基数的数。秘密值还被已知为第一通信单元101的或用于第一通信单元101的私钥。
[0160] 同样地,第二密钥储存器311储存用于第二通信单元103的公钥。该公钥特别是bDiffie-Hellman密钥并且可特别地使用等式B = g mod p来生成,其中b是仅对于第二通信单元103来说是已知的秘密值,p是质数并且g是可与由第一通信单元101使用的那些相同的基数。秘密值还被已知为第二通信单元103的或用于第二通信单元103的私钥。
[0161] 第一通信控制器203接收所接收的公钥,即第二通信单元103的公钥,以及第一通信单元101的秘密值(a)。其然后着手通过组合第二公钥和第一通信单元101的私有(秘密)值/密钥来计算会话密钥。
[0162] 特别地,第一通信控制器203可着手计算值Ba mod p,其中a是本地秘密/私有值(私钥)并且B是所接收的第二公钥(以及p仍然是基数)。因此,被称为会话主密钥的会话a密钥被计算为值B mod p。
[0163] 术语会话主密钥和会话密钥将被用于分别表示通过Diffie Hellman方法生成的a b密钥,即为B mod p(或者对于另一通信单元而言,为A mod p),和用于加密网络密钥并且从会话主密钥导出的密钥。然而,将认识到,非旨在由此限制,即会话主密钥可被认为是会话密钥并且实际上在一些实施例或情形中,会话主密钥可被直接用作会话密钥来加密和解密网络密钥。
[0164] 同样地,第二会话密钥发生器317接收所接收的公钥,即第一通信单元101的公钥,以及第二通信单元103的秘密密钥。其然后着手计算对应的会话密钥,该会话密钥将与将通过第一通信控制器203计算的会话密钥相同。
[0165] 更详细地,第二通信控制器303可着手计算值Ab mod p,其中b是本地秘密数(私b钥)并且A是所接收的第一公钥(以及p仍然是基数)。因此,会话主密钥被计算为值A mod p。因为
b a
A mod p = B mod p
所以分别在第一通信单元101和第二通信单元103中生成密钥是等同的。此外,这些密钥仅基于公开可用信息和未在个体设备的外部传递的本地秘密信息来生成。相应地,这些密钥不能通过其他设备生成,即使它们能够拦截NFC通信。特别地,为了计算会话主密钥,秘密值a或秘密值b必须是已知的。然而,因为这些都不是外部设备可用的,所以这些不能生成该密钥。
[0166] 将认识到,在一些实施例和情形中,如上所述生成的完全(Diffie-Hellman)会话主密钥可不被直接用作会话密钥。相反,可以从会话主密钥,使用预定算法来生成会话密钥,该预定算法可以附加使用两个通信单元已交换和/或知道的数据。因此,可以通过组合本地秘密值与所接收的公钥(例如使用如上所述的Diffie Hellman方法)来生成会话主密钥,其中使用预定算法从其导出会话密钥。预定算法可以与选择会话主密钥的比特的子集一样简单,或者其可以是更复杂的算法。
[0167] 例如,WSC定义了可从(Diffie-Hellman)会话主密钥导出的一些特别密钥:·AuthKey(256比特),
·KeyWrapKey(128比特),
·EMSK(256比特)。
[0168] 将认识到,这些密钥中的任一个(或实际上从主密钥导出的任何其它密钥,包括会话主密钥本身)可以被用作会话密钥。
[0169] 第一通信单元101和第二通信单元103可以相应地着手使用相同会话密钥。此外,因为会话密钥是由每个设备基于通过NFC传输在非常短距离上确认的密钥来独立生成的,所以该方法确保,使用生成的会话密钥的Wi-Fi通信可仅由已物理上能够使用NFC交换公钥标识的设备来执行。因此,实现了在数据的加密方面和在通信在预期(经认证)的通信单元之间的方面的高度安全性。
[0170] 第一通信控制器203然后着手通过使用第一会话密钥解密第一经加密的网络密钥来生成第一网络密钥。因此,通过使用本地生成的会话密钥(其基于第二通信单元103的经认证的公钥)解密所接收的经加密的网络密钥来生成本地网络密钥。
[0171] 第一通信控制器203然后着手使用与由第二通信单元103导出的网络密钥相同的所导出的网络密钥与远程Wi-Fi通信单元(其现在被认证为实际上是第二通信单元103)通信。
[0172] 因此,实现了支持加密的安全通信建立。
[0173] 在其中第一通信单元101确定了第一公钥标识数据和第三公钥标识数据不匹配的情形中,除了终止Wi-Fi通信之外,其可着手生成认证失败消息,典型地,使用Wi-Fi将该认证失败消息传送到第二通信单元103。响应于接收这样的消息,第二通信单元103着手终止Wi-Fi通信建立操作。
[0174] 这可以允许通信单元101、103两者在潜在错误或攻击的情况下终止通信,即使这仅仅被通信单元101、103中的一个检测到。在很多实施例中,第一通信单元101和/或第二通信单元103还可包括用于向用户警告通信(建立)的终止的功能。
[0175] 在一些实施例中,如果进行的Wi-Fi通信建立被终止,则通信控制器203、303可例如仍然允许不同的通信连接被创建。例如,可以创建非安全通信链路,以便允许一些信息交换。在这样的情况下,用户应用(或用户)将被通知,该通信链路不是安全的并且因此应当传送仅可被拦截的数据。
[0176] 在该系统中,第一通信单元101和第二通信单元103可因此使用NFC通信来初始创建接触,然后在建立在通信单元101、103之间的Wi-Fi连接中使用该接触。
[0177] 该方法可提供改进的安全性。特别地,发明人已意识到,基于NFC认证的当前方法可提供不完美的安全性。实际上,当前理解的是,在现有技术中使用的使用单个NFC通信的认证可由于NFC通信的受限范围而提供足够的安全性和鲁棒性。然而,发明人已意识到,有利的是使用基于双向NFC的认证,其可确保两个通信单元接收到源自几厘米内的传送。实际上,由第一通信单元101和第二通信单元103使用的方法对偷听NFC通信的潜在的攻击通信单元不敏感。实际上,NFC通信可典型地包括仅公开可用的信息,特别包括公钥标识数据,并且所有数据可以用明文提供。然而,即使潜在攻击通信单元偷听该NFC通信,其也不能使用此来创建与第一通信单元101和第二通信单元103中的任一个的Wi-Fi通信。
[0178] 为了说明该改进,可考虑根据WSC的现有技术方法的情形。在这样的方法中,可以使用设备PIN或设备口令来针对彼此认证两个Wi-Fi设备。仅涉及的两个设备应当知道设备PIN或口令。然而,如果另一设备能够确定设备PIN或设备口令,则其可使用此来建立与PIN所起源的设备的单独通信。
[0179] 实际上,用户可能甚至被欺骗,从而认为Wi-Fi连接是通过使这两个设备相互进行NFC接触,例如通过将这些设备之一与另一设备的NFC标签接触,来在两个设备之间建立的。例如,用户可能希望建立在第一设备和第二设备之间的Wi-Fi连接。用户通过经由Wi-Fi通信传递M1和M2消息以交换密钥,来开始标准Wi-Fi配对流程。然而,该用户所不知的是,第一设备实际上与第三设备经由Wi-Fi交换M1和M2消息。这可能碰巧发生或其可能由第三设备故意发生。用户可能然后着手使用第一设备的NFC标签以传输第一设备的设备PIN到第二设备(用户/第一设备相信其还是Wi-Fi通信的另一方)。如在WSC中规定的,该NFC标签包含第一设备的PIN和第一设备的公用Diffie-Hellman密钥的散列(公用Diffie-Hellman密钥是在上文的公式中的值A或B;值a和b是私有的Diffie-Hellman密钥)。用户希望将第一设备连接到第二设备,并且相应地利用第一设备的NFC标签接触第二设备的NFC阅读器。第二设备不在建立任何通信的过程中,所以其仅仅阅读NFC标签并且不采取任何另外的行动。(如果第二设备碰巧在与第四设备的Wi-Fi配对流程的过程中,则其将对此进行终止,因为从pin读取的数据将不匹配来自第四设备的Wi-Fi通信)。
[0180] 然而,如果第三设备能够读取NFC标签,则其可开发在该标签中的信息。实际上,尽管已经相信NFC通信受限于仅几厘米的范围,但是已发现,通过使用特别开发和高度灵敏的电路,也许可能在高达几米处阅读NFC通信和标签。这是在产品中普遍使用的典型NFC阅读器不能够做并且并非不得不能够做的一些事。因此,如果第三设备包括这样的灵敏NFC阅读器,其可能能够拦截由第二设备从NFC标签读取的值。第三设备现在知道第一设备的PIN。第三设备可因此着手与第一设备交换消息M3-M7。M3-M7是设备在WSC中使用以向彼此披露PIN的知识从而确认它们拥有相同PIN(并且如果它们不,则通信建立将被终止)的消息。在该示例中,第三设备知道正确的pin并且随着第一设备将未检测到问题并且相信其正建立与第二设备的Wi-Fi通信,该通信建立可相应地被完成。作为该通信的一部分,将在消息M8中传送网络密钥和其它秘密Wi-Fi配置数据。利用从Diffie-Hellman密钥导出的密钥来加密该数据。然而,因为第三设备已从第一设备获得正确的PIN,流程将继续,使得第一和第三设备经由Wi-Fi通信,同时用户认为是第一和第二设备正在通信。此外,第三设备具有对Diffie-Hellman密钥的访问权并且可因此解密在M8消息中提供的所有秘密数据。这包括秘密网络密钥(PMK),由此允许第三设备在未来对此进行使用。
[0181] 然而,在由第一通信单元101和第二通信单元103使用的方法中,这样的情形不能够发生。实际上,所有NFC传递的数据可以是以明文传递的公用数据。因此,所有NFC传递的数据可以被任何其他通信单元拦截但是不能够被用于建立经授权的Wi-Fi通信。相反,第一通信单元101和第二通信单元103中的每一个当它们已接收到标识如用于Wi-Fi通信一样的相同公钥的NFC通信数据时才完成通信建立。因为分别使用第一通信单元101和第二通信单元103的NFC接收器205、305(其可被设计为仅具有一般通信范围,例如几厘米)来获取该数据,所以NFC通信的范围固来受限。因此,攻击设备将不能够基于仅阅读NFC数据来建立Wi-Fi通信,而将相反需要自己提供这样的NFC数据。然而,因为这仅在提供物理接近的时候是可能的,所以用户可确保这不发生。实际上,如果用户使两个NFC设备在一起,则他可能不完全确信第三方设备不能够可能地拦截在这两个设备之间的NFC消息中的一个或多个。然而,用户可通常确信由设备接收的数据源自另一设备,因为第三方使用NFC在更长距离上传送数据到这两个设备实际上是不可行的。
[0182] 公钥标识数据可以是允许对应的公钥(在一些情况下部分地)被标识的任何数据。在一些实施例中,公钥标识数据可以直接是对应的公钥的完整表示(例如是以适当格式的二进制数),或可例如是从公钥生成的散列。在一些实施例中,第一公钥标识数据可包括第一通信单元101的设备标识,其允许从本地或远程存储器(例如通过表查找)获取公钥。例如,用户可以手动输入多个公钥和相关联的设备身份到第一通信单元101中。在这样的情况下,公钥标识数据可简单由设备身份来提供。
[0183] 在一些实施例中,公钥标识数据可以例如是NFC标签标识。例如,可由用户取得当被读取时仅提供标签身份的标准NFC标签。用户可然后将第二通信单元103的公钥与标签身份一起输入到第一通信单元101中。因此用户可将标签身份链接到第二通信单元103的公钥,由此使用标签身份作为公钥标识数据。以该方式,第二通信单元103的NFC传送器将通过标签来实施并且第二公钥标识数据将通过标签身份来实施。
[0184] 在一些实施例中,Wi-Fi和NFC通信中的至少一个的公钥标识数据可包含公钥本身。替代地或附加地,其可包含例如公钥的散列。在很多实施例中,对于第一和第二公钥标识数据来说可能特别有利的是包括公钥的散列,而第三和第四公钥标识数据包含完全的公钥,即Wi-Fi通信可提供完全公钥标识数据,而NFC通信提供公钥的散列。
[0185] 将认识到,可在不同实施例中使用用于确定匹配指示的不同方法。典型地,生成二进制匹配指示,其将仅仅指示Wi-Fi和NFC通信的公钥标识数据是否匹配。用于考虑匹配存在的特定准则可能在不同实施例之间是变化的。
[0186] 在其中两个公钥标识数据提供公钥的唯一标识的实施例中,可能要求的是,对应的公钥是等同的。例如第一和第三公钥标识数据当并且仅当它们确切地标识相同公钥时可被认为是匹配的。
[0187] 在这样的情况下,第一通信单元101可着手首先分别从第一公钥标识数据和第三公钥标识数据生成公钥。如果得到的公钥是等同的,则可认为匹配存在,并且否则可认为匹配不存在。
[0188] 例如,第三公钥标识数据可直接提供公钥并且第一通信控制器203可仅仅提取适当的数据并且将对应的公钥提供给第一比较器213。第三公钥标识数据可以包括公钥的散列或设备身份。在这样的情形中,本地存储器可包括公钥和相关联的散列或设备身份的列表。第一NFC控制器209可简单地找到所接收的散列/身份的匹配条目,并且获取对应的公钥并且将其提供给第一比较器213用于比较。储存器可以由用户手动填充,或可以例如通过从远程服务器获取适当的公钥来自动更新。在一些实施例中,通信单元可访问远程服务器(例如经由互联网连接)来获得匹配给定散列或设备身份的公钥。
[0189] 在一些实施例中,第一或第三公钥标识数据可包括对应公钥的非唯一标识。在这样的情形中,如果存在可以由第一公钥标识数据和第三公钥标识数据二者表示的至少一个公钥,则第一比较器213可认为公钥标识数据是匹配的。例如,不同公钥可能潜在地导致相同散列或设备身份可与不同公钥相关联。如果第三公钥标识数据提供公钥的完全表示,而第一公钥标识数据仅提供散列或设备身份,则如果由第三公钥标识数据表示的公钥是可以产生第一公钥标识数据的散列的公钥或被链接到第一公钥标识数据的设备身份,则可认为匹配存在。
[0190] 在一些实施例中,可以在其中第一公钥标识数据包括公钥的第一散列的情形中执行特别有效的操作。在这样的情况下,可首先确定由第三公钥标识数据表示的公钥。可然后将对应于被用于生成第一公钥标识数据的散列操作的散列操作应用到所导出的公钥。然后将得到的散列与第一公钥标识数据的散列进行比较。如果它们是等同的,则认为在第一和第三公钥标识数据之间的匹配存在,并且否则认为匹配不存在。
[0191] 将认识到,评论同样适用于确定用于第二和第四公钥标识数据的匹配指示。
[0192] 在图1的系统中,第一通信单元101和第二通信单元103被布置为当已满足匹配准则时,才传送秘密数据到另一通信单元。秘密数据可以是对其的分发将被控制的任何数据,即其可以是作为非公用数据的任何数据。秘密数据可以特别包括网络秘密,例如PMK或PSK。
[0193] 这样的秘密数据可在Wi-Fi通信链路上提供。特别地,可以在Wi-Fi通信建立的M8消息中提供秘密数据。然而,在该系统中,通信单元101、103被布置为在传输任何这样的消息之前执行在公钥标识数据之间的匹配的检查。
[0194] 在一些实施例中,可使用NFC通信来传输秘密数据。例如,可以经由NFC通信来传递PMK或PSK。在这样的实施例中,可以使用会话密钥来加密使用NFC传递的数据,以便确保第三方不能访问该信息,即使它们能够拦截NFC数据。
[0195] 在一些实施例中,经由NFC通信传递(到第一通信单元101和第二通信单元103中的至少一个)的数据可包括Wi-Fi配置数据。该Wi-Fi配置数据可然后由第一通信控制器203或第二通信控制器303分别提取并且可被用于配置Wi-Fi通信。
[0196] 例如,Wi-Fi配置数据可包括应当将哪个Wi-Fi信道用于经由空中传输的Wi-Fi的信息。第一通信控制器203或第二通信控制器303可提取该信息并且确保接着的Wi-Fi操作使用该信道。
[0197] NFC数据可因此包括使得接收通信单元更容易使用Wi-Fi找到其他通信单元的信息。这可例如通过提供指示身份、期望Wi-Fi信道等的数据来完成。特别地,这样的数据可反映可通过接收信标、探查请求和响应消息、认证请求和响应消息、和关联请求和响应消息而获得的信息。该Wi-Fi相关的信息可使很多Wi-Fi消息的交换不必要,由此允许更快和更少的资源要求建立。
[0198] 先前的描述主要反映了其中第一通信单元101和第二通信单元103直接经由NFC通信链路通信的情形。这样的通信链路可例如使用NFC的点对点通信方法来实现。
[0199] 然而,在其它实施例中,在第一通信单元101和第二通信单元103之间的NFC通信链路可包括无线NFC通信链路但是还可包括其它部分或节段。实际上,这样的部分可被包括在非实时通信中,其中在物理介质上存储数据。特别地,NFC通信可使用NFC标签来实现,在NFC标签上可存储使用NFC通信交换的数据。因此特别地,NFC传送器207、307可被实施为NFC标签,并且特别地被实施为提供公钥标识数据的静态NFC标签。NFC传送器207、307可因此是当被阅读时由对应的NFC接收器205、305供电的无源传送器。
[0200] 术语NFC接收器和传送器指代执行NFC通信的两个端的功能。因此,术语NFC传送器指代可经由NFC通信链路来传递数据(例如通过被读取)的功能,并且术语NFC传送器指代可经由NFC通信链路接收数据(例如通过读取NFC传送器)的功能。
[0201] 通信可以通过使用NFC点对点模式,其中,术语NFC传送器指代点对点NFC传送器功能并且术语NFC接收器指代点对点NFC接收器功能。在该情况下,NFC传送器发送信号到其它设备的NFC接收器并且反之亦然。
[0202] 在一些实施例中,NFC通信可通过使用NFC标签。为了使用NFC读取NFC标签,NFC阅读器施加NFC信号,该标签可使用该NFC信号来对自己供电并且NFC标签调制该信号(例如通过改变NFC标签吸收的NFC信号的量),使得NFC阅读器可检测到该调制并且接收NFC标签必须传输到NFC阅读器的信息。因此,NFC传送器可以是允许数据被经由NFC无线连接传递的NFC标签。类似地,NFC接收器可以是可读取NFC标签的NFC阅读器,即其可经由NFC无线通信链路从NFC标签接收数据。
[0203] 为了使用NFC写NFC标签,NFC写入设备施加信号,并且这次使用其希望写入NFC标签的信息来自己对该信号进行调制。NFC标签使用该信号对自己供电。NFC标签检测到NFC信号的调制并且存储该信息。在这样的情形中,NFC传送器可以是能够经由NFC连接将数据写到NFC标签的NFC写入器,并且NFC阅读器可以是NFC标签。
[0204] 作为再一选项,可使用NFC标签作为中间体来实施NFC通信。实际上,可能还使用不具有用于双向通信的电接口的NFC标签。例如,可以首先使NFC标签与例如第一通信单元的NFC写入器进行NFC接触,该NFC写入器将数据(特别地公钥标识数据)写到标签上。然后物理移动该标签并且使该标签与第二通信单元接触,第二通信单元从标签读取数据(即第二公钥标识数据)。以该方式,已执行NFC通信。在这样的情形中,第一通信单元的NFC写入器可以被认为是NFC传送器并且第二通信的NFC阅读器可被认为是NFC接收器。
[0205] 在一些情形中,该标签还可被用于在相反方向上的通信。例如,第二通信单元也可包括NFC写入器,该NFC写入器然后可将第一公钥标识数据写入标签,由此可能盖写第二公钥标识数据。然后使该标签与第一通信单元进行NFC接触,第一通信单元可包括读取NFC标签的NFC阅读器。在该情形中,第二通信单元的NFC写入器可以被认为是NFC传送器并且第一通信的NFC阅读器可被认为是NFC接收器。
[0206] 在一些实施例中,相同功能可被用于NFC阅读和写入两者,并且该功能可因此实施NFC传送器和NFC接收器两者。
[0207] 作为示例,在一些实施例中,可首先由用户将NFC标签连接到例如第一通信单元101并且然后将其物理移动到第二通信单元103。因此在这样的实施例中,NFC通信可包括两个无线NFC通信子链路。此外,第一公钥标识数据从第二通信单元103到第一通信单元
101的交换和第二公钥标识数据从第一通信单元101到第二通信单元103的交换可使用作为该过程的一部分被重写的一个NFC标签来实现。例如,第一通信单元101可首先将其公钥写到NFC标签上,并且这可被耦合到第二通信单元103,第二通信单元103着手读取它,之后其将其自己的公钥写入相同NFC标签。用户然后使NFC标签与第一通信单元101接触,第一通信单元101可相应地读取第二通信单元103的公钥。在其它情形中,可例如使用两个NFC标签,或可在一个方向上使用标签,而在另一方向上使用直接点对点通信。
[0208] 在一些实施例中,NFC标签可包括以永久形式存储使得数据不能被改变的例如第一通信单元101的公钥。然而,NFC标签可进一步包含第二通信单元103能够将其NFC标签写入的读/写部分。实际上,单个NFC标签的使用可通常便于操作,因为其仅要求,相同NFC标签首先NFC耦合到一个通信单元(在该示例中是第二通信单元103)并且然后NFC耦合到另一通信单元(在该示例中是第一通信单元101)。因此,使用两个而不是三个耦合(一般是接触)。
[0209] 还将认识到,在一些实施例中,NFC标签可物理附着到或嵌入通信设备101、103中的一个或两者。
[0210] 特别地,第一通信单元101可被布置为通过传输适当数据到NFC标签内来传送第二公钥标识数据到第二通信单元103。使用根据用于将数据写入NFC标签的标准的NFC写入操作,这样的操作可能是可能的。因此,第一通信单元101可包括用于无线写标签的NFC写入器。第二通信单元103可然后相应地能够读取该标签以便获取(接收)从第一通信单元101到第二通信单元103的公钥标识数据,即第二通信单元103可包括无线NFC阅读功能。
[0211] 在其它实施例中,第一通信单元101可被布置为使用有线非NFC通信链路将第二公钥标识数据写入NFC标签。特别地,很多NFC标签包括允许主机设备直接连接到标签以便写入数据到标签的存储模块内的接口。例如,第一通信单元101的微处理器可连接到允许其经由该(非NFC)连接直接写入标签的NFC标签功能,这样的方法可以特别适用于其中NFC标签是包括第一通信单元101的所有功能的一个物理设备的一部分的情形,但是在NFC标签在包括第一通信单元101的功能的大部分(例如除了NFC标签之外的所有功能)的设备之外的情况下也是有用的。例如,该设备可包括其中可插入标签的机械连接器。
[0212] 类似地,在一些实施例中,第二通信单元103可被布置为使用有线非NFC通信链路从NFC标签阅读数据。特别地,很多NFC标签包括允许主机设备直接连接到标签以便从标签的存储模块阅读数据的接口。例如,第二通信单元103的微处理器可连接到允许其直接经由该(非NFC)连接从标签阅读的NFC标签功能。
[0213] 在一些实施例中,可以在用于建立会话(主)密钥的NFC消息中传递应当在其上使用方法的信息。
[0214] 如果使用NFC对等模式,可通过使第一通信单元101和第二通信单元103足够相互靠近来简单实现NFC连接。
[0215] 在很多实施例中,可通过第一通信单元101和/或第二通信单元103提供指令给用户。例如,可在适当显示器上提供特定指令。此外,可以根据执行不同动作的用户动态更新指令。
[0216] 在一些实施例中,由第一通信单元101(和/或由第二通信单元103)使用NFC通信传递的数据可有利地不包含任何可变数据。因此,所传递的数据可以是不依赖于被建立的特定通信的任何特性的静态数据。因此,数据可以不在两个接连的Wi-Fi通信建立之间改变,即使它们是在与不同的通信单元。这在很多实施例中可以是特别有效的,并且很多特别允许静态NFC标签被使用。因此,可实现减小的系统复杂性和成本。在一些实施例中,仅仅经由NFC传递的数据可以是第一公钥标识数据和第二公钥标识数据。
[0217] 在其它实施例中,由第一通信单元101(和/或由第二通信单元103)使用NFC通信传递的数据可有利地包含可变数据。因此,所传递的数据可包括特定于当前通信建立的数据。
[0218] 这样的数据可例如包括如之前描述的配置数据。在很多实施例中,可提供可变数据以便包括用于其他通信单元的挑战数据。因此,经由NFC传递的数据可包括一次性数。接收通信单元可然后基于该一次性数生成用于验证检查的数据。
[0219] 例如,第一通信单元101可在使用NFC提供给第二通信单元103的数据中包括一次性数。第二通信单元103可然后在其使用会话密钥生成数据时使用该一次性数。第一通信单元101可相应地接收基于会话密钥和其本身经由NFC提供的一次性数生成的数据。这样的方法可便于操作和/或改进安全性。
[0220] 作为特定示例,第一通信单元101可生成包括随机生成的挑战数据(一次性数)的NFC消息。该数据可以是非加密的。在接收到该消息时,第二通信单元103可基于会话密钥生成用于所接收的随机数据的密码学散列。得到的密码学散列可被包括在被传递回到第一通信单元101的Wi-Fi消息中。
[0221] 将认识到,上述描述为了清楚性已参考不同功能电路、单元和处理器描述了本发明的实施例。然而,将认识到,可以在不减损本发明的情况下使用在不同功能电路、单元或处理器之间的功能的任何适当分布。例如,被图示为由分离处理器或控制器执行的功能可以由相同处理器或控制器执行。因此,对特定功能单元或电路的引用仅被示为对用于提供所描述的功能的适当模块的引用,而非指示严格的逻辑或物理结构或组织。
[0222] 可以按照包括硬件软件固件或这些的任意组合的任何适当形式实施本发明。本发明可以可选地被至少部分实施为在一个或多个数据处理器和/或数字信号处理器上运行的计算机软件。本发明的实施例的元件和部件可以在物理上、功能上和逻辑上以任何适当方式实施。实际上,功能可以在单个单元中、在多个单元中或作为其他功能单元的一部分实施。因此,本发明可以在单个单元中实施,或可以物理地和功能地分布在不同单元、电路和处理器之间。
[0223] 尽管结合一些实施例描述了本发明,但是并非旨在被限制于本文陈述的特定形式。相反,本发明的范围仅由所附权利要求限制。附加地,尽管特征可看起来是结合特定实施例进行描述的,但是本领域技术人员将认识到,可以根据本发明组合所描述的实施例的各个特征。在权利要求中,术语包括不排除其它元件或步骤的存在。
[0224] 此外,尽管被单独列出,但是多个模块、元件、电路或方法步骤可以由例如单个电路、单元或处理器来实施。附加地,尽管个体特征可以被包括在不同权利要求中,但是这些可以可能有利地被组合,并且包括在不同权利要求中并不暗示特征的组合不是可行的和/或有利的。此外,特征包括在一个类别的权利要求中并不暗示限制到该类别,而是指示该特征在适当的情况下同样可适用于其他权利要求类别。此外,权利要求中的特征的顺序并不暗示特征必须据以工作的任何特定顺序,并且特别地,方法权利要求中的个体步骤的顺序并不暗示必须以该顺序执行步骤。相反,可以以任何适当顺序执行步骤。此外,单数引用不排除复数。因此对“一”、“一种”、“第一”、“第二”等的引用不排除复数。权利要求中的附图标记仅仅被提供作为澄清示例,不应当被解释为以任何方式限制权利要求的范围。
QQ群二维码
意见反馈