<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > 如何使用藍牙4.2保護隱私

如何使用藍牙4.2保護隱私

作者: 時(shí)間:2018-08-15 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:在最新的藍牙(Bluetooth)4.2核心規范當中,支持一項新的特性,可以通過(guò)周期性地改變藍牙設備的隨機地址幫助藍牙設備的使用者來(lái)保護自身的,避免其設備被黑客或者是竊聽(tīng)者通過(guò)射頻偵聽(tīng)以及對數據分析的方式得以竊取。這一保護的特性并不是在GAP(Generic Access Profile)的發(fā)現流程過(guò)程當中起作用,而是在連接建立之后對設備的行蹤得以保護。一旦設備采用了可變隨機地址的概念,設備使用者的能夠得到很好的保護,本文將會(huì )著(zhù)重為大家介紹核心規范當中關(guān)于隱私保護的技術(shù)細節。

本文引用地址:http://dyxdggzs.com/article/201808/386841.htm

在我們的日常使用的無(wú)線(xiàn)通信設備當中,都包含了MAC地址。MAC地址具有唯一性的特點(diǎn),通常在網(wǎng)絡(luò )通信當中,MAC地址作為設備符來(lái)采用。MAC地址大多是由設備的生產(chǎn)廠(chǎng)商來(lái)分配并且存儲在設備當中。如果在網(wǎng)絡(luò )當中有兩個(gè)設備具有相同的MAC地址,那么就會(huì )產(chǎn)生網(wǎng)絡(luò )通信的問(wèn)題,所以設備的生產(chǎn)廠(chǎng)商在分配MAC地址的時(shí)候都非常小心,確保地址的唯一性。如果我們希望獲取設備的MAC地址也非常的簡(jiǎn)單,當我們打開(kāi)智能手機或者是平板電腦,你可以非常簡(jiǎn)單的在類(lèi)似于“設備管理”的界面找到設備的MAC地址,而有些設備,比如說(shuō)無(wú)線(xiàn)路由器,它們的MAC地址就打印在設備的背面。同時(shí),我們還可以通過(guò)其他的方式來(lái)獲取設備的MAC地址。

我們可以試想一下,當我們每天搭乘公共交通穿行了整個(gè)城市,當我們在商場(chǎng)購物或是和朋友在餐廳聚餐的時(shí)候,你的智能手機可以幫助你付費、點(diǎn)單和導航。如果你的智能手機接入到網(wǎng)絡(luò )熱點(diǎn)當中進(jìn)行互聯(lián)網(wǎng)訪(fǎng)問(wèn)的時(shí)候,它就可能會(huì )在這一系列的過(guò)程當中來(lái)廣播其MAC地址。我們前面提到了MAC地址在網(wǎng)絡(luò )通信當中的唯一性,你又是智能手機的使用者,那么這部智能手機的MAC地址從某一角度來(lái)講,就代表了你在無(wú)線(xiàn)通信過(guò)程當中的身份認證。因此就存在這樣一種可能,一些懷有惡意的人通過(guò)一些其他的無(wú)線(xiàn)通信設備,可以獲取你的智能手機進(jìn)行數據交互時(shí)的MAC地址并且記錄了MAC地址出現的日期、時(shí)間和相關(guān)的位置,那么你的行蹤就可以被監控,如下圖所示。

使用藍牙技術(shù),也可能面對上面的這種問(wèn)題。因此在核心規范當中,對上述問(wèn)題提出了一種解決方法。要了解這個(gè)解決的方法,首先要現從藍牙設備的地址說(shuō)起。和其他的無(wú)線(xiàn)通信技術(shù)類(lèi)似,藍牙設備也有自身的設備地址,我們在藍牙的核心規范當中,通常稱(chēng)其為BD_ADDR(Bluetooth Device Address),BD_ADDR將會(huì )在藍牙設備諸如連接和配對的過(guò)程當中起到設備識別的作用。對于藍牙設備,可以使用公有地址(Public Device Address),也可以使用隨機地址(Random Device Address),但無(wú)論是使用公有地址,還是隨機地址,它們的地址長(cháng)度都是48比特,也就是6個(gè)字節。

公有地址的構成包含了兩個(gè)部分,一部分是公司識別碼(Company ID),其需要通過(guò)IEEE注冊機構付費獲得,公司識別碼長(cháng)度為24比特,處于48比特設備地址的高24比特;另外一部分是公司分配碼(Company Assigned ID),其長(cháng)度也為24比特,處于48比特設備地址的低24bit,如下圖所示。

公有地址

