IC卡數據加密算法在醫(yī)保系統(tǒng)中的應用
我們在《淺析IC卡數據加密算法》這篇文章中,具體介紹了一種基于DES算法的三重加密模式,并且分析了其安全性。今天這篇文章我們具體講一下該算法在醫(yī)保系統(tǒng)中的成功應用。
醫(yī)保系統(tǒng)IC卡中主要存儲的信息有:參保人的個人信息、醫(yī)保中心信息、參保人的個人賬戶金、統(tǒng)籌金、醫(yī)療記錄等。使用時,參保人除持有IC卡外,還必須有醫(yī)療保險證作為身份鑒別,讀寫卡操作發(fā)生在掛號和結算時??ǖ目诹钚r炇窃趹孟到y(tǒng)中完成的,用戶和IC卡之間沒有交互的校驗過程。

1 ?設計原則
根據醫(yī)保系統(tǒng)的特點,為切實有效地保護IC卡中的數據,保證IC卡在系統(tǒng)中的安全流通,設計原則如下:
(1)實行一卡一個口令。由于應用系統(tǒng)中使用的IC卡往往非常多。如果均用一個口令進行保護,那么破譯一張卡,就可以使整個系統(tǒng)處于癱瘓狀態(tài),其損失不可估量。為此,應該實行一張IC卡,一個保護口令,這樣可以提高IC卡系統(tǒng)口令保護的強度。然而真正實現一卡一口令有時是不可能的,因為IC卡中存儲口令的字節(jié)通常是有限的,這就限制了口令空間的大小。當IC卡的發(fā)行數量超過這個數時,實行一卡一個口令就不可能了。
(2)實行動態(tài)口令。根據一定的條件隨機動態(tài)地改變IC卡中的保護口令,可以使得應用系統(tǒng)的安全性得到進一步加強。比如,當IC卡的寫卡次數發(fā)生改變時,修改卡的口令,這款有增加破譯難度。
(3)數據加密。IC卡中的口令所提供的安全性非常有限。因此,對卡中數據進行加密存儲,可以更有效地保護卡中的信息。即使攻擊者突破口令保護而獲取了密文信息,如果沒有辦法破譯的話,也將毫無用處。因此,可以說對IC卡信息的保護,關鍵在于加密算法。加密算法的強度決定了IC卡系統(tǒng)的安全性。
2 安全系統(tǒng)的實現
根據設計原則,在實現時將重點放在對卡中信息的加密上,采用以改進的三重加密方法進行信息加密為主,其他有效安全措施為輔的安全方案,保證醫(yī)療保險IC卡系統(tǒng)的安全。采取的具體措施如下:
(1)將卡中保密的信息組成一個結構,用改進的三重加密算法加密,將密文存儲在卡中。在讀信息時,從卡中讀出密文,經解密后使用;在向卡中寫信息時,先校驗卡口令,然后加密信息并寫入。這樣,在系統(tǒng)與卡的通信中,信息均是以密文形式傳遞,保證了通信的安全。在密鑰的選取上,選取三個不同的密鑰;換位函數T采用對密文進行32位(4字節(jié))分組,然后循環(huán)左移一組,非常簡單。
(2)在用改進三重加密算法對信息加密時,取出含有保險編號、參保日期及寫卡次數的分組進行首輪DES加密的密文組合,從中取出兩個字節(jié)作為該卡的口令。這樣口令就會根據參保人的不同而不同,實現一卡一個口令。
(3)在執(zhí)行寫卡操作時,只要寫卡次數發(fā)生變化,則立即修改卡的口令,實現IC卡中的口令動態(tài)變化。
(4)在口令校驗前,檢查卡中的錯誤計數值是否與錯誤計數初值一樣,如果不一致說明有人正企圖對卡進行窮舉攻擊。
(5)在口令校驗后,執(zhí)行完寫操作便立即對卡下電,防止中途攔截。
(6)對應用系統(tǒng)進行嚴格的管理,嚴格授權,盡量避免內部安全漏洞的出現。
以上措施的實施,可以避免對卡的篡改、留用和非法復制,能有效防止對卡的窮舉分析和中途攔截,即使卡的口令被破獲,卡中信息被竊取,加密算法仍能保證信息的安全。
3 成功應用的實例
該文提出的加密算法安全可靠,簡單易行,安全策略考慮較為周密。在大連市某區(qū)醫(yī)療保險系統(tǒng)中改進型了實際應用。自從2000年5月1日應用至今,系統(tǒng)運行相當穩(wěn)定,未出現過安全問題,IC卡讀寫速度也非常快。

實際上,本文提出的加密模式雖然是在IC卡應用系統(tǒng)的背景下進行的,但是它顯然也適合于其他需要數據加密的情況,并且可以推廣到其他的分組加密算法中。



