• 沒有找到結果。

藍牙 V 2.1 安全協定-SECURE SIMPLE PAIRING

4.1 協定流程

Bluetooth SIG 於 2007 年 7 月 26 日提出 V2.1 新標準 [19],在安全性方面提出新的 配對方式 Secure Simple Pairing(圖 16) 以解決舊版 Pairing 現有的問題 (例如:離線 字典攻擊、中間人攻擊),主要的改變是不需輸入 PIN 碼,由使用者進行視覺數字比對 來進行鑑別,並可整合其它通訊技術如 NFC(Near Field Communication),也能與之前 版本的藍牙裝置互相通訊。

圖 16 Secure Simple Pairing [20]

第一階段交換公開金鑰:雙方裝置交換彼此的裝置位址與連線能力,以辨識對方與了解

圖 17 交換公開金鑰 [20]

第二階段鑑別 I:驗證雙方於第一階段交換的公開金鑰(gX, gY)與此階段交換的亂數(Na,

Nb)皆傳送無誤。此階段依驗證方式的不同,可分為下列四種模式:

(1) Numeric Comparison 模式(圖 18)

適用於雙方裝置均具有六位數字的顯示能力,並能輸入是與否的情況,如:手機和 PC 連線。運作方式為雙方先各自產生亂數(裝置 A 產生 NA,裝置 B 產生 NB);接下 來裝置 B 產生驗證值 Cb,並傳給裝置 A;雙方並交換彼此的亂數,裝置 A 自行計算出 驗證值與收到的 Cb 比對,若不相同則拒絕連線,若相同則雙方裝置各計算出六位數字 的視覺比對碼(Va, Vb),供使用者作自視比對,若 Va = Vb 則完成此階段的鑑別。

優點:

1. 在許多未具唯一命名的裝置時,使用者亦可確認裝置間正確鏈結。

2. 解決中間人攻擊的問題。

3. 惡意的第三者即使看見展示數字,也無法從解密獲利。

4. 適用於安全性需求高的環境。

圖 18 鑑別 I -Numeric Comparison 模式 [20]

(2)Just Works 模式

此方法跟 Numeric Comparison 流程類似,不過至少有一方裝置沒有展示六碼數字的 能力也沒有鍵盤輸入能力,如:行動電話跟耳機連線),可防止竊聽,但無法避免中間 人攻擊,因此適用於對安全需求不高的環境。

(3)Out of Band 模式(圖 19)

為了提升連線的安全性,鑑別過程整合藍牙無線頻道之外不同特性的 OOB(Out of Band)頻道(例如:NFC),此頻道要能抵抗猜測、中間人攻擊等。運作流程為以 OOB 頻道傳送關鍵的安全資訊(如藍牙裝置位址、亂數、驗證值)後,雙方再進行驗證。

圖 19 鑑別 I - Out of Band 模式 [20]

(4)Passkey Entry 模式(圖 20)

適用於一方裝置具有輸入能力,但無顯示的能力(假設為裝置 A);另一裝置則具 有顯示能力(假設為裝置 B)(例如:藍牙鍵盤和 PC 連線),適用於安全需求為較低的環 境。運作的流程為裝置 B 先隨機產生亂數 rb 並顯示於裝置上,供使用者看並輸入裝置 A(ra),此十進位之 6 位數轉成二進位的 20 位元,接下來各自分 20 次,每次雙方各取 出一位元(rai,rbi),並與第一階段交換的公開金鑰(PKa,PKb)和自行產生的亂數(Nai,

Nbi)計算驗證值(Cai,Cbi),並交換驗證值(Cai,Cbi)與亂數(Nai,Nbi),進行驗 證。

圖 20 鑑別 I - Passkey Entry 模式 [20]

第三階段鑑別 II:確認雙方裝置是否完整成功的交換資訊。(圖 21)

圖 21 鑑別 II [20]

雙方裝置以前面產生或交換的資訊,各自產生確認值(Ea,Eb)並交換,以驗證雙 方共享的資訊之正確性。

