藍牙簡單配對(Simple Pairing)協議及代碼流程簡述


kangear注:
文章轉自:http://blog.csdn.net/myxmu/article/details/12217135
原文把圖給搞丟了。可是文章太好了,這個時候我就發揮多年的Google和人脈關系依據鏈接找到了,補上圖(這個圖是MTK內部用圖)。

[DESCRIPTION]
 
在BT2.1及之后版本號,藍牙協議有在傳統的password配對(PIN Code Pairing)之外,新增一種簡單配對(Simple Pairing)的方式。

這樣的新的配對方式操作更為簡單、安全性也更強。眼下市面上大部分藍牙設備均已支持簡單配對方式。

從用戶角度上看。傳統的PIN Code Pairing 須要兩方藍牙設備 輸入配對password(假設兩方都有輸入設備的話),而簡單配對則僅僅須要 兩方確認屏幕上的6位隨機數同樣就可以(假設兩方都有屏幕)。
以下對簡單配對的協議及代碼流程進行簡單描寫敘述。
 
 
[SOLUTION]
 

1、  在藍牙規范中實用下圖描寫敘述簡單配對過程

a)         上方第一行描寫敘述了三種配對過程,分別為Bluetooth In Band, OOB Discovery only, OOB Discovery and Authentication。這里OOB是指Out of Band。即非藍牙的傳輸方式。如NFC

b)         左邊第一列從Device DiscoveryAuthentication 是配對的四個步驟,各自是搜索設備、建立物理連接、各自產生數據加密所需的Link key、鑒權(即確認兩方Link key正確)。

c)         Bluetooth In Band是手機最經常使用的藍牙配對方式

                         i.              通過Inquiry (藍牙術語,規范中有具體定義怎樣通過Inquiry操作來找到周圍設備)來搜索周圍設備。

                       ii.              再通過Page(和Inquiry一樣。也是專有術語)建立藍牙物理連接(ACL Link

                      iii.              產生Link key的過程比較深入,這里暫不深入討論,有興趣可研究BLUETOOTH SPECIFICATION Version 4.0 – Volume 3 – Part H - Security Manager Specification

                      iv.              兩方各自產生Link key后,可通過三種方式進行鑒權Numeric Compare (6位隨機password比較)Passkey Entry (一方顯示數據,還有一方輸入password)Just Works (不鑒權,直接使用)

d)         OOB Discovery only & OOB Discovery and Authentication 這兩種方式是使用非藍牙的傳輸方式來完畢Bluetooth In Band的部分步驟,如通過NFC來交換兩方藍牙地址和Link key。以達到“不用配對”的用戶體驗。

 

        

 

2、  Mediatek Android的配對代碼流程

下述代碼流程基於ALPS.JB2.MP完畢,其它版本號大同小異,也能夠參考。在這里僅將流程圖貼出,如有想進一步了解的地方。可提交eService討論,以便我們依據客戶需求改進。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM