魏文俊+張晶+朱鵬宇??
摘要:公共自行車租賃系統(tǒng)已逐步納入城市公共交通體系,以解決公交出行“最后一公里”問題。本文針對(duì)自行車租賃系統(tǒng)中的安全認(rèn)證問題,提出用軟件模塊實(shí)現(xiàn)DES算法代替?zhèn)鹘y(tǒng)所使用的PSAM(Purchase Secure Access Module)硬件卡方案,分別在自行車租賃系統(tǒng)內(nèi)的售卡系統(tǒng)、消費(fèi)終端和車輛信息幾個(gè)模塊中,實(shí)現(xiàn)DES加密。不僅提高現(xiàn)有系統(tǒng)智能卡的擴(kuò)展性和安全性,而且減少硬件成本,提高了系統(tǒng)的效率。
關(guān)鍵詞:DES;自行車租賃;密鑰
中圖分類號(hào):TP399文獻(xiàn)標(biāo)識(shí)碼:ADOI:10.3969/j.issn.10036199.2017.01.018
1引言
隨著城市交通機(jī)動(dòng)化的發(fā)展,交通擁堵、環(huán)境污染等問題越來越嚴(yán)重,發(fā)展慢行交通,建立城市公共自行車系統(tǒng)顯得及其重要。2005年北京出現(xiàn)了公共自行車,但是系統(tǒng)的發(fā)展緩慢。直到2008年杭州公共自行車系統(tǒng)的投入使用,才引發(fā)了國內(nèi)公共自行車發(fā)展的浪潮[1]。目前,在北京、深圳、武漢等多個(gè)城市都啟動(dòng)了公共自行車服務(wù),杭州和武漢擁有世界上最大的公共自行車系統(tǒng),數(shù)量分別在6.5萬輛和7萬輛。中國已經(jīng)成為公共自行車規(guī)模增長快、發(fā)展相對(duì)成功的國家之一[2]。公共自行車租賃系統(tǒng)主要由以下四部分組成:自行車(攜帶RFID)、鎖樁、站點(diǎn)、后臺(tái)管理系統(tǒng),如圖1所示。鎖樁通過讀取自行車RFID信息和用戶卡號(hào)進(jìn)行租還車;站點(diǎn)對(duì)鎖樁進(jìn)行統(tǒng)一管理,對(duì)用戶卡進(jìn)行鑒權(quán),同時(shí)和后臺(tái)管理系統(tǒng)進(jìn)行數(shù)據(jù)交換;后臺(tái)管理系統(tǒng)完成運(yùn)營調(diào)度和業(yè)務(wù)管理,其中業(yè)務(wù)管理作為后臺(tái)管理系統(tǒng)核心部分,主要負(fù)責(zé)面向用戶的事務(wù)處理,涉及卡片管理、用戶管理、事務(wù)辦理等相關(guān)內(nèi)容[3]。
作為公共服務(wù),安全認(rèn)證是整個(gè)系統(tǒng)的重點(diǎn)。傳統(tǒng)的安全認(rèn)證采用硬件(PSAM卡:30元/張)實(shí)現(xiàn),將PSAM卡分別安裝在鎖樁、站點(diǎn)、后臺(tái)管理系統(tǒng),每次租還車交易都需進(jìn)行PSAM卡安全認(rèn)證。一個(gè)小規(guī)模的自行車系統(tǒng)至少需要上千張PSAM卡,成本高且不便于管理。
圖1公共自行車租賃系統(tǒng)
DES算法是最常見的對(duì)稱密鑰算法,屬于對(duì)稱算法中的分組密碼算法,其算法公開、安全性高、密鑰容易獲取,運(yùn)算過程簡潔[4]。本文旨在通過DES算法來替換已有的硬件加密模塊,主要涉及到業(yè)務(wù)管理模塊中用戶卡的安全認(rèn)證、站點(diǎn)模塊的用戶卡的安全認(rèn)證、鎖樁模塊的自行車RFID信息認(rèn)證,采用一卡一密。該設(shè)計(jì)采用軟件模塊實(shí)現(xiàn),在保證高安全性的前提下,與傳統(tǒng)的PSAM卡不再作為硬性捆綁,直接使用DES算法進(jìn)行消費(fèi)主密鑰的產(chǎn)生和認(rèn)證,實(shí)際使用中降低了硬件成本,操作簡便,擁有好的用戶體驗(yàn)。
2DES算法原理
DES算法是一種常見的對(duì)稱加密算法,該算法技術(shù)公開,算法簡潔,安全性高。DES算法在通信領(lǐng)域一般主要應(yīng)用在以下幾個(gè)方面[5]:
(1)計(jì)算機(jī)網(wǎng)絡(luò)通信:對(duì)計(jì)算機(jī)網(wǎng)絡(luò)通信中的數(shù)據(jù)提供保護(hù)是DES的一項(xiàng)重要應(yīng)用;
(2)電子資金傳送系統(tǒng):采用DES算法加密電子資金傳送系統(tǒng)中的信息,可準(zhǔn)確、快速地傳送數(shù)據(jù),并可較好地解決信息安全的問題;
(3)保護(hù)用戶文件:用戶可自選密鑰對(duì)重要文件加密,防止未授權(quán)用戶竊密。
DES加密過程由四部分組成,分別為:初始置換函數(shù)IP、子密鑰Ki、獲取密鑰函數(shù)F及末置換函數(shù)IP-1。
DES的加密算法基本過程為:初始置換函數(shù)IP接收長度為64位的明文輸入,末置換函數(shù)IP-1輸出64位的密文。在子密鑰的獲取過程中,通過密鑰置換獲取從K1到K16共16個(gè)子密鑰,這16個(gè)子密鑰分別順序應(yīng)用于密碼函數(shù)的16次完全相同的迭代運(yùn)算中[6]。如下圖2所示。
DES的解密算法與加密算法完全相同,只需要將密鑰的應(yīng)用次序與加密時(shí)相反應(yīng)用即可。3算法模塊在自行車系統(tǒng)中的應(yīng)用
3.1自行車電子標(biāo)簽(RFID)數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)
自行車電子標(biāo)簽內(nèi)存儲(chǔ)行政區(qū)劃代碼、自行車序號(hào)和運(yùn)營機(jī)構(gòu)序號(hào)信息,存儲(chǔ)位置為電子標(biāo)簽扇區(qū)1,存儲(chǔ)結(jié)構(gòu)見表1。鎖樁通過感應(yīng)位于自行車前端的RFID(Radio Frequency Identification),通過規(guī)定的DES算法來獲取自行車的信息,保證系統(tǒng)中自行車的合法身份,自由通過合法驗(yàn)證的車輛才能上架。
3.2用戶卡數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)
在本系統(tǒng)中,業(yè)務(wù)管理模塊和站點(diǎn)管理模塊均會(huì)涉及到用戶卡的安全策略。為了享有騎行服務(wù),用戶需要在業(yè)務(wù)管理模塊進(jìn)行業(yè)務(wù)辦理,業(yè)務(wù)管理模塊負(fù)責(zé)完成用戶卡安全策略的初始化操作;租還車時(shí),通過鎖樁獲取用戶卡的卡號(hào),并傳遞給站點(diǎn),由站點(diǎn)管理模塊負(fù)責(zé)用戶卡合法性的驗(yàn)證,只有驗(yàn)證通過的用戶卡才能進(jìn)行租還車[7]。
3.3密鑰管理思路
采用邏輯加密卡密鑰安全控制策略保障數(shù)據(jù)的安全性,制定密鑰安全策略如下:
(1)由獨(dú)立機(jī)構(gòu)生成KeyAn,作為扇區(qū)0~2內(nèi)控制讀權(quán)限密鑰的根密鑰,向各區(qū)縣運(yùn)營監(jiān)管機(jī)構(gòu)開放;
(2)各區(qū)縣運(yùn)營監(jiān)管機(jī)構(gòu)生成KeyBn,作為扇區(qū)0~2內(nèi)控制寫權(quán)限密鑰的根密鑰,不對(duì)外開放;
(3)獨(dú)立機(jī)構(gòu)與各區(qū)縣運(yùn)營監(jiān)管機(jī)構(gòu)制定密鑰管理制度,保障密鑰數(shù)據(jù)的生成、傳輸、存儲(chǔ)和使用的安全。
3.4密鑰運(yùn)算規(guī)則
算法的安全性主要在于密鑰的安全性,DES算法中密鑰是其輸入之一,對(duì)比兩次加密結(jié)果來實(shí)現(xiàn)安全認(rèn)證。下邊簡要描述在系統(tǒng)中DES算法的使用規(guī)則。
KeyAn控制讀權(quán)限,由KeyA對(duì)復(fù)制1次的唯一標(biāo)識(shí)卡號(hào)SN(芯片序列號(hào)為4字節(jié),復(fù)制后為8字節(jié))進(jìn)行分散(DES算法加密)獲得,即KeyAn= DES (KeyA, SN||SN),保證一卡一密鑰;KeyBn控制讀寫權(quán)限,由KeyB對(duì)復(fù)制1次的唯一標(biāo)識(shí)卡號(hào)SN(芯片序列號(hào)為4字節(jié),復(fù)制后為8字節(jié)) 進(jìn)行分散(DES算法加密)獲得,即KeyBn= DES(KeyB, SN||SN),保證一卡一密鑰[8]。