第四階段產生鏈結金鑰:雙方將前面三個階段中所得到的參數(DHkey 、亂數值、藍 牙裝置位址)作為輸入,經由雜湊函數 f2,各自計算出鏈結金鑰 LK。(圖 22)

圖 22 產生鏈結金鑰 [20]

第五階段加密:加密的方式與過去舊標準 Pairing 的方式相同。此階段將會產生加密金 鑰 KE,是由長度 128-bits 的加密亂數、長度 96-bits 的密文偏移值(產生方式為上次鑑 別方式所創造或是由雙方藍牙裝置位址聯繫在一起)與第四階段所產生的鏈結金鑰當作 輸入參數,經由 SAFER+的演算法 E3 產生加密金鑰。(見圖 23)

圖 23 產生加密金鑰 [20]

4.2 問題

 中間人攻擊

在 Secure Simple Pairing 第一階段中,使用橢圓 Diffie-Hellman 金鑰交換,雖然能有 效 的 防 止 被 動 竊 聽 攻 擊 , 但 是 Diffie-Hellman 加 密 法 沒 有 提 供 任 何 的 身 分 驗 證 機制,可能遭受中間人攻擊。

 使用者操作錯誤

根據 Nokia 研究中心針 Secure Simple Pairing - Numeric Comparison 模式可用性分析 測試 [45],利用雙方裝置計算出六碼數字並顯示在雙方螢幕上,由使用者來比對螢幕上 制-Secure Simple Pairing 的 Numeric Comparison Protocol 進行深入研究,因為此 protocol 安全性較高、無需其它的輔助通訊技術,並可適用於一般具有顯示、輸入能力的付款裝 置,如:手機、PDA、POS 終端機。我們提出輕便的改善機制,讓使用者能沿用原有熟 悉的 PIN(Personal identification number)的輸入方式,來達到雙向鑑別與傳輸的機密性,

並保護消費者的隱私,此外藉由精簡驗證步驟有效提升運作效率。

流程說明

我們在藍牙 Secure Simple Pairing 第一階段的交換公開金鑰中,增加以雙方共享的 PIN 之雜湊函數值作保護。1.首先雙方裝置先交換彼此的藍牙裝置位址、輸出入能力;

對(圖 24)。我們所提出的協定目標為適用於 Numeric Comparison、Just Work 模式。

圖 24 我們提出的 Secure Simple Pairing 改善協定

接下來跳過 Secure Simple pairing 的第二、三階段,直接建立鏈結金鑰(L K)。(圖 25)

圖 25 我們提出的 Secure Simple Pairing 改善協定-鏈結金鑰產生 比較分析

藍牙安全機制最弱的一環在兩個裝置初次連接的配對過程(Pairing)[46],在高安 全需求的付款應用上,手機與商店 POS 多為初次連接,因此我們提出的新協定主要在 改善配對的過程,以提高其安全性。

由於在現有的藍牙 V2.1 新標準安全機制 Secure Simple Pairing 中,Diffie-Hellman 金鑰交換沒有鑑別使用者身分的能力,以使用者目視比對的方式來避免 DH 金鑰交換可 能遭受的中間人攻擊,然而這種方式可能因為使用者沒看清楚或不了解程序而誤按確認 鍵,這種需要使用者比對而造成失誤的狀況也常出現在網路釣魚(類似的網址)、網路

拍賣截標信(類似的帳號)、軟體安裝(未看清楚條文即按下一步)等。

因此,為了提高配對的安全性與精簡流程,我們沿用使用者過去熟悉的 Pairing 中 操作方式輸入共享秘密值 PIN 碼在高安全需求的付款環境,多為初次連接,可以在每次 付款輸入不同的 PIN,使 PIN 的輸入不必擔心商家得知,也無需額外的保護,而並藉其 保護公開金鑰(gX,gY)的傳送,以避免中間人攻擊,同時也可省去第二、三階段重覆驗 證所需時間,雙方裝置若未能輸入相同的 PIN,或未能正確交換參數,則無法通過驗證 值 Cb 的確認,中斷連線。

相關文件