在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

藍(lán)牙設(shè)備地址的類型 藍(lán)牙Random靜態(tài)設(shè)備地址的生成與設(shè)置

STM32單片機(jī) ? 來源:STM32單片機(jī) ? 2024-01-03 09:37 ? 次閱讀

01藍(lán)牙設(shè)備地址的類型

所有藍(lán)牙設(shè)備都應(yīng)具有一個(gè)藍(lán)牙設(shè)備地址 (BD_ADDR),該地址(及其地址類型)可以唯一地(一定范圍內(nèi)唯一)標(biāo)識(shí)該設(shè)備。使用者如果不了解其概念,看上去可能會(huì)有很多疑惑,甚至容易造成侵權(quán)問題。

藍(lán)牙的設(shè)備地址分為兩大類,一類是 Public,一類是 Random 的。其中 Random 類地址里面又分為靜態(tài)地址和私有地址。私有地址又分為不可解析的私有地址和可以解析的私有地址。這些地址類型列舉如下:
? Public Bluetooth address // 1
? Random Bluetooth address
o Static address // 2
o Private address
Non-resolvable private address // 3
Resolvable private address // 4

上述 4 種地址類型都使用 48bit 的地址長(zhǎng)度。地址類型不同,48bit 地址的格式也會(huì)不同;設(shè)備地址類型和設(shè)備地址共同用于唯一標(biāo)識(shí)該設(shè)備。另外需要注意以下幾點(diǎn):
? Public 或者 Random 地址類型的標(biāo)識(shí)在鏈路層的廣播包 PDU Header 中,不在48bit 地址的內(nèi)容中。
? Random 類型下的三種地址類型,使用 48bit 地址的高 2bit 進(jìn)行標(biāo)識(shí)。
? 48bit 地址都相同的兩個(gè)設(shè)備,如果它們分別屬于 Public 或者 Random 地址類型,則它們是兩個(gè)不同身份的藍(lán)牙設(shè)備。

設(shè)備應(yīng)至少使用一種類型的設(shè)備地址,也可以同時(shí)使用兩種。該設(shè)備可以通過它使用的任何設(shè)備地址來尋址。設(shè)備的身份地址是它在傳輸?shù)臄?shù)據(jù)包中使用的 Public 設(shè)備地址或Random 靜態(tài)設(shè)備地址。如果一個(gè)設(shè)備使用可解析的私有地址,它也應(yīng)該有一個(gè)身份地址。每當(dāng)比較兩個(gè)設(shè)備地址時(shí),比較應(yīng)包括設(shè)備地址類型(即如果兩個(gè)地址的類型不同,即使兩個(gè) 48 位地址相同,它們也不同)。

如果公司有購買 Public 地址,則建議用 Public。如果沒有購買地址,又沒有設(shè)備地址隱私需求,則建議使用 Random Static Device Address。

1.1. Public Bluetooth Address

在傳統(tǒng)藍(lán)牙和 BLE 中,原則上來說,使用 Public 地址需要向 IEEE 申請(qǐng)購買,使用未授權(quán)的 Public 地址如果和已授權(quán)的 Public 地址發(fā)生地址沖突,可能會(huì)面臨法律糾紛。使用Public 地址還需要涉及到地址的管理、購買等流程。本文的后面舉例描述了購買 Public 地址的流程。

1.2. Random Static Device Address

藍(lán)牙更新到了 BLE 版本之后,為了讓設(shè)備廠商可以節(jié)省購買 Public 地址授權(quán)的費(fèi)用,引入了 Random 類型的地址。從前文可知,Random 地址類型又分為靜態(tài)(Static)類型和隱私(Private)類型。靜態(tài)類型的地址格式如下:

84605070-a97f-11ee-8b88-92fbcf53809c.jpg

靜態(tài)地址是隨機(jī)生成的48位地址,應(yīng)滿足以下要求 :
? 地址的隨機(jī)部分至少有一位應(yīng)為 0
? 地址的隨機(jī)部分至少有一位應(yīng)為 1


設(shè)備可以選擇在每次電源循環(huán)后將其靜態(tài)地址初始化為新值。設(shè)備在初始化后不得更改其靜態(tài)地址值,直到設(shè)備重新上電。


注意:如果設(shè)備的靜態(tài)地址發(fā)生更改,則存儲(chǔ)在對(duì)端設(shè)備中的地址將無效,并且將失去使用舊地址重新連接的能力。

1.3. Random Non-Resolvable Private Address

隱私地址主要是為了解決隱私問題。根據(jù)其是否可解析,又分成不可解析地址類型和可解析地址類型,不可解析地址類型的地址格式如下:

