文 燕, 齊 蕾
(1.廣東省信息中心 廣東 廣州 510031;2.廣東工業(yè)大學(xué) 網(wǎng)絡(luò)信息與現(xiàn)代教育技術(shù)中心,廣東 廣州 510006)
門禁系統(tǒng),就是數(shù)字化的對人員出入進(jìn)行管理的智能化系統(tǒng),又稱為出入管理控制系統(tǒng)[1],是公司、銀行、工廠、軍械庫、生活小區(qū)等地方的出入口實(shí)現(xiàn)安全防范管理的有效保障。IC卡門禁系統(tǒng)具有安全、可靠、高效、靈活方便特點(diǎn),已成為了門禁系統(tǒng)的主流方式。目前市場上常用的IC卡主要是MIFARE 1卡,然而在2008年互聯(lián)網(wǎng)上公布了MIFARE 1卡密碼的破解的方法[2]。這就導(dǎo)致全球多達(dá)10億張的MIFARE 1 IC卡可以輕易被破解,也給我國帶來了了很多安防隱患,如:不法分子花費(fèi)極低的成本就可以對使用該芯片的各類門禁卡、“一卡通”進(jìn)行復(fù)制或者非法充值。為了保障居住區(qū)的安全,我國住建部積極推廣以CPU卡作為基本載體并滿足國密算法的密鑰管理體系的門禁系統(tǒng)。筆者提出了一種基于國密算法的非接觸式CPU智能卡的設(shè)計門禁系統(tǒng)的設(shè)計,可以有效克服MIFARE 1卡破解所帶來的難題。
文中的門禁系統(tǒng)采用的是以國密算法為基礎(chǔ)的非接觸式CPU卡技術(shù)。如圖1所示,門禁系統(tǒng)可以分為應(yīng)用系統(tǒng)和密鑰管理及發(fā)卡系統(tǒng)[3]。
1)應(yīng)用系統(tǒng) 應(yīng)用系統(tǒng)一般由門禁卡,門禁卡讀卡器和后臺管理系統(tǒng)構(gòu)成,通過設(shè)備內(nèi)的密碼模塊對系統(tǒng)提供密碼安全保護(hù)。
門禁卡內(nèi)的密碼模塊:用于門禁讀卡器或后臺管理系統(tǒng)對門禁卡進(jìn)行身份鑒別時(鑒別門禁卡是否合法)提供密碼服務(wù)。
門禁讀卡器/后臺管理系統(tǒng)內(nèi)的密碼模塊:用于對門禁卡進(jìn)行身份鑒別/安全報文傳輸時提供密碼服務(wù) (如密鑰分散、驗證鑒別碼等)。在門禁系統(tǒng)的具體方案設(shè)計時,應(yīng)在門禁讀卡器和后臺管理系統(tǒng)內(nèi)配用密碼模塊。
2)密鑰管理及發(fā)卡系統(tǒng) 密鑰管理及卡發(fā)系統(tǒng)的功能是為了門禁系統(tǒng)的密碼應(yīng)用生成密鑰,并通過密碼模塊發(fā)行設(shè)備發(fā)行(初始化和注入密鑰)密碼模塊,通過發(fā)卡設(shè)備對門禁卡發(fā)卡(初始化、注入密鑰和寫入應(yīng)用信息)。
密鑰管理及發(fā)卡系統(tǒng)中的密碼設(shè)備提供密鑰生成、密鑰分散及對門禁卡發(fā)卡時的身份鑒別等密碼服務(wù)。
圖1 門禁系統(tǒng)功能結(jié)構(gòu)圖Fig.1 Function structure of the access control system
非接觸式CPU卡,卡內(nèi)的集成電路中有微處理器CPU、存儲單元(包括 RAM、ROM(Flash)、EEPROM)以及片內(nèi)操作系統(tǒng)COS。由于裝有COS,非接觸CPU卡具有了一般微型計算機(jī)的功能,不僅可以進(jìn)行數(shù)據(jù)存儲,同時擁有命令處理和對數(shù)據(jù)進(jìn)行安全保護(hù)等功能。相對于非接觸邏輯加密卡,非接觸式CPU智能卡有以下特點(diǎn)[4]:
1)芯片和COS的雙重安全技術(shù)為CPU卡的安全性提供了可靠的保證;
2)由于具備獨(dú)立的CPU處理器和COS,可靈活方便的支持多種不同的應(yīng)用需求,讓交易流程的設(shè)計更安全;
3)降低了對計算機(jī)網(wǎng)絡(luò)系統(tǒng)的要求,能實(shí)現(xiàn)脫機(jī)操作,能實(shí)現(xiàn)真正意義上的一卡多用,每個應(yīng)用都受控于各自的密鑰管理系統(tǒng)且互不干擾;
4)能自動更新個人化數(shù)據(jù),保證交易數(shù)據(jù)的完整性;
5)采用動態(tài)密碼,并且是一密一用,即同一張非接觸式CPU卡,每刷一次卡的認(rèn)證密碼都不相同,從而使系統(tǒng)安全性提高;
6)具備獨(dú)立的保密模塊——采用相應(yīng)的實(shí)體身份認(rèn)證密鑰(SAM)實(shí)現(xiàn)加密、解密及交易處理,實(shí)現(xiàn)與用戶卡之間的安全認(rèn)證。
非接觸式CPU智能卡有以下優(yōu)勢[4]:
1)先進(jìn)性 非接觸式CPU卡安全性極高,其安全等級在當(dāng)前IC卡應(yīng)用中是最高的,可作為銀行的金融卡、電子錢包等,必將逐漸替代其他IC成為主流產(chǎn)品。
2)規(guī)范性 支持符合ISO7816—3標(biāo)準(zhǔn)的T=0、T=1通信協(xié)議,符合《中國金融集成電路(IC)卡應(yīng)用規(guī)范》、《中國金融集成電路(IC)卡規(guī)范》,支持符合銀行規(guī)范的電子錢包、電子存折功能。
3)兼容性 由于有全面的國際/國內(nèi)標(biāo)準(zhǔn)規(guī)范及中國人民銀行的嚴(yán)格檢測,CPU卡能實(shí)現(xiàn)很好的兼容性、安全性。芯片和COS的雙重安全技術(shù)為CPU卡安全性大大提高;支持DES、3DES乃至128位密鑰長度的SM1等加密算法;支持線路的加密、保密功能,防止交易數(shù)據(jù)被偽造或非法竊取,實(shí)現(xiàn)數(shù)據(jù)的加密、解密。
4)可擴(kuò)展性 卡片支持從2KB-32KB的EEPROM空間,由于自帶操作系統(tǒng),可以輕易擴(kuò)展到多種應(yīng)用,還可與銀行聯(lián)合,從而實(shí)現(xiàn)真正的一卡多用。
5)安全性 由于智能卡內(nèi)部有獨(dú)立的CPU芯片,不僅能對數(shù)據(jù)判斷進(jìn)行判斷,還能分析處理數(shù)據(jù),因此智能卡具有隨時區(qū)分合法和非法讀寫設(shè)備的能力,并可對數(shù)據(jù)進(jìn)行加密解密處理。由于智能CPU卡具有運(yùn)算能力,還可在交易結(jié)束時產(chǎn)生個交易驗證碼TAC,防止偽造交易,因此具有很高的安全性。
本文設(shè)計的門禁管理系統(tǒng)框圖如圖2所示。
圖2 采用非接觸式CPU卡(SM1算法)門禁系統(tǒng)方案圖Fig.2 Access control system program based on non-contact CPU card(SM1 algorithm)
方案中門禁卡采用由國家密碼管理局審批并有住房和城鄉(xiāng)建筑部IC卡應(yīng)用服務(wù)中心認(rèn)可的SM1算法的CPU卡,卡內(nèi)存放安全認(rèn)證碼、發(fā)行信息和卡片密鑰,并具有符合相關(guān)標(biāo)準(zhǔn)的COS(片上操作系統(tǒng));門禁卡與非接觸讀卡器之間采用SM1算法進(jìn)行身份的鑒別和安全報文傳輸;在發(fā)卡系統(tǒng)中和讀寫器中的安全模塊同樣采用SM1算法進(jìn)行門禁卡的分散,實(shí)現(xiàn)一卡一密。
早在2006年國家密碼管理局就組織了國內(nèi)部分RFID及密碼相關(guān)企業(yè)共同發(fā)起成立了電子標(biāo)簽密碼應(yīng)用技術(shù)體系研究專項工作組。已經(jīng)建立了RFID系統(tǒng)安全性要求從低到高的系列密碼算法,流密碼(SM7)、分組對稱密碼(SM1)和非對稱密碼(SM2),本文中采用了分組對稱密碼(SM1)[5-6]。
國密SM1算法是一種商用密碼分組標(biāo)準(zhǔn)的對陣算法[5-6],分組長度和密鑰都為128比特,算法安全保密強(qiáng)度及相關(guān)軟硬件實(shí)現(xiàn)性能與AES相當(dāng),但是算法不公開,僅以IP核的形式存在于芯片中。國密卡發(fā)卡流程主要有3個步驟:卡片結(jié)構(gòu)建立;密鑰寫入;個人化處理??ㄆY(jié)構(gòu)需進(jìn)行統(tǒng)一規(guī)劃,包括:主文件、密鑰文件、個人基本信息文件、公共信息基本信息文件、記錄文件、應(yīng)用文件、目錄文件等。密鑰寫入包括發(fā)卡單位主密鑰、專項應(yīng)用子密鑰、管理性密鑰等。密鑰發(fā)卡中心集中寫入后的初始化卡分發(fā)給各發(fā)卡單位。然后發(fā)卡單位根據(jù)各自的發(fā)卡單位主密鑰,將本單位個人基本信息文件、應(yīng)用文件裝入卡片,并且在表面打印照片、姓名等,通過上述步驟完成個人化處理的卡片,即可發(fā)給持卡人。目前,采用國密算法的非接觸式IC卡門禁系統(tǒng)已經(jīng)成功使用于住建部新建和改造的門禁一卡通系統(tǒng)。
其中門禁卡與門禁讀卡器間的工作原理如圖3。
圖3 SM1算法安全模塊工作原理Fig.3 Working principle of the SM1security module
SM1算法安全模塊集成MCU和射頻接口功能,所有的處理過程都在安全模塊中實(shí)現(xiàn)。射頻接口模塊負(fù)責(zé)讀卡器與門禁卡間的射頻通信;MCU控制射頻接口模塊與門禁卡的通信,負(fù)責(zé)實(shí)現(xiàn)讀卡器內(nèi)部的數(shù)據(jù)加密傳送及與后臺管理系統(tǒng)的通信功能。
本方案中的關(guān)鍵部分是支持SM1算法的非接觸式CPU卡和支持SM1算法的安全模塊,其中支持SM1算法的非接觸式CPU卡是已經(jīng)通過住建部IC卡應(yīng)用服務(wù)中心的檢測。支持SM1算法的安全模塊是統(tǒng)一由住建部IC卡應(yīng)用服務(wù)中心管理。
用CPU卡取代M1卡,用國密SM1算法取代公開的DES、3DES等算法,給我國門禁系統(tǒng)帶來了一個新的里程碑。本文提出了提出了一種基于國密SM1算法CPU卡的門禁系統(tǒng)解決方案,該門禁系統(tǒng)解決方案能夠滿足最新門禁系統(tǒng)市場需求,具有安全靈活多樣等更多的特點(diǎn)。
[1]周學(xué)葉,單承贛.基于RFID的門禁系統(tǒng)設(shè)計[J].安防科技,2009(01) :10-11.
ZHOU Xue-ye,SHAN Cheng-gan.RFID-based access control system design[J].Sofety&Security Technology,2009(01):10-11.
[2]張少華.如何看待Mifare 1卡的安全性問題[J].智能建筑,2009(10):31-33.
ZHANG Shao-hua.How to look on the security issues of mifare 1card[J].Intelligent Building,2009(10):31-33.
[3]安靜宇,雷金莉,王媛媛.基于非接觸式IC卡門禁系統(tǒng)的設(shè)計[J].寶雞文理學(xué)院學(xué)報:自然科學(xué)版,2008,28(2):141-143.
AN Jing-yu,LEI Jin-li,WANG Yuan-yuan.Design of entrance guard system based on contactless IC card[J].Journal of Baoji University of Arts and Sciences:Natural Science Edition,2008,28(2):141-143.
[4]張建軍,包國峰,馬一兵.FM1208非接觸CPU卡讀寫系統(tǒng)的研制[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2009(12):56-59.
ZHANG Jian-jun,BAO Guo-feng,MA Yi-bing.Read/Write system of contact less CPU card FM1208[J].Microcontrollers&Embedded Systems,2009(12):56-59.
[5]劉守義,毛豐江,蘇全.智能卡技術(shù)[M].西安:西安電子科技大學(xué)出版社,2004.
[6]戴毅.IC卡門禁系統(tǒng)中的無線通信加密技術(shù)[J].信息技術(shù),2010(5):24.
DAI yi.Wireless encryption technology in IC card system[J].Science&Technology Information,2010(5):24.