作者:藍牙技術聯盟Jason Marcel 隨著我們越來越深入物聯網(IoT)領域,無論是新技術還是現有的技術,對安全這一問題的關注從未停止過。如果用戶和提供商數據存在任何風險,那么靈活性、能源效率和互通性等優勢便無從談起。大多數技術都稱自己具有更高的安全性,那么細說到藍牙mesh網絡,它的安全性又體現在何處呢? 安全性是藍牙mesh網絡設計的核心,每個數據包都必須經過加密和驗證。對于大多數藍牙技術應用,您可以在開發產品時自定義網絡安全性,這在采用單一設備連接的情況下很常見。然而,由于藍牙mesh網絡建立在成千上萬臺設備間進行相互通信,因此要確保整體網絡的安全性,需要采取額外的措施和方法。 多層安全性 藍牙mesh的安全性能夠保護您的網絡,避免各層中可能遇到的各種威脅或問題,包括中繼攻擊(Replay attack)、中間人攻擊(Man-in-the-Middle attack)和垃圾桶攻擊(Trash Can attack)。中繼攻擊可通過正確使用序列號來防止;中間人攻擊可通過非對稱性加密來防止,比如在重要程序中采用的橢圓曲線Diffie-Hellman(ECDH)密鑰協議;來自廢棄設備的垃圾桶攻擊能通過在必要時刷新安全密鑰來防止。 藍牙mesh是唯一基于強制性安全密鑰構建的網絡拓撲結構,能夠在協議棧的多個層級上對網絡進行保護。 • 設備密鑰(DevKey)讓您擁有授權,能夠對節點進行啟動配置(provisioning)和配置,將設備添加到網絡。 • 藍牙特有的應用密鑰(AppKey)能夠保護與特定應用相關的消息,例如照明、物理安全、溫控等應用。 • 網絡密鑰(NetKey)適用于網絡上的所有消息,能讓節點(Node)之間安全地進行相互通信。 將潛在威脅列入黑名單 如果將節點從藍牙mesh網絡中移除,則設備及其包含的密鑰就無法發動攻擊。您可以將該節點添加到黑名單中,防止它在密鑰刷新時接收新的安全密鑰。這樣,從網絡中移除的包含舊安全密鑰的節點就不再是網絡成員,也不會構成威脅,無法用于發動垃圾桶攻擊(Trash Can attack)。 安全性是藍牙mesh網絡設計的核心,每個數據包都是經過加密和驗證的。 多方面的冗余 在中繼攻擊(Replay attack)中,竊聽設備會攔截并捕獲一條或多條中繼消息,然后用于轉發。這將會欺騙消息接收設備,讓它執行來自未授權設備的操作。常見的例子就是汽車的無鑰匙訪問系統,當認證序列被攔截時,這一訪問系統就被攻破了,然后通過消息的中繼就能訪問該車輛。 為防止中繼攻擊,藍牙mesh網絡使用兩類網絡PDU字段:序列號(SEQ)和IV索引。每次發布消息時,SEQ值都會遞增。如果消息的SEQ值小于或等于上一個有效消息的SEQ值,則節點會將消息丟棄,因為這則消息可能與中繼攻擊有關。同樣,消息中的IV索引值必須始終等于或大于它所收到的上一個有效消息。這種安全冗余可以提供更高水平的保護。 可靠、安全的連接 物聯網的迅速發展已成為不爭的事實。從Beacon到無線照明平臺,我們已經看到物聯網部署進入初始階段。為了推動物聯網解決方案的下一輪演進,可靠的、可擴展的、安全的無線連接需求至關重要。只有藍牙mesh能夠提供物聯網所需的工業級、政府級、多層級的安全性。 |