基于智能IC卡的網(wǎng)絡(luò)數(shù)據(jù)安全保密系統(tǒng)
文章出處:http://coolbang.cn 作者: 人氣: 發(fā)表時(shí)間:2012年03月04日
一、 系統(tǒng)組成
智能IC卡是一種內(nèi)部具有存儲(chǔ)和處理能力的集成電路卡??ㄔ陧憫?yīng)外部激勵(lì)時(shí)其本身能修改或建立數(shù)據(jù)。它由微處理器(MCU)、只讀存儲(chǔ)器(ROM)、隨機(jī)存儲(chǔ)器 (RAM)、電可擦除可編程存儲(chǔ)器(EEPROM)、保密邏輯及輸入輸出單元組成。
智能IC卡實(shí)際上就是一個(gè)具有很高安全特性的單片機(jī),它的操作系統(tǒng)稱為COS,其主要功能是:
1、用戶信息管理: 在EEPROM里管理和處理用戶指定的文件。對(duì)文件系統(tǒng)的管理包括創(chuàng)建文件、選擇文件、寫(xiě)文件、讀文件和修改文件等
2、數(shù)據(jù)安全保護(hù): 對(duì)文件系統(tǒng)中文件的讀、寫(xiě),都受預(yù)先定義的訪問(wèn)屬性的保護(hù)。未經(jīng)授權(quán)的文件讀寫(xiě)操作不能進(jìn)行。對(duì)文件的安全保護(hù)措施包括系統(tǒng)認(rèn)證、PIN認(rèn)證以及數(shù)據(jù)加密和解密。
3、卡和讀卡器之間的通信管理: 卡的接收/發(fā)送給讀卡器的信息具備了安全的防盜和防破壞能力。
智能IC卡網(wǎng)絡(luò)數(shù)據(jù)安全保密系統(tǒng)是一個(gè)集智能IC卡技術(shù)、數(shù)據(jù)加密技術(shù)、數(shù)字簽名技術(shù)以及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)于一體的集成化系統(tǒng)。它充分利用了智能IC卡的安全特性,設(shè)計(jì)了多種安全保護(hù)措施,能夠?qū)?yīng)用系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行最嚴(yán)密的保護(hù)。
智能IC卡網(wǎng)絡(luò)數(shù)據(jù)安全保密系統(tǒng)由計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)(應(yīng)用系統(tǒng))、讀卡器、密鑰卡、操作卡和卡操作接口組成。
1、 計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)
計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)是整個(gè)系統(tǒng)保護(hù)的對(duì)象。網(wǎng)絡(luò)采用C/S結(jié)構(gòu)。特殊數(shù)據(jù)庫(kù)存放在網(wǎng)絡(luò)中心的數(shù)據(jù)庫(kù)服務(wù)器里,分布在各個(gè)地方的工作站可以向服務(wù)器請(qǐng)求數(shù)據(jù)查詢、統(tǒng)計(jì)、更改和處理等服務(wù)。而在請(qǐng)求服務(wù)的同時(shí),操作人員必須使用存有個(gè)人信息、訪問(wèn)權(quán)限的智能IC卡(定義為操作卡),服務(wù)器端經(jīng)過(guò)對(duì)操作員的安全認(rèn)證后,才能提供相應(yīng)的服務(wù)。
2、 讀卡器
智能IC卡讀卡器是對(duì)IC卡進(jìn)行讀寫(xiě)操作的設(shè)備,它的基本功能是完成對(duì)卡的讀寫(xiě)操作和進(jìn)行數(shù)據(jù)處理。它可以是獨(dú)立的設(shè)備,通過(guò)接口與計(jì)算機(jī)連接,也可以作為一個(gè)部件,嵌入到計(jì)算機(jī)系統(tǒng)中。它可以獨(dú)立實(shí)現(xiàn)讀寫(xiě)、顯示、數(shù)據(jù)處理等功能,也可以與計(jì)算機(jī)或其它系統(tǒng)聯(lián)合完成對(duì)卡的操作。把讀卡器操作指令加載于應(yīng)用系統(tǒng)程序中,即可實(shí)現(xiàn)主計(jì)算機(jī)對(duì)讀卡器以及IC卡進(jìn)行操作控制。
本系統(tǒng)設(shè)計(jì)的讀卡器,其安全管理模塊由可插拔的智能IC卡實(shí)現(xiàn)。這個(gè)卡定義為密鑰卡,因?yàn)槊荑€卡中存儲(chǔ)著系統(tǒng)的密鑰。這樣設(shè)計(jì)的特點(diǎn)是:讀卡器的安全功能由密鑰卡實(shí)現(xiàn);保護(hù)密鑰卡而達(dá)到保護(hù)讀卡器的目的;只有在插入密鑰卡的情況下,讀卡器才能工作。
讀卡器的其它組成部件包括卡座、通信接口、顯示單元和按鍵及控制裝置等。完成的任務(wù)主要有卡的認(rèn)證、讀寫(xiě)、信息處理存儲(chǔ)、控制及通信等。
3、 密鑰卡
密鑰卡是本系統(tǒng)中安插在讀卡器中的一個(gè)安全組件。它的第一個(gè)作用是對(duì)讀卡器進(jìn)行保護(hù),是讀卡器上的一個(gè)組成部分,讀卡器上如果不插密鑰卡,就不可能對(duì)卡進(jìn)行操作;第二個(gè)作用是對(duì)操作卡進(jìn)行合法性認(rèn)證;第三個(gè)作用是記錄操作卡的操作使用信息。
密鑰卡內(nèi)的公有文件包括:
STCF(安全測(cè)試控制文件) 描述本系統(tǒng)操作的安全保護(hù)文件。
ATR(復(fù)位應(yīng)答文件) 對(duì)卡與外界通信進(jìn)行描述,并指出卡的類型
SKF(密鑰文件) 存放密鑰文件
RSK(隨機(jī)數(shù)文件) 存放隨機(jī)數(shù)種子文件
4、 操作卡
操作卡保存有多種有關(guān)持卡人的基本信息??▋?nèi)除了設(shè)有與密鑰卡公有文件相同的文件外,還設(shè)有以下幾個(gè)文件:
基本信息文件 存儲(chǔ)持卡人的基本信息。在發(fā)卡時(shí),將持卡人信息記錄在卡內(nèi)。這些信息包括姓名、工作單位、卡號(hào)、卡編號(hào)、有效期限、操作權(quán)限和口令等。
操作記錄文件:記錄卡的使用操作情況。
權(quán)限控制文件:保存持卡人對(duì)數(shù)據(jù)或程序的操作權(quán)限。操作權(quán)限包括中心通卡、分中心通卡和站點(diǎn)卡
安全控制文件:保存卡的安全數(shù)據(jù)和定義卡的安全屬性
5、 應(yīng)用程序接口
本系統(tǒng)通過(guò)提供有限的卡操作命令實(shí)現(xiàn)與被保護(hù)的應(yīng)用系統(tǒng)的連。這些命令包括選擇文件、讀卡、寫(xiě)卡、更改記錄、更改口令和加密/解密等。
二、 系統(tǒng)的安全機(jī)制
1、 智能IC卡的安全特性
智能IC卡具有最嚴(yán)密的安全保密措施。它的安全性體現(xiàn)在從生產(chǎn)到銷毀卡的整個(gè)生命周期中。
生產(chǎn)中的安全性:卡芯片是在非常嚴(yán)密的環(huán)境中生產(chǎn)的,生產(chǎn)中確保不會(huì)泄漏有關(guān)卡芯片的技術(shù)和工藝等資料。
傳輸中的安全性:卡從生產(chǎn)廠運(yùn)輸?shù)戒N售商或開(kāi)發(fā)商,最后到用戶,整個(gè)運(yùn)輸過(guò)程中都用卡的傳輸密鑰進(jìn)行保護(hù)??ㄔ诖娣牌陂g也使用同樣的保護(hù)措施。
發(fā)行中的安全性:卡發(fā)行時(shí)寫(xiě)入發(fā)行者的密鑰、特性描述以及持卡人的基本信息和個(gè)人認(rèn)證碼(PIN)
使用中的安全性:卡在使用的過(guò)程中要進(jìn)行內(nèi)部認(rèn)證和外部認(rèn)證,確??ê妥x卡器都是合法的;還要進(jìn)行PIN認(rèn)證,以確保持卡人的合法性。
銷毀中的安全性:智能IC卡可以多次發(fā)行使用,如果確定某張卡不再使用,要在安全的環(huán)境中將其銷毀,以免外流被非法使用。
2、 系統(tǒng)的安全保護(hù)
系統(tǒng)認(rèn)證:當(dāng)應(yīng)用系統(tǒng)啟動(dòng)時(shí),系統(tǒng)向讀卡器發(fā)出復(fù)位操作指令,通過(guò)讀卡器對(duì)密鑰卡上電,密鑰卡以ART(answer to reset)的方式返回10個(gè)字節(jié)數(shù)字。這些字節(jié)是在密鑰卡初始化時(shí)生成的,其中有3位標(biāo)志位,依據(jù)密鑰卡的類型寫(xiě)入不同的字母,系統(tǒng)會(huì)根據(jù)所接收的數(shù)據(jù)進(jìn)行判斷,確定密鑰卡是否插在正確的位置并且是合法的。插入操作卡后,讀卡器對(duì)它的操作主要由密鑰卡進(jìn)行。這個(gè)過(guò)程中,密鑰卡首先判斷有無(wú)操作卡插入,然后判斷操作卡的標(biāo)志位是否正確,最后判斷操作卡的類型是否正確。系統(tǒng)認(rèn)證確保所使用的操作卡和密鑰卡是合法的,而且使用正確。
C/R認(rèn)證:C/R認(rèn)證是讀卡器對(duì)操作卡的認(rèn)證。當(dāng)確認(rèn)已經(jīng)把操作卡正確地插入讀卡器后,進(jìn)行C/R認(rèn)證。它是檢查卡的合法性的一個(gè)過(guò)程。系統(tǒng)首先向密鑰卡發(fā)出獲得隨機(jī)數(shù)命令,向它獲取隨機(jī)數(shù),同時(shí)這些隨機(jī)數(shù)在密鑰卡中使用DES算法進(jìn)行加密。系統(tǒng)得到隨機(jī)數(shù)后,將它送到操作卡中加密,也使用DES算法,然后系統(tǒng)再將加密后的隨機(jī)數(shù)送回密鑰卡中與密鑰卡中加密的隨機(jī)數(shù)進(jìn)行比較,如果兩者相同,證明操作卡合法,密鑰卡與用戶卡匹配。反之,說(shuō)明操作卡不合法。C/R認(rèn)證能夠進(jìn)一步確保操作卡的合法性,拒絕非法操作卡的入侵,保證了系統(tǒng)的安全性。
PIN認(rèn)證:C/R認(rèn)證通過(guò)后,對(duì)操作卡的合法性沒(méi)有懷疑。下一步進(jìn)行PIN認(rèn)證,首先持卡人從讀卡器輸入口令,然后由卡判別輸入的口令是否和本身注冊(cè)時(shí)的口令一致。如果一致,說(shuō)明卡的使用者是合法的持卡人;否則,判定持卡人非法,拒絕對(duì)卡進(jìn)一步的操作,同時(shí)給出提示,鎖定應(yīng)用系統(tǒng),使操作者無(wú)法對(duì)應(yīng)用系統(tǒng)進(jìn)行操作,從而保護(hù)了應(yīng)用系統(tǒng)的安全。
操作卡和密鑰卡都需要通過(guò)PIN認(rèn)證。每次開(kāi)機(jī)時(shí),使用密鑰卡進(jìn)行管理員PIN認(rèn)證;每次操作時(shí),使用操作卡只進(jìn)行操作員PIN認(rèn)證。
數(shù)據(jù)加密:由于所要保護(hù)的應(yīng)用系統(tǒng)的數(shù)據(jù)都具有安全保密的要求,特別是在網(wǎng)絡(luò)上傳輸數(shù)據(jù)時(shí),如果不對(duì)數(shù)據(jù)進(jìn)行加密,容易被第三方截獲,會(huì)造成數(shù)據(jù)泄密或者非法篡改。所以在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)必須經(jīng)過(guò)加密處理。本系統(tǒng)中使用的加密算法是DES。密鑰分別保存在與每個(gè)站點(diǎn)以及服務(wù)器相連的讀卡器密鑰卡文件里。
支持?jǐn)?shù)字簽名技術(shù):本系統(tǒng)支持?jǐn)?shù)字簽名技術(shù)。由于數(shù)字簽名有不可偽造和不可否認(rèn)的特性,因此在應(yīng)用系統(tǒng)進(jìn)行數(shù)據(jù)傳輸時(shí),可以使用數(shù)字簽名技術(shù)進(jìn)行數(shù)據(jù)傳遞,在很大程度上提高系統(tǒng)的安全性和抗攻擊能力。數(shù)字簽名技術(shù)使用RSA算法。本系統(tǒng)在操作卡上設(shè)有密鑰文件,保存持卡人的私鑰、服務(wù)器端的公鑰,在服務(wù)器上建立存放操作員公鑰的數(shù)據(jù)庫(kù),用于實(shí)現(xiàn)數(shù)字簽名。