藍(lán)牙配對(duì)之——密鑰生成方法
在《藍(lán)牙配對(duì)之——配對(duì)特性交換》中,我們談到了低功耗(Low Energy,簡稱LE)的藍(lán)牙配對(duì)特性交換。配對(duì)特性交換讓連接的發(fā)起設(shè)備和響應(yīng)設(shè)備雙方都能夠獲悉彼此的配對(duì)特性。
可啟用的配對(duì)特性有:
OOB(Out-of-Band)數(shù)據(jù)標(biāo)志位
MITM(Man-in-the-Middle)標(biāo)志位
SC—低功耗安全連接(LE Secure ConnecTIon)標(biāo)志位
IO Cap—IO功能
完成特性交換之后,雙方設(shè)備就可以選擇下一階段所用的密鑰生成方法了。下方列表中是低功耗傳統(tǒng)配對(duì)(Legacy Pairing)和低功耗安全連接(LE Secure ConnecTIon)的密鑰生成方法。
低功耗傳統(tǒng)配對(duì):
直接連接(Just Works)
萬能鑰匙(Passkey Entry)
帶外數(shù)據(jù)(Out-of-Band,簡稱OOB)
低功耗安全連接,除了以上三種方法以外,還增添了一種新方法:
數(shù)值比較(Numeric Comparison)
操作流程(Workflow)
下面介紹一下選用設(shè)備的密鑰生成操作流程:
第1步:查看配對(duì)特性交換框架中的安全連接位。如果雙方的安全連接位都等于1,則采用低功耗安全連接,并進(jìn)入第2步。否則采用低功耗傳統(tǒng)配對(duì),并進(jìn)入第3步。
第2步:當(dāng)選用低功耗安全連接時(shí),發(fā)起設(shè)備和響應(yīng)設(shè)備應(yīng)遵循如下矩陣選擇配對(duì)方法:
“使用OOB”意為選擇Out-of-Band
“查看MITM”意為忽略“OOB”,查看MITM標(biāo)識(shí)
“使用IO功能”,進(jìn)入第4步,根據(jù)雙方設(shè)備的IO功能選擇密鑰生成方法
第3步:當(dāng)選用低功耗傳統(tǒng)配對(duì)(Legacy Pairing)時(shí),發(fā)起設(shè)備和響應(yīng)設(shè)備應(yīng)遵循如下矩陣選擇配對(duì)方法:
“使用OOB”意為選擇Out-of-Band
“查看MITM”意為忽略“OOB”,查看MITM標(biāo)識(shí)
“使用IO功能”,進(jìn)入第4步,根據(jù)雙方設(shè)備的IO功能選擇密鑰生成方法
第4步:以下是IO功能和密鑰生成方法的映射。根據(jù)下面這張圖表,發(fā)起設(shè)備和響應(yīng)設(shè)備雙方就能根據(jù)他們的配對(duì)特性找到適合的連接方法。
隨后,發(fā)起設(shè)備和響應(yīng)設(shè)備就能獲悉密鑰生成階段將要應(yīng)用的方法了。在后續(xù)的第三篇文章中,小編將繼續(xù)介紹如何通過使用密鑰輸入(Passkey Entry),在低功耗傳統(tǒng)配對(duì)中生成匹配密鑰。