發(fā)布時(shí)間:2010/05/26
摘要:由于用戶的結(jié)算信息和公用儀表的計(jì)量信息都是通過用戶手中的IC卡進(jìn)行傳輸?shù)模脩舻姆植加质且粋€十分復(fù)雜、分散的群體,因此如何保證用戶卡中傳遞信息的安全性已經(jīng)變成一個十分重要的問題。這個問題解決的好壞,將直接影響IC卡表以及預(yù)付費(fèi)管理系統(tǒng)的推廣使用。
隨著“一戶一表”工程的實(shí)施,利用IC卡作為傳輸介質(zhì),采用預(yù)付費(fèi)的收費(fèi)方式對公用事業(yè)儀表進(jìn)行抄表收費(fèi)管理的模式得到了迅速的發(fā)展,并且逐漸從物業(yè)小區(qū)管理方式發(fā)展到行業(yè)或城市管理方式。由于用戶的結(jié)算信息和公用儀表的計(jì)量信息都是通過用戶手中的IC卡進(jìn)行傳輸?shù)?,用戶的分布又是一個十分復(fù)雜、分散的群體,因此如何保證用戶卡中傳遞信息的安全性已經(jīng)變成一個十分重要的問題。這個問題解決的好壞,將直接影響IC卡表以及預(yù)付費(fèi)管理系統(tǒng)的推廣使用。
一、智能卡表的安全性內(nèi)容
在智能卡表和預(yù)付費(fèi)管理系統(tǒng)之間,信息的傳遞是通過IC卡作為傳輸介質(zhì)進(jìn)行的,安全性的主要內(nèi)容是如何保證IC卡中信息的安全性,與此相關(guān),還要保證不能用非法的手段獲得或者修改智能卡表中的數(shù)據(jù)信息。
對IC卡和智能卡表中的信息安全性保護(hù)主要體現(xiàn)在對數(shù)據(jù)信息進(jìn)行非法攻擊的防護(hù)上,常用的攻擊行為有以下幾種:
1、截取信道中的信息:通過非法設(shè)備以及相關(guān)技術(shù)手段讀取IC卡中存儲的數(shù)據(jù)信息以及在IC卡與智能卡表進(jìn)行操作時(shí)截取數(shù)據(jù)交換信息。見下圖所示:
左圖所示為非法設(shè)備直接從IC卡讀取數(shù)據(jù)信息,右圖所示為非法設(shè)備在IC卡與合法設(shè)備在進(jìn)行數(shù)據(jù)交換時(shí)對數(shù)據(jù)信息進(jìn)行截獲。這兩種攻擊方式是不可控制的,并且也是最常用的攻擊方式。
2、破譯IC卡中的信息:攻擊者在采用上述兩種方式截獲數(shù)據(jù)信息后,根據(jù)IC卡中數(shù)據(jù)信息的變化情況以及數(shù)據(jù)交換過程中數(shù)據(jù)流的變化,對數(shù)據(jù)進(jìn)行分析,從而確認(rèn)IC卡中所有數(shù)據(jù)的含義以及數(shù)據(jù)流的變化規(guī)則,完成對IC卡以及智能卡表中數(shù)據(jù)信息的破譯,進(jìn)而達(dá)到非法改變數(shù)據(jù)信息的目的。
3、復(fù)現(xiàn)IC卡中的數(shù)據(jù)信息:攻擊者在截獲數(shù)據(jù)信息后,并不對數(shù)據(jù)進(jìn)行分析破譯,而是記錄在特定操作中數(shù)據(jù)流的變化情況,在需要時(shí),將記錄的數(shù)據(jù)流直接復(fù)制發(fā)送到IC卡或智能卡表,從而達(dá)到非法改變數(shù)據(jù)信息的目的。這種情況經(jīng)常發(fā)生在當(dāng)IC卡與智能卡表之間進(jìn)行數(shù)據(jù)交換采用加密處理的時(shí)候。
在上述所描述的攻擊方法中,第一種方式是手段,由于IC卡和智能卡表全部由用戶掌握和使用,管理方無法做到實(shí)現(xiàn)實(shí)時(shí)跟蹤,因此在現(xiàn)實(shí)中是無法阻止攻擊者進(jìn)行這種嘗試的。第二、三種方式是數(shù)據(jù)分析處理,是攻擊的目的所在。如果對IC卡與智能卡表之間的數(shù)據(jù)進(jìn)行安全保護(hù)處理或者采用較為簡單的安全保護(hù),攻擊是非常容易達(dá)到效果的。為此在設(shè)計(jì)智能卡表及其相關(guān)管理系統(tǒng)時(shí),必須對數(shù)據(jù)的安全性給予高度的重視,從某種角度來說,一個智能卡表及系統(tǒng)設(shè)計(jì)是否成功,關(guān)鍵在于其對數(shù)據(jù)安全性的處理。
二、智能卡表及系統(tǒng)數(shù)據(jù)存儲的安全性分析
由于在智能卡表及系統(tǒng)中,IC卡是數(shù)據(jù)存儲和傳遞的載體,因此IC卡的數(shù)據(jù)存儲安全性是需要著重予以考慮的。
在智能卡表及系統(tǒng)中所使用的都是集成電路卡(IC卡),(從數(shù)據(jù)容量和安全性的角度以及讀寫設(shè)備的成本考慮,沒有使用磁條卡作為信息載體的,因此磁卡表的名稱是不準(zhǔn)確的。)集成電路卡的核心是采用集成電路芯片來進(jìn)行數(shù)據(jù)的存儲。目前廣泛使用的IC卡使用的是電可擦除數(shù)據(jù)存儲芯片(EEPROM),這種芯片讀寫速度快,掉電后數(shù)據(jù)可以長期保存,并且數(shù)據(jù)可以反復(fù)進(jìn)行擦寫。應(yīng)該說,正是由于EEPROM芯片的出現(xiàn)才帶來了IC卡技術(shù)的廣泛應(yīng)用。
IC卡根據(jù)對EEPROM讀寫處理方式的不同,可以分為存儲卡、邏輯加密卡以及智能卡(CPU卡)三大類,它們具有不同的數(shù)據(jù)保護(hù)安全級別。
1、存儲卡:存儲卡是直接將EEPROM芯片封裝在卡片上,外部設(shè)備可以直接訪問到EEPROM中的任何一個單元,如下圖所示:
由于存儲卡中只有EEPROM一個芯片,因此IC卡的對外接口實(shí)際上就是EEPROM的對外接口,這樣外部讀寫設(shè)備就可以十分方便地對EEPROM進(jìn)行數(shù)據(jù)讀寫操作,作為IC卡而言,無法對合法或非法的讀寫設(shè)備進(jìn)行判斷和識別,非常容易進(jìn)行攻擊。存儲卡只是用來對數(shù)據(jù)進(jìn)行存儲,而無法對數(shù)據(jù)進(jìn)行安全性保護(hù),因此存儲卡不具備數(shù)據(jù)安全性保護(hù)措施,數(shù)據(jù)安全級別很低。
2、邏輯加密卡:邏輯加密卡是在將EEPROM芯片封裝在卡片上的同時(shí),將一組硬件邏輯電路也封裝在卡片上,外部讀寫設(shè)備必須通過硬件邏輯電路的判斷后才能訪問到EEPROM中的任何一個單元,如下圖所示:
由于在IC卡中存在一組硬件邏輯加密電路,EEPROM芯片的接口并不直接對外,在初始狀態(tài)IC卡芯片中的數(shù)據(jù)開關(guān)處于斷開狀態(tài)。外部讀寫設(shè)備在訪問IC卡芯片中的EEPROM單元之前,必須首先發(fā)一組數(shù)據(jù)給硬件邏輯電路,硬件邏輯電路在判斷數(shù)據(jù)的合法性后(即密碼校驗(yàn)),才決定是否將IC卡內(nèi)的開關(guān)閉合。只有密碼校驗(yàn)正確后,硬件邏輯電路才能將開關(guān)閉合,這時(shí)外部讀寫設(shè)備才能對EEPROM中的數(shù)據(jù)進(jìn)行讀寫操作,這樣邏輯加密卡就可以對外部合法和非法的讀寫設(shè)備進(jìn)行識別判斷。通過這種方式,邏輯加密卡對內(nèi)部EEPROM中的數(shù)據(jù)進(jìn)行了安全性保護(hù),因此邏輯加密卡具備數(shù)據(jù)安全性保護(hù)措施。
但邏輯加密卡的安全性級別并不是很高,有兩種攻擊方式可以對其進(jìn)行攻擊測試,一種是當(dāng)合法讀寫設(shè)備在發(fā)送數(shù)據(jù)進(jìn)行密碼校驗(yàn)時(shí),非法設(shè)備可以跟蹤到校驗(yàn)密碼,這樣今后非法設(shè)備通過重放也可以通過密碼校驗(yàn),從而對邏輯加密卡進(jìn)行數(shù)據(jù)攻擊;另一種方法是非法設(shè)備在跟蹤到合法設(shè)備已經(jīng)通過邏輯加密卡的密碼校驗(yàn),IC卡內(nèi)部開關(guān)閉合后,再通過數(shù)據(jù)線對邏輯加密卡中EEPROM的數(shù)據(jù)進(jìn)行攻擊破壞。因此邏輯加密卡雖然具備一定的數(shù)據(jù)安全性保護(hù),但它的安全級別依然較低,具備一定的手段仍然是可以攻破的。
造成這種情況出現(xiàn)的原因是因?yàn)檫壿嫾用芸ㄖ械陌踩允且蕾囈唤M硬件邏輯電路,這種電路只有判斷能力,但不具備分析處理能力,因此不能及時(shí)發(fā)現(xiàn)和處理變化的環(huán)境。
3、智能卡(CPU卡):智能卡是在將EEPROM芯片封裝在卡片上的同時(shí),將微處理器芯片(CPU)也封裝在卡片上,外部讀寫設(shè)備只能通過CPU與IC卡內(nèi)的EEPROM進(jìn)行數(shù)據(jù)交換,在任何情況下都不能再訪問到EEPROM中的任何一個單元,如下圖所示:
由于在智能卡中封裝了微處理器芯片(CPU),這樣EEPROM的數(shù)據(jù)接口在任何情況下都不會與IC卡的對外數(shù)據(jù)線相連接。外部讀寫設(shè)備在與智能卡進(jìn)行數(shù)據(jù)交換時(shí),首先必須發(fā)指令給CPU,由CPU根據(jù)其內(nèi)部ROM中存儲的卡片操作系統(tǒng)(COS)對指令進(jìn)行解釋,并進(jìn)行分析判斷,在確認(rèn)讀寫設(shè)備的合法性后,允許外部讀寫設(shè)備與智能卡建立連接。之后的數(shù)據(jù)操作仍然要由外部讀寫設(shè)備發(fā)出相應(yīng)的指令,并且CPU對指令進(jìn)行正確解釋后,允許外部讀寫設(shè)備和智能卡中的數(shù)據(jù)存儲區(qū)(RAM)進(jìn)行數(shù)據(jù)交換,數(shù)據(jù)交換成功后,在CPU的控制下,利用智能卡中的內(nèi)部數(shù)據(jù)總線,再將內(nèi)部RAM中的數(shù)據(jù)與EEPROM中的數(shù)據(jù)進(jìn)行交換??梢钥吹?,在數(shù)據(jù)處理過程中,外部讀寫設(shè)備只是和CPU打交道,同時(shí)數(shù)據(jù)交換也只能和數(shù)據(jù)緩存區(qū)RAM進(jìn)行,根本無法實(shí)現(xiàn)對智能卡中EEPROM數(shù)據(jù)的直接訪問。這樣就實(shí)現(xiàn)了對智能卡EEPROM中數(shù)據(jù)的安全保護(hù),因此智能卡也具備數(shù)據(jù)安全性保護(hù)措施。
與邏輯加密卡相比,由于智能卡內(nèi)部具有CPU芯片,在具有數(shù)據(jù)判斷能力的同時(shí),也具備了數(shù)據(jù)分析處理能力,因此智能卡可以隨時(shí)區(qū)別合法和非法讀寫設(shè)備,并且由于有了CPU芯片,具備數(shù)據(jù)運(yùn)算能力,還可以對數(shù)據(jù)進(jìn)行加密解密處理,因此具備非常高的安全性,其安全級別很高。
從對攻擊方式的分析可以看到,保證IC卡內(nèi)數(shù)據(jù)的安全性是最基本的要求,如果非法設(shè)備可以容易地與IC卡進(jìn)行數(shù)據(jù)信息交換,進(jìn)而進(jìn)行分析處理,智能卡表及系統(tǒng)就不再具備任何安全性。因此提高IC卡的安全性是設(shè)計(jì)好的智能卡表及系統(tǒng)的關(guān)鍵。
根據(jù)上面的分析,如果智能卡表及系統(tǒng)對數(shù)據(jù)的安全性非常重視,應(yīng)該選用安全級別高的IC卡,從發(fā)展趨勢看,應(yīng)盡量選用智能卡作為智能卡表信息傳遞的介質(zhì)。
在設(shè)計(jì)實(shí)際的智能卡表系統(tǒng)時(shí),安全性的指標(biāo)也是相對而言的。如果設(shè)計(jì)的是單機(jī)版的物業(yè)小區(qū)管理系統(tǒng),對安全性的要求不高,為簡化設(shè)計(jì)和降低成本,可以選用邏輯加密卡或存儲卡;但如果是行業(yè)管理部門或在大中城市推廣智能卡管理系統(tǒng),數(shù)據(jù)的安全性將是一個非常重要的指標(biāo),這時(shí)應(yīng)該首先選擇智能卡做為管理系統(tǒng)的數(shù)據(jù)信息載體。
三、智能卡表及系統(tǒng)數(shù)據(jù)交換的安全性分析
根據(jù)上面的分析,在智能卡表及系統(tǒng)中選擇使用智能卡可以有效保證數(shù)據(jù)存儲的安全性,但即使這樣也只是阻止了非法讀寫設(shè)備直接對IC卡中數(shù)據(jù)的操作,并不能保證在IC卡與智能卡表或合法讀寫器之間進(jìn)行數(shù)據(jù)交換時(shí)不被非法設(shè)備跟蹤破譯,要解決這種類型的非法攻擊,還需要采用安全認(rèn)證以及對數(shù)據(jù)在傳輸時(shí)進(jìn)行線路保護(hù)處理。
1、安全認(rèn)證:安全認(rèn)證用來在讀寫設(shè)備(包括智能卡表)與IC卡進(jìn)行數(shù)據(jù)交換之前,首先進(jìn)行必要的安全認(rèn)證,用來確認(rèn)雙方身份的合法性。只有雙方身份確認(rèn)后,才能建立相互之間聯(lián)系的通道進(jìn)行必要的數(shù)據(jù)交換。如果雙方不能確認(rèn)身份的合法性,則不能建立進(jìn)行數(shù)據(jù)交換的通道。
安全認(rèn)證有兩種方式可以實(shí)現(xiàn),一是通過密碼進(jìn)行安全認(rèn)證;一是通過密鑰進(jìn)行安全認(rèn)證。
密碼認(rèn)證的過程如下所示:
①讀寫設(shè)備發(fā)送密碼到IC卡
——————————→
②IC卡進(jìn)行密碼比較
③IC卡將比較結(jié)果返回讀寫設(shè)備
←————————————
IC卡在進(jìn)行密碼比較時(shí),如果讀寫設(shè)備發(fā)來的密碼與IC卡中存儲的密碼相同,IC卡向讀寫設(shè)備返回密碼認(rèn)證通過的結(jié)果,并打開IC卡數(shù)據(jù)與外部進(jìn)行交換的權(quán)限。如果密碼不同,則返回錯誤結(jié)果,IC卡數(shù)據(jù)與外部進(jìn)行交換的權(quán)限被關(guān)閉。
在邏輯加密卡中使用的就是這種認(rèn)證方式,同時(shí)智能卡中的口令密鑰認(rèn)證也是采用這種方式進(jìn)行的。密碼認(rèn)證的方式比較簡單實(shí)用,是一種常用的安全認(rèn)證手段。其最大的缺陷在于進(jìn)行認(rèn)證的密碼在線路上進(jìn)行了傳輸,如果非法設(shè)備跟蹤到密碼認(rèn)證的第一步,就比較容易破譯整個密碼認(rèn)證過程,這樣非法設(shè)備也能夠正確地與IC卡進(jìn)行密碼認(rèn)證,從而能夠非法與IC卡進(jìn)行數(shù)據(jù)交換,而這個過程是無法阻止的。
密鑰認(rèn)證的過程如下所示:
①讀寫設(shè)備向IC卡發(fā)取隨機(jī)數(shù)指令
—————————————→
②IC卡向讀寫設(shè)備返回隨機(jī)數(shù)
←———————————
③讀寫設(shè)備用存儲的密鑰對隨機(jī)數(shù)進(jìn)行加密運(yùn)算,生成加密結(jié)果即密碼
④讀寫設(shè)備發(fā)送密碼到IC卡
——————————→
⑤IC卡用存儲的密鑰和隨機(jī)數(shù)進(jìn)行加密運(yùn)算,并將生成的密碼和收到的密碼進(jìn)行比較
⑥IC卡將比較結(jié)果返回讀寫設(shè)備
←————————————
與密碼認(rèn)證過程相比,密鑰認(rèn)證增加了兩個內(nèi)容,一是引入了密鑰的概念,增加了加密運(yùn)算過程;二是增加了產(chǎn)生隨機(jī)數(shù)的過程,有了這兩個過程,就可以有效地保證密鑰認(rèn)證過程被非法跟蹤后,仍然能夠保證認(rèn)證過程的安全性。
密鑰是事先設(shè)置到讀寫設(shè)備和IC卡中的,它在認(rèn)證過程中只參與運(yùn)算,但不在線路中進(jìn)行傳輸,這樣非法跟蹤是不可能截獲到密鑰的;由于有隨機(jī)數(shù)的概念,這樣每次進(jìn)行密鑰認(rèn)證雖然使用的是相同的密鑰,但經(jīng)過加密運(yùn)算產(chǎn)生的密碼也是隨機(jī)的,無規(guī)律可循的,這樣非法跟蹤截獲到的密碼無法在下次進(jìn)行認(rèn)證時(shí)使用,只要不知道密鑰,非法設(shè)備就無法再向密碼認(rèn)證那樣模擬安全認(rèn)證的過程,也就不能非法與IC卡進(jìn)行數(shù)據(jù)交換。
在這里值得特別指出的是加密運(yùn)算過程也是保證密鑰認(rèn)證安全性的一個非常重要的環(huán)節(jié),加密運(yùn)算的算法必須滿足下面的條件:
已知加密因子和密鑰可以計(jì)算出加密結(jié)果,即數(shù)據(jù)加密運(yùn)算;
已知加密結(jié)果和密鑰可以推出加密因子,即數(shù)據(jù)解密運(yùn)算;
已知加密因子和加密結(jié)果不可以推出密鑰;
加密算法應(yīng)該是公開的算法。
這樣的加密算法就可以有效地保證密鑰的安全性。同時(shí)需要特別指出的是在智能卡表及系統(tǒng)中采用的算法一定應(yīng)該是國際上公認(rèn)的具備上述特征的算法,只有采用這樣的算法,才能夠有效保證安全性,同時(shí)也能使智能卡表及系統(tǒng)具有兼容性和互換性。目前有些廠家采用自己編制的算法進(jìn)行密鑰安全認(rèn)證存在兩大隱患:一是算法未經(jīng)過權(quán)威部門認(rèn)證,算法的安全級別實(shí)際上很低,其安全性完全取決于算法不公開,但即使不公開的算法也很容易被非法攻擊攻破,因?yàn)閺S家的技術(shù)人員往往只是表具設(shè)計(jì)專家,而不是密碼安全算法專家,而進(jìn)行非法攻擊的人員卻往往是密碼算法專家;二是由于安全原因算法不公開,系統(tǒng)的安全性就永遠(yuǎn)和廠家的人員有關(guān),而真正關(guān)心系統(tǒng)運(yùn)行安全的行業(yè)管理部門卻不能掌握核心安全,同時(shí)也無法實(shí)現(xiàn)在系統(tǒng)中使用多家的智能卡表,從而對產(chǎn)品招標(biāo)選型帶來不方便,在某種程度上,不安全的算法可能反而保護(hù)了產(chǎn)品性能并不高的廠家,因?yàn)榧词拱l(fā)現(xiàn)智能卡表產(chǎn)品有性能缺陷,使用者卻由于安全算法的原因不能更換更好廠家的產(chǎn)品。
目前國際上公認(rèn)的加密算法主要分為兩大類型:一種是對稱加密算法,這種算法的加密密鑰和解密密鑰是相同的,代表性的算法有DES算法和3�DES算法;另一種算法是非對稱算法,這種算法的加密密鑰和解密密鑰是不相同的,代表性的算法有RSA算法。從安全性的角度來講,不對稱算法的安全性更高,但計(jì)算過程也更復(fù)雜,一般都應(yīng)用在需要對身份進(jìn)行合法性認(rèn)證,防偽認(rèn)證等場合;對稱性算法也具有很高的安全性,算法相對比較簡單使用,目前金融應(yīng)用,公用事業(yè)應(yīng)用基本上都采用對稱算法。
在智能卡表應(yīng)用中,如果是非金融的單機(jī)系統(tǒng),采用DES算法比較適宜;如果考慮今后和金融系統(tǒng)聯(lián)網(wǎng)收費(fèi),則應(yīng)滿足銀行規(guī)范使用3�DES算法。
2、數(shù)據(jù)的線路保護(hù):線路保護(hù)是指讀寫設(shè)備和IC卡通過安全認(rèn)證后進(jìn)行數(shù)據(jù)交換傳輸時(shí),要保證數(shù)據(jù)在線路上被非法設(shè)備截獲后不能進(jìn)行破譯、竄改和重放復(fù)現(xiàn)。數(shù)據(jù)的線路保護(hù)分為兩個層面:一是數(shù)據(jù)的機(jī)密性保護(hù);一是數(shù)據(jù)的完整性保護(hù)。
數(shù)據(jù)的機(jī)密性保護(hù)是指對要傳輸?shù)臄?shù)據(jù)用密鑰進(jìn)行加密處理后再進(jìn)行傳輸。這樣在線路中傳輸?shù)臄?shù)據(jù)為密文數(shù)據(jù),非法設(shè)備截獲后無法進(jìn)行數(shù)據(jù)破譯和分析,接收方收到密文數(shù)據(jù)后再用解密密鑰進(jìn)行解密重新得到明文數(shù)據(jù)。
數(shù)據(jù)的完整性保護(hù)是指在要傳輸?shù)臄?shù)據(jù)后面附加校驗(yàn)碼字節(jié),發(fā)送方將發(fā)送數(shù)據(jù)與線路保護(hù)密鑰以及隨機(jī)數(shù)進(jìn)行運(yùn)算,生成校驗(yàn)碼后進(jìn)行數(shù)據(jù)傳輸,接收方接收到數(shù)據(jù)后用相同的密鑰對接收到的數(shù)據(jù)重新計(jì)算校驗(yàn)碼并與接收到的校驗(yàn)碼進(jìn)行比較,相同則接收數(shù)據(jù)有效,否則數(shù)據(jù)無效。由于密鑰不在線路上傳輸,這樣非法設(shè)備截獲數(shù)據(jù)后如果對數(shù)據(jù)進(jìn)行竄改,必然會導(dǎo)致校驗(yàn)碼不正確,接收方就能夠拒絕接受錯誤數(shù)據(jù)。
由于校驗(yàn)碼在運(yùn)算過程中也有隨機(jī)數(shù)參與運(yùn)算,因此即使采用相同的密鑰,將相同的數(shù)據(jù)進(jìn)行多次傳輸,每次形成的校驗(yàn)碼也是各不相同的,這樣非法設(shè)備即使截獲了某一次的合理數(shù)據(jù),也不能在進(jìn)行二次傳輸,這就有效避免了非法設(shè)備對數(shù)據(jù)進(jìn)行重放復(fù)現(xiàn)。
綜合運(yùn)用上述兩種方法,就可以有效地保證數(shù)據(jù)在傳輸過程中的安全性,也就最終實(shí)現(xiàn)了在公開的傳輸介質(zhì)或信道上,采用公開的加密算法進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)能夠是有效的,正確的,安全的。與此相對應(yīng),數(shù)據(jù)傳輸?shù)陌踩圆皇且揽總鬏斝诺赖姆忾]性,加密算法的不公開性來保證的。
綜合上面所討論的內(nèi)容,在智能卡表及系統(tǒng)中要具備高的數(shù)據(jù)安全性,一是要采用安全級別高的IC卡即智能卡(CPU卡)作為傳輸介質(zhì),二是利用密鑰和相應(yīng)的加密算法進(jìn)行數(shù)據(jù)的安全認(rèn)證和有效傳輸。
四、智能卡表中實(shí)現(xiàn)安全性的工具�嵌入式安全模塊(ESAM模塊)
根據(jù)上面的論述,智能卡表在廣義上也是一種IC卡讀寫設(shè)備,要保證智能卡表以及所使用IC卡中數(shù)據(jù)的安全性,除了使用智能卡外,必須能夠?qū)崿F(xiàn)智能卡表和智能卡之間能夠進(jìn)行數(shù)據(jù)的安全認(rèn)證和線路保護(hù)處理,也就是要求智能卡表必須具有存儲密鑰以及進(jìn)行加密運(yùn)算的能力。
普通卡表的邏輯組成如下所示:
卡表中的核心器件是微處理器(CPU),通過編制合理的程序,CPU可以對計(jì)量數(shù)據(jù)進(jìn)行計(jì)算、存儲、顯示、與IC卡進(jìn)行數(shù)據(jù)交換以及對相關(guān)數(shù)據(jù)進(jìn)行分析判斷控制執(zhí)行機(jī)構(gòu)。因此CPU的主要作用是完成卡表的數(shù)據(jù)處理流程以及實(shí)現(xiàn)設(shè)計(jì)好的功能。
從安全性的角度來講,智能卡表除了要完成上述內(nèi)容以外,還要完成密鑰存儲和加密運(yùn)算功能,這樣就產(chǎn)生了一個不可調(diào)和的矛盾。
由于CPU中的程序是需要生產(chǎn)廠家(或第三方)的設(shè)計(jì)人員進(jìn)行設(shè)計(jì)的,這部分程序的功能和處理流程可以是由智能卡表使用方提出需求而委托設(shè)計(jì)的,需求本身也是公開的。但如果要在CPU的控制下存儲密鑰和進(jìn)行加密運(yùn)算,出于安全性的考慮,密鑰值應(yīng)該是不公開的,因此這部分程序編制是不能委托開發(fā)設(shè)計(jì)的,必須掌握在智能卡表使用方手里。換言之,智能卡表的功能、數(shù)據(jù)操作流程和數(shù)據(jù)的安全性是兩個不同的概念,應(yīng)該由不同的功能模塊去完成。解決這個問題最好的方案就是在智能卡表中增加嵌入式安全模塊(ESAM模塊)。
增加了ESAM安全模塊的智能卡表的邏輯組成如下所示:
與普通卡表相比,只是將數(shù)據(jù)存儲模塊換成ESAM模塊,這樣智能卡表中的CPU還是完成原來普通卡表的功能,程序也完全可以由生產(chǎn)廠家(或第三方)根據(jù)用戶需求進(jìn)行靈活編制,當(dāng)需要進(jìn)行數(shù)據(jù)交換時(shí),由CPU啟動ESAM模塊與智能卡完成安全認(rèn)證以及數(shù)據(jù)保護(hù)工作,密鑰和智能卡表數(shù)據(jù)都保存在ESAM模塊中。ESAM模塊可以由智能卡表的使用方發(fā)行,安裝在智能卡表中即可,這樣密鑰和算法的安全性和CPU程序就可以完全分開,整個智能卡表及系統(tǒng)的安全性就全部由使用方掌握。同時(shí)使用方?jīng)]有由于安全的原因限制生產(chǎn)方靈活設(shè)計(jì)不同功能的智能卡表,廠家可以隨時(shí)對智能卡表中的程序進(jìn)行修改和升級而不影響使用方的數(shù)據(jù)安全性。
從技術(shù)發(fā)展的角度來看,由于半導(dǎo)體芯片技術(shù)的發(fā)展,CPU芯片升級速度很快,新的CPU芯片不斷出現(xiàn),芯片的價(jià)格也在不斷調(diào)整,生產(chǎn)廠家必然要使用性能價(jià)格比最高的芯片,如果將數(shù)據(jù)安全性的實(shí)現(xiàn)和CPU芯片聯(lián)系在一起,一旦一個系統(tǒng)使用后,即使有更好的芯片出現(xiàn),出于安全性的考慮,也無法再對CPU以及程序進(jìn)行調(diào)整,也不利于新技術(shù)的推廣使用。如果使用ESAM安全模塊,這個問題也可以得到解決。
使用ESAM安全模塊還有一個優(yōu)勢,由于加密算法都有一定的安全等級,用匯編語言來編制加密算法要占用CPU較大的程序空間,這樣生產(chǎn)廠家就必須選用容量較大的CPU芯片,這樣也會造成智能卡表成本的增加。目前大量使用的智能卡表都是針對居民的,屬于民用產(chǎn)品,對價(jià)格的要求應(yīng)該是比較嚴(yán)格的。
綜合上面的因素,在智能卡表中使用ESAM模塊技術(shù)可以實(shí)現(xiàn)智能卡表數(shù)據(jù)流程和數(shù)據(jù)安全的分離,便于實(shí)現(xiàn)產(chǎn)品的兼容和升級,可以不斷推動技術(shù)進(jìn)步,是規(guī)范智能卡表技術(shù)發(fā)展的有效技術(shù)手段。
銷 售:0371-56160852 56160853(國內(nèi))
Sales :+86-371-56160869(Overseas)
供 應(yīng):0371-56160827
售 后:15639253870 15639256972
15639258730 0371-56160944 67985258
招 聘:0371-56160813 56160815
辦 公:0371-56160808
投 訴:0371-56160812 m13949815205@163.com
網(wǎng) 址:http://www.yuehuima.vip
E-mail :info@suntront.com(國內(nèi))
export@suntront.com(Overseas)
地 址:鄭州國家級高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)紅松路252號
官方微信