84713070-a97f-11ee-8b88-92fbcf53809c.jpg

? 地址的隨機(jī)部分至少有一位應(yīng)為 1
? 地址的隨機(jī)部分至少有一位應(yīng)為 0
? 地址不得等于 Public 地址


不可解析地址會(huì)周期更新(建議值是 15 分鐘),這類地址在實(shí)際應(yīng)用中比較少用。

1.4. Random Resolvable Private Address

所謂可解析地址(RPA),是指可以把一個(gè)周期變化的地址解析為唯一的身份地址。使用隨機(jī)可解析地址類型的設(shè)備應(yīng)具備兩個(gè)地址,一個(gè)地址用于標(biāo)識(shí)該設(shè)備,稱為身份地址(Identity Address),另一個(gè)則為隨機(jī)可解析地址(RPA)。一般情況下,設(shè)備會(huì)廣播RPA,身份地址保存在本地。對(duì)端設(shè)備可通過解析 PRA 進(jìn)一步獲得其身份地址。

要生成可解析的私有地址,設(shè)備必須具有本地身份解析密鑰 (IRK) 或?qū)Χ松矸萁馕雒荑€ (IRK)??山馕龅乃接械刂窇?yīng)使用 IRK 和隨機(jī)生成的 24 位數(shù)字生成。隨機(jī)數(shù)稱為prand,應(yīng)滿足以下要求:
? prand 的隨機(jī)部分至少有一位為 0
? prand 的隨機(jī)部分至少有一位為 1

84750722-a97f-11ee-8b88-92fbcf53809c.jpg

特征如下:
1)由兩部分組成:
高位 24bits 是隨機(jī)數(shù)部分,其中最高兩個(gè) bit 為“10”,用于標(biāo)識(shí)地址類型;
低位 24bits 是隨機(jī)數(shù)和 IRK 經(jīng)過 hash 運(yùn)算得到的 hash 值,運(yùn)算的公式為 hash = ah(IRK, prand)。

2)當(dāng)對(duì)端 BLE 設(shè)備掃描到該類型的藍(lán)牙地址后,會(huì)使用保存在本機(jī)的 IRK,和該地址中的 prand,進(jìn)行同樣的 hash 運(yùn)算,并將運(yùn)算結(jié)果和地址中的 hash 字段比較,相同的時(shí)候,才進(jìn)行后續(xù)的操作。這個(gè)過程稱作 resolve(解析),這也是 Non-Resolvable Private Address/Resolvable Private Address 命名的由來。
3)以 T_GAP(private_addr_int)為周期,定時(shí)更新。哪怕在廣播、掃描、已連接等過程中,也可能改變。
4)Resolvable Private Address 不能單獨(dú)使用,因此需要使用該類型的地址的話,設(shè)備要選擇 Public Device Address 或者 Static Device Address 中的一種作為其身份地址。

02MAC 地址相關(guān)函數(shù)

下面介紹兩個(gè)比較重要的和 MAC 設(shè)置相關(guān)的函數(shù)。

// 配置 MAC 地址的函數(shù)

847c5446-a97f-11ee-8b88-92fbcf53809c.jpg


其中不同的 offset 設(shè)置的數(shù)值不一樣,和 MAC 地址相關(guān)的主要是這兩個(gè):
? 0x00: CONFIG_DATA_PUBADDR_OFFSET
?0x2E: CONFIG_DATA_STATIC_RANDOM_ADDRESS

//配置使用哪種 MAC 地址的函數(shù):

848344fe-a97f-11ee-8b88-92fbcf53809c.jpg

Identity_Address_Type :
? 0x00: Public Address
? 0x01: Static Random Address

03藍(lán)牙 Random 靜態(tài)設(shè)備地址的生成與設(shè)置參考方法

為了方便一些客戶生成免費(fèi)的相對(duì)唯一的 MAC 地址,下面列舉一個(gè)使用芯片出廠唯一的 UID 來生成 MAC 地址的參考方法?;驹硎峭ㄟ^讀取芯片的 UID,然后再進(jìn)行 Hash計(jì)算,截取需要的 46bit 作為隨機(jī)部分的靜態(tài)地址。理論上這種方法生成的 MAC 地址重復(fù)的幾率很小,在 2 的 40 多次方分之一的幾率重復(fù),因此實(shí)際工程應(yīng)用中可以認(rèn)為它相對(duì)比較唯一。

Hash 計(jì)算這部分參考了開源的算法庫,鏈接地址如下:
https://github.com/B-Con/crypto-algorithms/blob/master/sha256.c

