智能卡安全數據傳輸組合模式過程
文章出處:http://www.nyfzw.net 作者:語馨 收編 人氣: 發表時間:2011年09月26日
組合模式過程表現了更高水平的安全性。APDU的數據部分不再作為明文傳送,而由加密的形式取代,其過程為鑒別模式過程的擴充。
在組合模式過程中,就像在鑒別模式過程中那樣,用加密校驗和保護的數據對象首先要填補成8字節的整倍 數并用CBC模式的DES算法加密,如圖1所示。在這項處理中,為了和T=0協議所需的相容性,略去了頭標。 如果期望也對頭標加密,則送給卡的命令就無法被識別,就必須使用T=0的ENVELOPE命令。用類字節中的一 位表明使用了安全通信,數據在經接口傳輸時是已經加了密的。由于接收方知道加密用的秘密密鑰,它可對 APDU解密,接收方可憑借重新計算在傳輸層的同一水平的附加的密碼校驗和以驗證解密的正確性。讀者在閱 讀圖1時,應注意圖中CLA,h和LDATA的改變(有或無“'’)。
當采用這一過程時,在I/O線上竊聽的攻擊者不可能發現在卡和終端的命令和應答中交換了那些數據。由于 使用了CBC模式的DES使這些字組都相互鏈接在一起,因而也不可能替換APDU中的一個加密字組,任何代換將立即引起接收方的注意。
關于加密算法,那些對鑒別模式過程的解釋也適用于此處。原則上,可使用任何字組加密算法。密鑰應當是動態的,就像在鑒別模式過程中那樣,對每一會話都使用導出密鑰。
考慮到安全性的優勢,普遍對所有APDU使用組合模式過程是值得推薦的。然而,安全性的增加伴隨著數據傳輸率的顯著降低。
圖1 用組合模式過程建立一命令APDU,情況3的命令(例如UPDATE BINARY)被用于此,頭標包括在加密校驗和(ccs)中,應答APDU可用類似方式建立(‘PB’作為填補字節的指示)
未保護的APDU和用組合模式過程保護的APDU二者之間的傳輸率的差別的良好近似是因子4。這樣鑒別模式過程和組合模式過程之間的速度差別就是因子2。于是,在每種情況下都要小心地檢查,以便斷定那些數據要用那種安全但費時的形式傳輸。