藍(lán)牙設(shè)備地址的類型
所有藍(lán)牙設(shè)備都應(yīng)具有一個藍(lán)牙設(shè)備地址 (BD_ADDR),該地址(及其地址類型)可以唯一地(一定范圍內(nèi)唯一)標(biāo)識該設(shè)備。使用者如果不了解其概念,看上去可能會有很多疑惑,甚至容易造成侵權(quán)問題。
藍(lán)牙的設(shè)備地址分為兩大類,一類是 Public,一類是 Random 的。其中 Random 類地址里面又分為靜態(tài)地址和私有地址。私有地址又分為不可解析的私有地址和可以解析的私有地址。
MAC 地址相關(guān)函數(shù)
下面介紹兩個比較重要的和 MAC 設(shè)置相關(guān)的函數(shù)。
藍(lán)牙 Random 靜態(tài)設(shè)備地址的生成與設(shè)置參考方法
為了方便一些客戶生成免費的相對唯一的 MAC 地址,下面列舉一個使用芯片出廠唯一的 UID 來生成 MAC 地址的參考方法。基本原理是通過讀取芯片的 UID,然后再進(jìn)行 Hash計算,截取需要的 46bit 作為隨機部分的靜態(tài)地址。理論上這種方法生成的 MAC 地址重復(fù)的幾率很小,在 2 的 40 多次方分之一的幾率重復(fù),因此實際工程應(yīng)用中可以認(rèn)為它相對比較唯一。
藍(lán)牙 Public 設(shè)備地址的購買流程
全球唯一設(shè)備號,標(biāo)準(zhǔn)化組織是 IEEE,以前的網(wǎng)卡 Ma 地址、PC,現(xiàn)在藍(lán)牙設(shè)備、BLE 設(shè)備若需要認(rèn)證的,官方的唯一設(shè)備標(biāo)識,即藍(lán)牙地址,也是 Mac 地址,需向 IEEE申請,并登記付費。即可獲得授權(quán)。
小結(jié)
本文介紹了 BLE MAC 地址的類型,基于芯片 ID 生成靜態(tài)隨機 MAC 地址,以及購買Public MAC 地址的流程。