sha256.c這個(gè)庫文件在當(dāng)前開發(fā)平臺(tái)上需要修改前面一個(gè)頭文件包含:

將 “#include” 更改為 “#include”

以下部分偽代碼適用于 BlueNRG 系列和 STM32WB 系列

// 生成靜態(tài) MAC 地址參考函數(shù)

848d1740-a97f-11ee-8b88-92fbcf53809c.jpg

04藍(lán)牙 Public 設(shè)備地址的購買流程

全球唯一設(shè)備號(hào),標(biāo)準(zhǔn)化組織是 IEEE,以前的網(wǎng)卡 Ma 地址、PC,現(xiàn)在藍(lán)牙設(shè)備、BLE 設(shè)備若需要認(rèn)證的,官方的唯一設(shè)備標(biāo)識(shí),即藍(lán)牙地址,也是 Mac 地址,需向 IEEE申請(qǐng),并登記付費(fèi)。即可獲得授權(quán)。

4.1. OUI 介紹

Organizationally Unique Identifier(OUI) 被稱作“組織唯一標(biāo)識(shí)符”,在任何一塊網(wǎng)卡中燒錄的 6 字節(jié) MAC 地址中,前三個(gè)字節(jié)就體現(xiàn)了 OUI,通常情況下,該標(biāo)識(shí)符是唯一的。因此,OUI 可以用來創(chuàng)建 MAC 地址、藍(lán)牙設(shè)備地址或以太網(wǎng)地址。另外,OUI 也可作為一個(gè)公司的 SNAP 協(xié)議標(biāo)識(shí)符使用。

通常情況下,IEEE 標(biāo)準(zhǔn)協(xié)會(huì)將前 24 位組織唯一標(biāo)識(shí)符(OUI)分配給生產(chǎn)企業(yè),剩下的 24 位由廠家自行分配代碼。

目前,OUI 只能通過 IEEE 標(biāo)準(zhǔn)協(xié)會(huì)直接購買,其總價(jià)格大概在 3500 美元左右。

如果如果沒有保密需求,支付$3500 就可獲得一個(gè) OUI(可生成 1600 萬個(gè)地址),即上述所指的 publicly registered MA-L,也就是說此類公司的名稱和地址是公開的,公眾可以訪問

https://regauth.standards.ieee.org/standards-ra-web/pub/view.html#registries
輸入公司名稱查詢?cè)摴緭碛械?MA-L,或者輸入 MA-L查詢公司的名稱和地址。

如果生產(chǎn)廠商希望對(duì)以上信息保密,可以選擇 Privately registered MA-L,價(jià)格會(huì)貴很多,且每年需要支付保密費(fèi)用大概幾千美元。

4.2. 購買流程

如果需要購買 Public 地址,需要先申請(qǐng)一個(gè) IEEE 賬號(hào)。登入后點(diǎn)擊如下入口開始申請(qǐng)。

圖1.申請(qǐng)購買 public 地址入口

84957c50-a97f-11ee-8b88-92fbcf53809c.jpg

圖2. 選擇購買的 MAC 地址數(shù)量和類型

849cce88-a97f-11ee-8b88-92fbcf53809c.jpg

如果申請(qǐng)的類型是 MA-L 大概有 1677 萬個(gè)地址,MA-M 大概有 100 多萬個(gè)。

圖3.申請(qǐng)過程中的 4 個(gè)步驟

84a605c0-a97f-11ee-8b88-92fbcf53809c.jpg

主要填寫:申請(qǐng)人信息,包括姓名、職位、公司名稱、地址及郵箱電話等;

公司信息,如果貴公司為首次申請(qǐng),initial corporate assignment request 后選擇YES,如果不是首次申請(qǐng) OUI,一定要確?,F(xiàn)有的 MAC 地址使用率已達(dá)到 95%,否則不予申請(qǐng),選擇 No 之后需要在方框內(nèi)填寫上次申請(qǐng) OUI 的公司名稱并提供再次申請(qǐng)的理由,同時(shí)還需提供公司類型,是母公司還是子公司,還是兩者皆否

如果公司類型選擇了母公司或者是子公司,需要填寫至少 3 家聯(lián)營(yíng)公司的具體信息,如果公司類型選擇了 neither,該部分可不填;為保密信息,如果選擇購買的是 publicly registered MA-L,該部分選擇 No,反之選擇 Yes 并提供理由;目前 IEEE 標(biāo)準(zhǔn)協(xié)會(huì)接受的付款方式包括郵寄美國(guó)銀行匯票、美元電匯及信用卡在線支付。如果需要提供形式發(fā)票,請(qǐng)選擇 please send a proforma invoice 之前的復(fù)選框。

