Nordic 藍牙技術聯盟 藍牙5.4 PAwR ESL 電子貨架標籤

藍牙5.4駕到 解密PAwR週期性廣播技術(1)

2023-06-05
藍牙核心規範逐代更新,於2023年初推出的「藍牙5.4」為最新版本。新版規範加入具回應的週期性廣播(PAwR)技術,並提供廣播資料加密方式及其他額外功能,將進一步擴展藍牙技術應用範疇,例如極具發展潛力的電子貨架標籤(ESL)。

藍牙技術聯盟(Bluetooth SIG)終於導入藍牙核心規範5.4版(Bluetooth 5.4),為藍牙產品帶來一系列出色的新功能,取得重大優勢。其中兩項主要改進功能為具回應功能的週期性廣播(Periodic Advertising with Responses, PAwR),以及加密廣播資料(Encrypted Advertising Data)。這兩項新功能互相配合,能夠在星狀拓樸結構中的數千個超低功耗端節點(End Node)中實現非連接式、雙向和安全通訊。

電子貨架標籤設定檔(Electronic Shelf Label Profile, ESL profile)與這些技術息息相關,事實上,ESL正是PAwR和加密廣播資料的第一個標準化用例。該規範目前仍處於草案階段,但預計很快就會獲得採用。該設定檔可為ESL用例提供標準,預計藍牙的應用和生態系統將在不久的將來迅速擴大。

通常,PAwR和加密廣播資料適用於以大量裝置傳輸少量資料的應用,這些裝置忍受更長的延遲以換取更長的電池續航力,例如不需要立即回應或監測非動態系統的大規模感測器網路。

定期廣播和回應

以往低功耗藍牙技術無法在非連接式通訊模式下實現雙向的應用資料通訊,但現在PAwR可以實現這一點,為其主要優勢。

為了解釋其運作模式,本文將使用廣播器(Broadcaster)和接收器(Observer)名稱進行說明。我們熟知的廣播功能,即是資料由廣播器發送,再由接收器掃描接收。PAwR的新功能是將廣播資料切分成定時依據間隔發送的小封包,接收器可以精確地與之同步,並且做出回應。資料由多個PAwR子事件(Subevent)組成的PAwR事件(Event)發送。每個接收器可以同步到一個或多個子事件,並且同步時,接收器僅在這些特定定時間隔中主動接收(圖1)。

圖1 PAwR運作模式

雙向通訊在子事件中實現。廣播器從子事件的起初開始傳輸資料,接著相隔一個回應間隔後,接收器將發送回應。回應的排程程序在應用層處理。

這項解決方案能夠具備高效率,全賴接收器僅掃描特定子事件的能力,使得終端節點(接收器)可以只在極短的特定時間間隔內進行掃描,為這款解決方案帶來出色功耗。

PAwR的另一項功能是建立ACL連接,因為子事件可能包含連接請求。有了這項功能,裝置就不必遵循傳統的連接方式進行額外的掃描和廣告。事實上,這沒有意義,因為這些裝置已經可以同步通訊了。在某些情況下可能需要進行ACL連接,例如,由於僅能透過PAwR傳輸少量資料,在需要傳輸更多資料的時候,裝置可以設置ACL連接。

加密的廣播資料

雖然PAwR實現了對於可擴展性和超低功耗的要求,但所有現代物聯網系統都必須滿足一個關鍵要求,即安全性。ESL接入點和裝置之間的資料交換必須加密,以保持機密性、避免竄改並確保網路安全。

在藍牙5.4版之前,並沒有標準化的廣播資料加密方式。這樣的定義只存在於針對連接導向的通訊模式中。由於ESL應用的大多數資料交換都透過PAwR完成,因此有必要增添加密廣播資料的功能。這裡介紹了一種標準化的方法,用於加密廣播中的資料,以及共享密鑰材料,其為資料加密的必需品。值得注意的是,加密廣播資料不僅可以透過PAwR完成,也可以使用其他廣播傳輸方法。

該功能允許透過添加稱為加密廣播資料(類型0×31)的新AD類型,對給定廣播封包上全部或僅單一子集的有效負載進行加密,該類型包含所有需要加密的AD字段(AD field)。這表示廣播封包的有效負載在概念上將如圖2所示。

圖2 廣播封包的有效負載概念圖

廣播資料0(Advertisement Data 0)包含了加密的AD 1~3,接著是未加密的AD 4和AD 5,這提供了靈活性,並使一些非關鍵的廣播資料保持開放,以供任何接收器進行解釋(Interpret),例如,AD類型0×01(標誌)或0×09(完整的本地名稱)。

在兩個裝置之間共享加密資料,將會要求它們具有共享密鑰,用於加密和解密資料。為此,可以選擇將稱為加密資料密鑰材料的新GATT特徵作為通用存取設定檔(Generic Access Profile, GAP)服務的一部分包含在內。連接的GATT用戶端可以藉由加密和經過身分驗證的鏈接讀取此特徵,接著允許透過廣播來交換加密資料。

藍牙5.4駕到 解密PAwR週期性廣播技術(1)

藍牙5.4駕到 解密PAwR週期性廣播技術(2)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!