資料介紹
在本文的Part1中,我介紹了啟動配置承載層(provisioning bearer layer)和藍牙mesh啟動配置流程的前三個階段:發送Beacon信號、邀請和交換公共密鑰。
啟動配置流程包括五個階段:
1、發送Beacon信號
2、邀請
3、交換公共密鑰
4、認證
5、啟動配置數據分發
1、發送Beacon信號:如果未經啟動配置的設備支持PB-ADV承載層,則其作為未經啟動配置設備Beacon進行廣播;如果使用的是PB-GATT承載層,則發送可連接的廣播數據包。這就向啟動配置設備(Provisioner)表明未經啟動配置的設備已做好準備,可進入啟動配置流程。
2、邀請:啟動配置設備(Provisioner)邀請未經啟動配置的設備發送自身啟動配置功能信息。
3、交換公共密鑰:在此階段,根據未經啟動配置設備的功能,啟動配置設備(Provisioner)選擇合適的驗證方法,并通知未經啟動配置設備將要采取的方式。之后,啟動配置設備和未經啟動配置設備會創建一個橢圓曲線公私密鑰對并交換公鑰。然后,每臺設備使用自己的私鑰和對等設備的公鑰來計算對稱密鑰,即ECDHSecret。該密鑰用于驗證對端設備的身份。
本文將介紹啟動配置流程的后兩個階段:認證和啟動配置數據分發。
4、認證
在此步驟中,啟動配置設備使用所選的驗證方法,對未經啟動配置設備進行驗證。有三種可用的驗證方法(OOB, Out-Of-Band):輸出OOB(Output OOB)、輸入OOB(Input OOB)、以及靜態OOB(Static OOB)或無OOB(No OOB)。
輸出帶外(Output OOB)
若選擇的是輸出帶外(Output OOB)驗證方法,則未經啟動配置設備會選擇一個隨機數,并通過與其功能兼容的方式輸出該數字。例如,如果未經啟動配置設備是一個燈泡,則它能夠閃爍指定的次數。如果設備具有LCD屏幕,則可以將隨機數顯示為多位數值。啟動配置設備(Provisioner)的用戶需要輸入觀察到的數字,??驗證未經啟動配置的設備。輸出帶外驗證方法的工作流程如圖1所示。
圖1 – 通過輸出OOB進行驗證
輸入隨機數后,啟動配置設備(Provisioner)生成并檢查確認值。無論采用哪種驗證方式,整個驗證步驟中的檢查確認值(check confirmation value)計算方式都是相同的,請繼續往下看。
輸入帶外(Input OOB)
輸入帶外(Input OOB)驗證方法與輸出帶外(Output OOB)方法類似,但設備的角色相反。啟動配置設備(Provisioner)生成并顯示隨機數,然后提示用戶采取適當的操作,將隨機數輸入未經啟動配置的設備。以照明開關為例,用戶可以在一定時間內數次按下按鈕,以這種形式輸入隨機數。
與輸出帶外驗證(Output OOB)相比,輸入帶外(Input OOB)方法需要發送一個附加的啟動配置協議PDU。在完成認證操作之后,未經啟動配置的設備向啟動配置設備發送一個啟動配置輸入完成PDU(Provisioning Input Complete PDU),通知其隨機數已輸入完成。隨后進入到執行檢查確認值操作的步驟。
圖 2 – 通過輸入OOB進行驗證
靜態帶外(Static OOB) 或無帶外(No OOB)
在輸入帶外或輸出帶外都不可用的情況下,啟動配置設備(Provisioner)和未經啟動配置的設備可采用靜態帶外(Static OOB)驗證或無帶外(No OOB)驗證:采用靜態OOB信息;或靜態OOB信息不可用,直接以數值0代替。在此情況下,啟動配置設備和未經啟動配置的設備各自生成一個隨機數,然后進行檢查確認值操作。
檢查確認值(Check Confirmation Value)
無論采用何種驗證方法,都會進行確認值生成和檢查。根據藍牙mesh規格,啟動配置設備(Provisioner) 和未經啟動配置設備應分別計算確認值。這兩個值被稱為ConfirmationProvisioner和ConfirmationDevice。這兩個值的計算都使用一系列相同的函數,不同之處僅在于所使用的隨機數輸入。
藍牙mesh規格中有兩頁關于計算過程的內容說明。確認值生成函數需要8個參數,參數值來自啟動配置(Provisioning)過程中的后續步驟。可參考規格的5.4.2.4認證和5.4.1啟動配置PDU部分,了解更多詳細信息。(詳見: )
表1列出了用于確認值生成及其來源的參數。
表1 - 用于確認值計算的參數
讓我們來看看用于確認值生成的算法。圖3是一個流程圖,其中包括了幾輪AES-CMAC和SALT生成[1]。該流程圖對于ConfirmationProvisioner和ConfirmationDevice值均適用。
如果由啟動配置設備(Provisioner)執行輸入,則從一個名為RandomProvisioner的值開始(下圖中以藍色表示),并生成ConfirmationProvisioner值。
如果由未經啟動配置設備執行輸入,則從一個名為RandomDevice的值開始(下圖中以綠色表示),并生成ConfirmationDevice值。
圖 3 – 確認值生成圖
確認值檢查(Confirmation Value Check)
當確認值生成之后,兩臺設備就會進行交換,并且都會檢查接收值的完整性。圖4表示確認值檢查的過程。
確認過程的開始就是啟動配置設備(Provisioner)將其隨機數RandomProvisioner發送到未經啟動配置的設備。未經啟動配置設備使用它來重新計算確認值,并與之前接收的確認值進行比較,進行驗證。
圖 4 –確認值檢查
如果由未經啟動配置設備計算所得的確認值與接收到的ConfirmationProvisioner不匹配
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 大型藍牙mesh網絡中的消息傳輸方式資料下載
- 藍牙mesh網絡安全性的基本概念資料下載
- 藍牙mesh的“啟動配置(provisioning)”的安全流程資料下載
- 藍牙mesh網絡的低功耗資料下載
- 藍牙mesh網絡如何構成?資料下載
- 藍牙mesh網絡拓撲背后的基本概念資料下載
- 藍牙mesh的5個常見誤解資料下載
- 藍牙Mesh應用選擇芯片資料下載
- 說一說藍牙mesh代理服務資料下載
- 藍牙mesh網絡的啟動配置協議資料下載
- 藍牙mesh網絡為何適合商業照明資料下載
- 藍牙Mesh網絡的通信原理資料下載
- 藍牙Mesh網絡的隱私與安全資料下載
- 藍牙Mesh網絡的構成要素資料下載
- 如何向藍牙Mesh網絡添加、刪除新的設備資料下載
- 藍牙網關和藍牙mesh網關區別 3120次閱讀
- 泰凌微電子藍牙Mesh設備固件更新功能和測試說明(一) 2151次閱讀
- 藍牙Mesh的四種基本特性 853次閱讀
- 藍牙mesh互傳及藍牙單向穿透的功能測試 2074次閱讀
- AURIX? TC3xx啟動流程詳解 3758次閱讀
- 泰凌微電子自研藍牙Mesh解密分析工具操作說明 3187次閱讀
- Zynq在非JTAG模式下的啟動配置流程 1379次閱讀
- 藍牙資格認證流程說明 4516次閱讀
- 藍牙傳輸的原理和藍牙Mesh技術如何輔助物聯網的說明 8693次閱讀
- 通過藍牙Mesh網絡連接一切 1.3w次閱讀
- 關于Xilinx FPGA的配置流程淺析 4961次閱讀
- 對Mesh網絡的支持使低功耗藍牙技術進入更加廣泛的應用領域 7270次閱讀
- 介紹如何通過藍牙Mesh的配置文件實現熱門的實時定位服務 5293次閱讀
- 藍牙Mesh的廣泛應用指日可待 4254次閱讀
- Xilinx FPGA 嵌入式系統程序引導和啟動的流程 2301次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論