完成以上內(nèi)容后在線提交即可。

4.3. 購買后檢查確認(rèn)

如果需要購買 public 地址,需要先申請(qǐng)一個(gè) IEEE 賬號(hào)。登入后點(diǎn)擊如下入口開始申請(qǐng)。通常 IEEE 收到款后的第二天,即可郵件收到一個(gè) Mac 地址的生成軟件,填上日期等信息后,會(huì)生成一個(gè) 6BYTE(48bits)的地址段,前 3BYTE 數(shù)據(jù)為公司名,后面 3BYTE是序號(hào)。

圖4.在更新的列表中檢查申請(qǐng)的地址

84af9d1a-a97f-11ee-8b88-92fbcf53809c.jpg


05小結(jié)

本文介紹了 BLE MAC 地址的類型,基于芯片 ID 生成靜態(tài)隨機(jī) MAC 地址,以及購買Public MAC 地址的流程。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Mac
    Mac
    +關(guān)注

    關(guān)注

    0

    文章

    1110

    瀏覽量

    51715
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4346

    瀏覽量

    62979
  • BLE
    BLE
    +關(guān)注

    關(guān)注

    12

    文章

    670

    瀏覽量

    59601
  • 藍(lán)牙設(shè)備
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    6784

原文標(biāo)題:實(shí)戰(zhàn)經(jīng)驗(yàn) | BLE 設(shè)備地址相關(guān)簡(jiǎn)介