除了公有地址,藍牙設備也可以使用隨機地址進(jìn)行相關(guān)的網(wǎng)絡(luò )操作。藍牙的隨機地址有包含兩種:靜態(tài)地址(Static Device Address)和私有地址(PrivateDevice Address)。由于靜態(tài)地址和本文的主題—如何使用保護隱私關(guān)系不大,這里我們重點(diǎn)介紹一下私有地址。在私有地址的定義當中,又包含了兩個(gè)子類(lèi):不可解析私有地址(Non-resolvable Private Address)和可解析私有地址(ResolvablePrivate Address, RPA)。所謂不可解析的私有地址,就是藍牙設備地址在周期性的變化,并且這個(gè)地址無(wú)法被其他設備所解析,我們可以認為它就是一個(gè)隨機數。不可解析的私有地址可以保護用戶(hù)的隱私,因為不斷變化的設備地址使得任何設備都無(wú)法通過(guò)記錄藍牙設備地址的方式來(lái)對用戶(hù)進(jìn)行跟蹤,但這樣的保護方式也意味著(zhù)可信任的設備也無(wú)法這個(gè)藍牙設備的真實(shí)身份,因此我們著(zhù)重介紹可解析的私有地址。如下圖所示,智能手機的設備地址在不斷的變化,因此即便是設備地址被獲取,也無(wú)法解析出設備的真實(shí)身份,除非具有某種解析密鑰。

可解析的私有地址意味著(zhù)藍牙設備地址BD_ADDR在周期性的不斷變化,可以保護用戶(hù)的隱私不被跟蹤;同時(shí)由于其是可解析的,因此配對設備(Pair Device)可以通過(guò)這個(gè)私有地址解析出藍牙設備的真實(shí)身份。因此,我們要了解可解析的私有地址是如何產(chǎn)生的?

假設有兩個(gè)藍牙設備,分別是設備A和設備B,在兩個(gè)藍牙設備A、B建立連接之后,這兩個(gè)藍牙設備可以通過(guò)配對的方式交換各自的身份解析密鑰IRK(Identity Resolving Key, IRK),設備A的身份解析密鑰IRK-A,設備B的身份解析密鑰IRK-B。假設設備B采用了可解析的私有地址機制,那么設備B就需要周期性的產(chǎn)生可解析的私有地址。下圖是可解析隨機地址的結構,其中可解析隨機地址的高兩個(gè)比特分別為0和1,作為可解析地址的標識符。

可解析私有地址

當設備B需要生成隨機地址的時(shí)候,其內部會(huì )首先生成一個(gè)隨機數prand,基于prand隨機數,設備B需要利用哈希hash算法生成可解析隨機地址的另外一部分,hash。prand隨機數和哈希hash分別占用24比特,計算公式為:

哈希hash = ah(IRK-B, prand隨機數)

其中函數ah在藍牙4.2核心規范第3卷H部分2.2.2章節有詳細介紹,此處不再贅述。當設備B具有了prand隨機數和基于prand隨機數生成的哈希hash之后,通過(guò)移位相與的方式,就可以生成可解析隨機地址RPA。

RPA= hash|| prand

那么設備A該如何解析RPA呢?當設備A收到一個(gè)藍牙設備地址BD_ADDR,并且這個(gè)地址的地址標識符表明其是一個(gè)可解析隨機地址,設備A首先將這個(gè)地址拆分為prand隨機數和哈希hash。接下來(lái)其利用之前與設備B配對時(shí)獲取的IRK-B,通過(guò)函數ah來(lái)生成一個(gè)本地哈希localHash。

localHash = ah(IRK-B, prand)

如果生成的本地哈希localHash與拆分得到的哈希hash相等,說(shuō)明這個(gè)地址是設備B所產(chǎn)生的可解析隨機地址;如果不等,代表解析失敗。設備A可以利用其獲取的其他設備的IRK對這個(gè)地址就行解析。下圖是一個(gè)地址解析的流程圖。

地址解析流程

因此,對于可解析隨機地址的解析,我們可以認為它是一個(gè)窮舉的過(guò)程。任何設備在收到一個(gè)可解析隨機地址的時(shí)候,都會(huì )利用其本地所存儲的所有IRK對這個(gè)可解析隨機地址進(jìn)行哈希比對,如果相符,解析過(guò)程終止,這個(gè)地址的真實(shí)身份可解析;如果所有的IRK都無(wú)法對這個(gè)地址進(jìn)行解析,那么解析失敗。

通過(guò)上述的方法,藍牙設備可以通過(guò)采用可解析隨機地址的方式來(lái)對設備隱私進(jìn)行保護,進(jìn)而對設備使用者的隱私進(jìn)行保護。采用了可解析隨機地址之后,藍牙設備的地址是周期性不斷變化的,所以即使通過(guò)其他方式獲取了藍牙設備的地址,也無(wú)法通過(guò)設備地址出現的時(shí)間和地址來(lái)對設備進(jìn)行跟蹤。只有那些經(jīng)過(guò)配對過(guò)程完成了身份解析密鑰IRK交互的可信設備,才能對可解析隨機地址進(jìn)行解析。



關(guān)鍵詞: 藍牙4.2 隱私

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>