基于指紋識別和智能卡的安全電子報稅系統(tǒng)
文章出處:http://bookmouse.cn 作者:陳平, 孫宏偉, 顧明 人氣: 發(fā)表時間:2011年09月30日
電子報稅是電子政務(wù)建設(shè)的組成部分。在電子報稅系統(tǒng)中,稅務(wù)機關(guān)結(jié)合自身的信息管理系統(tǒng),利用現(xiàn)代信息技術(shù),特別是互聯(lián)網(wǎng)技術(shù),實現(xiàn)與納稅人之間遠程涉稅信息的數(shù)據(jù)交換,并與銀行和國庫聯(lián)網(wǎng),為納稅人提供全面、方便、快捷、高效的電子化申報和納稅服務(wù)。由于稅務(wù)機關(guān)根據(jù)納稅人通過電子報稅系統(tǒng)傳輸?shù)膱蠖悢?shù)據(jù)進行電子扣款,因此對納稅人進行身份認證、對報稅信息進行加密傳輸和數(shù)字簽名尤為重要。
為了解決報稅系統(tǒng)的安全問題,數(shù)據(jù)加密、數(shù)字簽名等安全技術(shù)已經(jīng)應(yīng)用到了電子報稅系統(tǒng)中。這些技術(shù)雖然保證了報稅信息在傳輸和存儲的過程中是基于密文的,但是用來對報稅信息加密和數(shù)字簽名密鑰的安全問題并沒有解決:密鑰往往存儲在報稅系統(tǒng)的收發(fā)終端或者稅務(wù)機關(guān)的CA服務(wù)器上,隨著網(wǎng)絡(luò)攻擊技術(shù)的發(fā)展,目前保存密鑰的方法會對電子報稅系統(tǒng)的安全產(chǎn)生嚴(yán)重的威脅。而且目前系統(tǒng)中納稅人身份認證問題僅僅通過用戶名和口令的方式加以解決,該辦法不僅不能提供雙向認證,而且一旦用戶名和口令泄漏,將給納稅人和稅務(wù)機關(guān)造成重大的損失。為了解決電子報稅系統(tǒng)的身份認證、密鑰管理方面存在的安全問題,本文提出了一種基于指紋識別和智能卡技術(shù)的安全解決方案。
1 相關(guān)工作
1.1.1 基于PKI的電子報稅系統(tǒng)安全方案
(1)注冊階段
在注冊階段,將納稅人的相關(guān)信息存入客戶端。存入的信息包括納稅人基本信息、數(shù)字證書、私鑰、服務(wù)器端公鑰、MD5摘要算法以及RSA加密算法等。稅務(wù)端的服務(wù)器進行密鑰管理。密鑰管理服務(wù)器運行密鑰管理服務(wù)軟件,實現(xiàn)備份密鑰、注冊密鑰和歸檔密鑰的管理,密鑰發(fā)放、作廢和恢復(fù)申請的認證及授權(quán),密鑰的生成、發(fā)放、注冊、注銷、歸檔和恢復(fù),密鑰管理員、RA管理員和設(shè)備的注冊與管理,密鑰管理日志的記錄,密鑰管理中心的管理和維護等功能。在密鑰生成和發(fā)放后,為保證密鑰的安全,可將納稅人的密鑰直接銷毀,只需保存納稅人的公鑰信息。在服務(wù)器上,可利用操作系統(tǒng)和數(shù)據(jù)庫本身的安全機制來保障密鑰、證書等信息的安全。
(2)認證階段
使用電子報稅系統(tǒng)的每個納稅人持有一對公鑰和私鑰,完成對數(shù)據(jù)的加密、解密、簽名、驗證簽名等相關(guān)操作。如果用Pubi ( i = c, s)表示納稅人(下標(biāo)用c表示)和稅務(wù)機關(guān)(下標(biāo)用s表示)的公鑰; Prii ( i = c, s)表示納稅人和稅務(wù)機關(guān)的私鑰;
Pube i ( x) ( i = c, s)表示用公鑰對內(nèi)容x加密; Pubd i ( x) ( i = c, s)
表示用公鑰對內(nèi)容x解密; Prie i ( x) ( i = c, s)表示用私鑰對內(nèi)容x加密; Prid i ( x) ( i = c, s)表示用私鑰對內(nèi)容x解密;MD5 ( x)表示對內(nèi)容進行MD5摘要處理; DESe ( k, x)表示用密鑰k對內(nèi)容x進行DES加密;DESd ( k, x)表示用密鑰k對內(nèi)容x進行DES解密[3 ]。
納稅人對生成身份認證信息過程如圖1左側(cè)所示。①納稅人輸入用戶名和口令信息p,并隨機生成DES加密密鑰k; ②將p和k組合成a; ③利用稅務(wù)機關(guān)的公鑰Pubs 對a加密得到ea; ④對ea進行MD5摘要處理得到結(jié)果m, 以納稅人的私鑰Pric 對m 加密得到em; ⑤將內(nèi)容ea和em 連接在一起形成認證信息sm,并直接把sm 發(fā)送到稅務(wù)機關(guān)報稅服務(wù)器。
稅務(wù)機關(guān)對納稅人進行身份認證的過程如圖1如下所示。
①將收到的認證信息sm 分成ea和em 兩段; ②用納稅人的公鑰Pubc 對em 解密得到m,同時利用MD5算法對ea進行摘要處理得到m n; ③比較m n和m 的內(nèi)容, 如果不同, 則證明認證信息在傳輸過程中發(fā)生了改變,將該認證信息丟棄,并通知納稅人;如果相同,利用稅務(wù)機關(guān)的私鑰Pris 對ea解密,并將ea分離為p和k,將p與服務(wù)器中的用戶名和口令比較,如相符,將k作為本次交易的DES密鑰,否則通知納稅人口令有誤。
(3)傳輸階段
納稅人生成報稅信息過程如圖2左側(cè)所示。①納稅人發(fā)送方撰寫報稅信息c; ②以k為密鑰對報稅信息進行DES加密,得到密文形式的報稅信息ec; ③對ec進行MD5摘要處理得到結(jié)果m,以納稅人的私鑰Pric 對m 加密得到em; ④將內(nèi)容ec和em 連接在一起形成報稅信息sm,把sm 發(fā)送到稅務(wù)機關(guān)報稅服務(wù)器。
稅務(wù)機關(guān)接收報稅信息流程如圖2右側(cè)所示。①將收到的報稅信息sm 分成ec和em 兩段; ②用納稅人的公鑰Pubc 對em 解密得到m,同時利用MD5算法對ea進行摘要處理得到m n; ③比較m n和m 的內(nèi)容, 如果不同, 則證明報稅信息在傳輸過程中發(fā)生了改變,將該報稅信息丟棄并通知納稅人;如果相同,則以k為密鑰對ec進行DES解密,得到報稅信息c。
現(xiàn)有的方案存在以下缺陷:私鑰等敏感信息存放在納稅人端,容易被破解;如果納稅人的私鑰被他人獲得,整個系統(tǒng)就無安全性可言;由于用戶名泄漏,攻擊者可以假冒他人進行登錄;用戶的保密意識不強,口令容易泄漏;口令容易被猜測,同時由于沒有鎖定機制,攻擊者可以采取強攻擊的手段進行口令的不斷猜測;一旦攻擊者獲得服務(wù)器數(shù)據(jù)庫中的用戶/口令表,則獲得了所有用戶的口令。
1.1.2 智能卡技術(shù)
智能卡是由一個或多個集成電路芯片(包括固化在芯片中的軟件)組成的設(shè)備,可以安全地存儲密鑰、證書和用戶數(shù)據(jù)等敏感信息,防止硬件級別的竄改。智能卡芯片在很多應(yīng)用中可以獨立完成加密、解密、身份認證、數(shù)字簽名等對安全較為敏感的計算任務(wù),從而能夠提高應(yīng)用系統(tǒng)抗病毒攻擊以及防止敏感信息的泄漏。
根據(jù)智能卡組成結(jié)構(gòu)的不同,可以分為三類:
(1)一般存儲卡。其內(nèi)嵌芯片相當(dāng)于普通串行E2 PROM,本身不具備信息保密功能,只能用于保密性要求不高的應(yīng)用場合。
(2)加密存儲卡。其內(nèi)嵌芯片在存儲區(qū)外增加了控制邏輯。在訪問存儲區(qū)之前需要核對密碼,一般用于需要進行簡單保密要求的應(yīng)用場合。
(3) CPU卡。其內(nèi)嵌芯片相當(dāng)于一個特殊類型的單片機,內(nèi)部除了帶有控制器、存儲器、時序控制邏輯等外,還帶有算法單元和操作系統(tǒng),被廣泛應(yīng)用于信息安全性要求特別高的場合。
使用智能卡具有以下優(yōu)點: ①私鑰不可讀。智能卡的軟硬件設(shè)計嚴(yán)格控制用戶私鑰的使用權(quán)限,只能在滿足條件時方可使用,保護了私鑰的安全性。②卡內(nèi)簽名、驗證。私鑰的簽名、驗證功能一律在卡內(nèi)實現(xiàn),不存在傳輸中私鑰泄漏的可能性。由于智能卡具有以上特點,在電子報稅系統(tǒng)中引入智能卡技術(shù)可以大大提高系統(tǒng)的安全性。
1.1.3 指紋識別技術(shù)
由于人體指紋特征具有較高的穩(wěn)定性、獨特性以及可接受性和易獲得性,加上指紋識別技術(shù)的不斷成熟,可以利用指紋特征進行身份認證。在指紋識別算法中比較流行的是基于細節(jié)特征(Minutiae)的指紋識別,細節(jié)是指紋圖像中脊線的分支和末梢。
指紋識別技術(shù)主要包括讀取指紋圖像、指紋圖像預(yù)處理、指紋圖像特征提取、保存和比對。①通過指紋讀取到人體指紋的圖像,取得指紋圖像之后,對原始圖像進行初步的處理,降低噪聲使之更清晰。②提取特征數(shù)據(jù),它是一種單方向的轉(zhuǎn)換,可以從指紋轉(zhuǎn)換成特征數(shù)據(jù),但不能從特征數(shù)據(jù)轉(zhuǎn)換成指紋,而兩枚不同的指紋不會產(chǎn)生相同的特征數(shù)據(jù)。③通過計算機模糊比較的方法把兩個指紋的特征數(shù)據(jù)進行比較,計算出它們的相似程度,最終得到兩個指紋的匹配結(jié)果??梢詫⒅讣y特征模板保存在服務(wù)器上,當(dāng)用戶登錄時,將新采集到的指紋信息與在計算機中儲存的指紋特征模板進行比較來認證用戶的身份。
2 基于指紋識別和智能卡技術(shù)的電子報稅系統(tǒng)安全方案
2.1.1 注冊階段
稅務(wù)機關(guān)發(fā)放智能卡時,將納稅人的相關(guān)信息寫入卡內(nèi)。
卡內(nèi)寫入的信息包括納稅人基本信息、數(shù)字證書、私鑰、服務(wù)器端的公鑰、MD5摘要算法以及RSA[ 7 ]加密算法等。由于智能卡設(shè)有唯一標(biāo)志號和PIN碼,并且在身份認證階段還需要進行指紋信息的比對,這樣在很大程度上避免了盜用智能卡帶來的安全問題。
稅務(wù)端服務(wù)器上存儲了所有納稅人的公鑰信息和指紋信息。服務(wù)器上面的公鑰數(shù)據(jù)是用來被所有用戶訪問的,而且對安全性的要求較低,所以可以依靠操作系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的安全性來解決。另外,如果某個納稅人的智能卡丟失,當(dāng)納稅人掛失智能卡的時候要將用戶的證書吊銷,這樣需要在服務(wù)器上維護一個證書吊銷列表來控制證書的回收。私鑰在生成之后直接寫入用戶所持有的智能卡中,在發(fā)卡機構(gòu)不保存副本,這樣最大程度地保證了電子報稅系統(tǒng)的安全。依靠操作系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的安全性,并且對指紋信息進行適當(dāng)加密,可以保證指紋信息的安全性。
由于智能卡內(nèi)處理器能力的限制,使用中主要利用智能卡處理一些小數(shù)據(jù)量的敏感信息,如對密鑰的加密等。通過DES對大量報稅數(shù)據(jù)的加、解密處理則是在客戶端上實現(xiàn)的,這樣可以揚長避短,既達到了足夠的安全性,又充分地利用了客戶端系統(tǒng)DES加密、解密速度快的優(yōu)點,實現(xiàn)電子報稅系統(tǒng)較快的響應(yīng)時間。
2.1.2 認證階段
納稅人端生成認證信息的流程如圖3左側(cè)所示。
(1)納稅人將智能卡插入讀卡器,并輸入PIN碼;
(2)采集指紋信息,并進行圖像預(yù)處理增強和細節(jié)抽取,生成指紋特征信息( f) ;
(3)利用采集到的指紋信息作為種子生成DES加密密鑰k;
(4)將f和k組合成a;
(5)利用稅務(wù)機關(guān)的公鑰Pubs 對a加密得到ea;
(6)對ea進行MD5摘要處理得到結(jié)果m,以納稅人的私鑰Pric 對m 加密得到em;
(7)將內(nèi)容ea和em 連接在一起形成加密、簽名后的認證信息sm,并直接把sm 發(fā)送到稅務(wù)機關(guān)服務(wù)器。
灰色框中的處理步驟是納稅人以私鑰Pric 加密認證信息MD5摘要處理結(jié)果,是在智能卡內(nèi)進行的。納稅人身份的認證過程如圖3右側(cè)所示。
(1)稅務(wù)機關(guān)將收到的報稅信息sm 分成ea和em 兩段,用納稅人的公鑰Pubc 對em 解密得到m。
(2)利用MD5算法對ea進行摘要處理得到m n, 比較m n和m 的內(nèi)容。如果不同,則證明認證信息在傳輸?shù)倪^程中發(fā)生了改變,將該信息丟棄,并通知納稅人;如果相同,利用稅務(wù)機關(guān)的私鑰Pric 對ea解密,得到a。
(3)將a分離成f和k。
(4)將注冊指紋信息f與服務(wù)器中存儲的信息進行細節(jié)匹配:
①如果匹配通過,則納稅人的身份得到確認。對注冊指紋信息f進行摘要處理,并利用稅務(wù)機關(guān)的私鑰Pris 和納稅人的公鑰Pubc 對該信息進行加密,發(fā)送到納稅人端(如圖4左側(cè)所示)。
②如果不能匹配,則納稅人的身份不符,并通知納稅人?;疑蛑械奶幚聿襟E是稅務(wù)機關(guān)私鑰Pris 對ea解密的過程也在智能卡內(nèi)進行的。
稅務(wù)機關(guān)身份的認證過程如圖4右側(cè)所示。納稅人端在收到返回的認證信息后,利用納稅人的私鑰Pric 和稅務(wù)機關(guān)的公鑰Pubs 對摘要信息進行解密,并將其與客戶端已有注冊指紋信息的摘要進行比對。如相符,則稅務(wù)機關(guān)的身份得到確認。至此,雙方身份都得到驗證。
2.1.3 傳輸階段
在圖5的報稅信息發(fā)送處理流程中: ①對報稅信息進行加密處理,得到ec; ②對于ec進行MD5摘要處理,得到m; ③用納稅人的私鑰Pric 和稅務(wù)機關(guān)的公鑰Pubs 對m 進行兩次加密處理。這個步驟是在智能卡內(nèi)處理,加密之后再將結(jié)果返回給卡外信息發(fā)送程序。這樣外部的程序就不能直接訪問用戶的私鑰,從而可以在最大程度上保證私鑰的安全性。
在報稅信息接收處理流程中,以納稅人的公鑰Pubc 和稅務(wù)機關(guān)私鑰Pris 對em 解密的過程也在卡內(nèi)進行。外部程序?qū)m 發(fā)送給智能卡,經(jīng)過卡內(nèi)解密得到m 返回給外部程序,納稅信息的DES解密過程在外部客戶端實現(xiàn),同樣避免了外部程序直接訪問到稅務(wù)機關(guān)的私鑰,最大限度地提高了系統(tǒng)的整體效率和安全性。
3 安全性分析
本文提出的基于指紋識別和智能卡技術(shù)的電子報稅方案中,將指紋識別和智能卡技術(shù)運用到了身份認證、報稅信息的存儲和傳輸中,具有以下特點和安全性:
(1)系統(tǒng)的終端中引入了具有自主計算功能的智能卡,實現(xiàn)用戶私鑰的硬件級別的防止竄改。將用戶基本信息、數(shù)字證書和私鑰等信息存儲到卡內(nèi)之后,進行數(shù)據(jù)的加密、解密和簽名等操作。私鑰不出卡,保證了私鑰的安全,從而提高了整個系統(tǒng)的安全性。
(2)利用指紋特征進行身份認證。在認證階段,將用戶的指紋信息與服務(wù)器端的指紋特征信息進行比對,即便非法用戶獲得了合法用戶的智能卡和口令,由于缺少必須的指紋信息,也無法登錄稅務(wù)機關(guān)的服務(wù)器。
(3)實現(xiàn)了雙向認證。在稅務(wù)機關(guān)服務(wù)器驗證了納稅人的登錄請求后,向納稅人端傳送特定的認證信息,納稅人端可以識別其身份。只有雙方的認證都通過,納稅人才能登錄到稅務(wù)機關(guān)的服務(wù)器。
(4)將指紋特征作為DES密鑰產(chǎn)生種子。在納稅人進行登錄時,必須提供指紋信息,而每次登錄采集到的指紋信息是不相同的,因此根據(jù)每次登錄時提供的指紋信息來產(chǎn)生DES密鑰可以保證該DES密鑰是一次性的。
綜合以上分析,該方案能夠?qū)崿F(xiàn)稅務(wù)機關(guān)與納稅人之間的雙向身份認證,有效地解決了報稅信息的傳輸問題,提高了電子報稅系統(tǒng)的安全性和實際運行過程中的效率。
4 結(jié)論
要實現(xiàn)安全的電子報稅服務(wù),進行身份認證并且對報稅信息加密和簽名處理是必不可少的。本文提出基于指紋識別和智能卡技術(shù)的電子報稅系統(tǒng)安全方案,在納稅人端和服務(wù)器端引入智能卡技術(shù),保證密鑰等機密信息的安全;在納稅人登錄時引入指紋識別技術(shù),實現(xiàn)交易雙方的雙向身份認證,最大限度地降低了系統(tǒng)的安全隱患,可以在不改變原有電子報稅系統(tǒng)體系結(jié)構(gòu)的前提下有效地解決身份認證和數(shù)據(jù)傳輸過程中的安全問題。安全分析表明,該方案能夠有效地提高身份認證和數(shù)據(jù)傳輸中的安全問題。在下一步的工作中,我們將進一步研究智能卡內(nèi)的高效加密算法,以提高整個系統(tǒng)的運行效率。
(文/清華大學(xué)軟件學(xué)院, 陳平, 孫宏偉, 顧明)