文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    STM32WB55開發(fā)(2)----修改藍(lán)牙地址

    在嵌入式藍(lán)牙開發(fā)中,特別是針對(duì)STM32WB系列,修改或配置藍(lán)牙設(shè)備地址是常見的需求。不論是為了實(shí)現(xiàn)特定的測(cè)試、滿足隱私要求,還是為了區(qū)分開發(fā)和生產(chǎn)
    的頭像 發(fā)表于 12-01 15:42 ?957次閱讀
    STM32WB55開發(fā)(2)----修改<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>地址</b>

    【方案】藍(lán)牙MAC地址二維碼標(biāo)簽掃描打印方案

    )后期再錄入系統(tǒng),操作麻煩。 為了實(shí)現(xiàn)藍(lán)牙產(chǎn)品MAC地址的讀取及二維碼的打印,深圳市天工測(cè)控技術(shù)有限公司開發(fā)了包含藍(lán)牙MAC地址讀取設(shè)備、M
    發(fā)表于 08-17 17:24

    SKYLAB最新推出藍(lán)牙MAC地址掃描打印解決方案

    的MAC地址掃描打印解決方案。針對(duì)這一市場(chǎng)需求,深圳市天工測(cè)控技術(shù)有限公司開發(fā)了包含藍(lán)牙MAC地址讀取設(shè)備、MAC地址讀取軟件、MAC
    發(fā)表于 08-18 17:20

    模塊專家天工測(cè)控:藍(lán)牙模塊SKB360及藍(lán)牙MAC地址掃描打印解決方案

    、MAC地址管理軟件、二維碼生成軟件、二維碼打印驅(qū)動(dòng)的一整套解決方案。藍(lán)牙MAC地址讀取設(shè)備把低功耗藍(lán)牙
    發(fā)表于 08-21 16:04

    請(qǐng)問藍(lán)牙如何區(qū)分設(shè)備類型

    我想請(qǐng)問一下,在手機(jī)藍(lán)牙設(shè)備搜索時(shí),它可以識(shí)別設(shè)備類型(手機(jī)、電腦、耳機(jī)等)并且以圖標(biāo)顯示,大家知道手機(jī)是如何區(qū)分這些設(shè)備
    發(fā)表于 01-22 06:19

    請(qǐng)問藍(lán)牙分析儀軟件怎么篩選掃描設(shè)備地址?

    請(qǐng)問藍(lán)牙分析儀軟件怎么篩選掃描設(shè)備地址,包過濾里面沒有scanAddress的條件
    發(fā)表于 08-22 06:59

    如何設(shè)置靜態(tài)ip地址

    如何設(shè)置靜態(tài)ip地址    Q:一局域網(wǎng)劃分為數(shù)個(gè)子網(wǎng),10.10.1.X~10.10.16.X。子網(wǎng)掩碼為255.255.255.192,DHCP服務(wù)器為10.10.0.4.登錄Internet
    發(fā)表于 02-24 11:34 ?2789次閱讀

    藍(lán)牙MAC地址掃描打印解決方案

    藍(lán)牙MAC地址掃描打印解決方案
    發(fā)表于 08-22 11:26 ?12次下載

    (方案)藍(lán)牙MAC地址二維碼標(biāo)簽掃描打印方案

    每個(gè)藍(lán)牙產(chǎn)品(比如智能藍(lán)牙手環(huán))的 MAC 地址都不一樣,如果在藍(lán)牙產(chǎn)品的包裝盒上貼上對(duì)應(yīng)的由MAC地址
    發(fā)表于 08-28 16:48 ?15次下載

    藍(lán)牙MAC地址打印解決方案

    很多廠家為方便設(shè)備的管理,需要在產(chǎn)品的包裝盒或者產(chǎn)品外殼上貼藍(lán)牙MAC地址的二維碼或者條碼,更甚至是二維碼和條碼的組合。
    發(fā)表于 05-21 02:29 ?4646次閱讀

    藍(lán)牙方案:藍(lán)牙MAC地址轉(zhuǎn)二維碼打印解決方案

    ? ? ?針對(duì)用戶的需求:需要藍(lán)牙MAC地址藍(lán)牙產(chǎn)品一一對(duì)應(yīng),便于使用和管理藍(lán)牙設(shè)備,SKYLAB開發(fā)了包含
    的頭像 發(fā)表于 09-07 10:26 ?2851次閱讀

    干貨|藍(lán)牙MAC地址二維碼掃描打印解決方案的工作原理

    讀取軟件、MAC地址管理軟件、二維碼生成軟件、二維碼打印驅(qū)動(dòng)。藍(lán)牙MAC地址掃描打印硬件產(chǎn)品生產(chǎn)廠家:大致的流程是藍(lán)牙MAC
    的頭像 發(fā)表于 10-30 18:47 ?6253次閱讀

    SKYLAB藍(lán)牙方案|藍(lán)牙MAC地址二維碼打印解決方案

    MAC地址讀取設(shè)備放置在防信號(hào)干擾金屬盒中--安裝有MAC地址讀取軟件、MAC地址管理軟件、二維碼生成軟件、二維碼打印驅(qū)動(dòng)的電腦讀取MAC
    的頭像 發(fā)表于 08-24 18:47 ?1342次閱讀

    SKYLAB藍(lán)牙方案|藍(lán)牙MAC地址二維碼打印解決方案

    藍(lán)牙MAC地址二維碼打印方案,藍(lán)牙Mac地址的掃描、二維碼的打印,一套設(shè)備全搞定,終端用戶只要手機(jī)掃一掃,就能輕松完成綁定。
    的頭像 發(fā)表于 09-04 17:41 ?1079次閱讀
    SKYLAB<b class='flag-5'>藍(lán)牙</b>方案|<b class='flag-5'>藍(lán)牙</b>MAC<b class='flag-5'>地址</b>二維碼打印解決方案

    I2C總線設(shè)備地址設(shè)置方法

    通常是一個(gè)7位或10位的數(shù)字,用于標(biāo)識(shí)總線上的每個(gè)設(shè)備。在7位尋址模式下,地址范圍是0x00到0x7F,而在10位尋址模式下,地址范圍是0x000到0x3FF。I2C地址的最低位(LS
    的頭像 發(fā)表于 01-17 15:17 ?305次閱讀
    主站蜘蛛池模板: 模特视频一二三区 | 日本妈妈4 | 日本三级香港三级人妇99 | 欧美一区二区影院 | 黄视频在线免费看 | 91学院派女神 | 看全黄大片狐狸视频在线观看 | 国产精品777 | 亚洲大黑香蕉在线观看75 | 天天色天| 韩漫免费网站无遮挡羞羞漫画 | 狠狠色丁香久久综合五月 | 国产精品高清一区二区三区不卡 | 最近2018中文字幕免费视频 | 久久伊人成人网 | 色校园| 天天摸天天操免费播放小视频 | 美女被免费网站视频在线 | 成人在线精品 | 在线亚洲欧美性天天影院 | 黄色男人的天堂 | 久青草国产手机在线观 | 精品视频一区在线观看 | 欧美亚洲专区 | 色黄网站成年女人色毛片 | 日女人免费视频 | 久久天天躁狠狠躁夜夜免费观看 | 岛国大片在线 | 免费特黄视频 | 免费高清一级欧美片在线观看 | 123成人网| 毛片网站在线 | 天天翘夜夜洗澡天天做 | 中出丰满大乳中文字幕 | 日本大片免费观看视频 | 涩涩涩综合在线亚洲第一 | 老色皮| 1024手机最新手机在线 | 丁香五月网久久综合 | 亚欧成人中文字幕一区 | 特级一级毛片 |