Nov 2, 2007

Temporal Key Integrity Protocol (TKIP) vs MIC(Message Integrity Code)

Temporal Key Integrity Protocol (TKIP)
在 802.11 中,「有線等位私密」(Wired Equivalent Privacy,WEP) 加密是選擇性使用的。WPA 的加密必須使用 TKIP。TKIP 會將 WEP 取代為比 WEP 演算法更強固,並且使用現有無線裝置上計算功能來執行加密操作的全新加密演算法。

TKIP主要的設計是相容於原本802.11的硬體產品,透過韌體與軟體升級來提高加密的安全,一樣是透過RC4加密,但是可以讓每個封包都提供不同的加密Key值。原本的WEP加密使用24-bit的IV值,目前的TKIP使用48-bit IV值。如此大幅減低IV值重複的問題。因此WPA可以說是基於802.1x與EAP提供更高的使用者認證與安全能力,雖然目前的WPA TKIP已經比起原本單純的WEP加密更為可靠,但這只是目前WPA第一個版本的方案,在未來WPA的版本中,將進一步採用AES做為傳輸加密機制。

WPA TKIP相較於過去WEP加密,主要的不同在於過去是直接把收到的WEP Key作為加密的運算值,可是WPA TKIP並不是如此,而是將所收到的Key值,重新運算出加密的金鑰,在透過計算出來的加密金鑰進行後續加密的動作。

目前的WPA 1.x TKIP 相較於原本的WEP加密機制,多了以下的能力。
.48-bits的IV值。
.TKIP Per-Packet Key加密機制 => 每個Packet都產生不同加密的Key 。
.MIC(MessageIntegrity Code) => 訊息完整性編碼機制。

Michael Algorithm
有了 802.11 和 WEP,就可以藉由 802.11 載入內容所附加且以 WEP 加密的 32 位元完整性檢查值 (Integrity Check Value,ICV),提供資料的完整性。雖然 ICV 已加密,但您還是可以使用密碼分析來變更加密內容中的位元,並更新加密的 ICV,而讓收件者偵測不到。

有了 WPA,Michael 方法就能指定新的演算法,使用現有無線裝置上的可用計算功能,來計算 8 位元組訊息完整性程式碼 (Message Integrity Code,MIC)。MIC 是放在 IEEE 802.11 框架資料部分和 4 位元組 ICV 之間。MIC 欄位會與框架資料及 ICV 一起加密。

Michael 也提供重送防護。IEEE 802.11 框架的新框架計數器可以協助防止重送攻擊。

MIC(Message Integrity Code)
除了產生Key的方式更為安全以外,還多了對於傳送封包完整性的確認,在目前的WPA中還加入了MIC(MessageIntegrity Code) 用來確認訊息完整性的編碼機制,透過在每一個封包的後面加入一個MIC值,來確認彼此封包的完整性,比起過去只單純的透過CRC值來確認封包的正確性,又提高了可靠度。

基本上MIC的運作機制是,送端在送出封包前,把未加密過的資料內容透過Michael演算法,求得一個64 bits的MIC值,對收端來說,把收到的封包解密後,依樣針對資料內容透過Michael演算法計算一次MIC值,如果一致就表示封包正確無誤,如果不一致,就表示封包在傳輸過程中發生錯誤。
Post a Comment