基于智能卡指紋認證系統(tǒng)
文章出處:http://xianjuhong.com 作者:劉治 人氣: 發(fā)表時間:2011年09月29日
1 智能卡及指紋識別技術(shù)
智能卡(smart card)及指紋識別技術(shù)智能卡在外形上和磁卡(magnetic card)相似, 但重要的是它不易被仿制。智能卡主要分為三類存儲卡, 加密存儲卡和CPU卡。存儲卡中的數(shù)據(jù)可任意讀寫加密存儲卡對讀取數(shù)據(jù)沒有嚴格限制, 但寫數(shù)據(jù)時須進行密碼校驗;CPU卡的讀寫都有嚴格的限制, 并有自己的微處理器位(8位CPU, 主頻5~10MHz)、RAM、ROM、EEPROM、ROM由于存放操作系統(tǒng)及加密算法等, EEPROM用于存放用戶的個人化參數(shù)和數(shù)據(jù), 而這些數(shù)據(jù)只能通過智能卡中的操作系統(tǒng)來訪問, 外部應(yīng)用程序不能直接訪問。智能卡的安全機制是通過密鑰鑒別, 密碼認證, 數(shù)據(jù)加密和解密以及文件訪問的安全控制等一系列協(xié)議來實現(xiàn)的。
指紋通常被認為是由谷分開的一系列脊。隨著計算機技術(shù)、采集技術(shù)及指紋識別算法的發(fā)展, 人們逐漸將人工指紋識別向指紋自動識別AFIS(Automated fingerprint Identification System)轉(zhuǎn)變。
2 系統(tǒng)分析
該系統(tǒng)提出了嚴格的拒真率(FRR)和認假率(FAR)指標(biāo)及可靠性安全性的要求。系統(tǒng)設(shè)計中使用的智能卡實際上是內(nèi)嵌于標(biāo)準塑料卡中的微控制器, 因此, 它所擁有的RAM/ROM及EEPROM的容量都很有限, 根據(jù)智能卡的標(biāo)準, 必須考慮微處理器的時鐘頻率和是數(shù)據(jù)傳輸。智能卡中初始時鐘頻率只有5MHz, 從而嚴重影響了計算速度另外外部向智能卡傳送數(shù)據(jù)只能通過單工異步串行口, 通常情況下, 次傳輸速率為9600bps, 并且, 即便這一速率可以改變, 最大也不會超過115bps,因此基于智能卡的指紋識別系統(tǒng)滿足必須有以下條件
① 指紋特征樣本應(yīng)盡量的小, 以不超過512字節(jié)為宜, 否則會給數(shù)據(jù)存儲和傳輸帶來困難;
② 由于用戶模板只在登記時傳送一次, 因而不會對數(shù)據(jù)通信造成大的影響, 然而考慮到EEPROM的存儲容量和匹配算法的復(fù)雜度, 也要盡減小其大小;
③ 減少定點運算, 杜絕浮點運算, 否則會因計算量的增大而需要協(xié)處理器, 造成成本升高。指紋認證算法的方案流程如圖1。
① 指紋圈像獲取主要有光學(xué)掃描采集、固休傳感器采集和超聲波傳感器采集三種途徑。所采集到的指紋圖像為位灰度圖, 分辨率和大小因系統(tǒng)用途不同而不等, 分辨率一,大小耐一耐, 本系統(tǒng)以美國推薦的, 大小的圖像為標(biāo)準。
② 指紋圈像預(yù)處理為使采集的指紋樣本適于后續(xù)細節(jié)提取模塊的處理, 并且為了減少數(shù)據(jù)量, 采取四級預(yù)處理方案。首先經(jīng)計算得到指紋樣本的梯度圖, 然后根據(jù)梯度圖分割圖像, 去除空白部分, 從而使得到的圖像中僅有脊和谷的信息。接下來便是圖像增強的過程, 在這個過程中指紋采基于智能卡指紋認證系統(tǒng)集過程中由于手指壓力、污潰等造成的圖像亮度、對比度的缺陷將得到補償。最后, 計算得到指紋圖像的方向圖。
③ 細節(jié)提取本系統(tǒng)在細節(jié)提取過程中使用“ 脊線跟蹤” 算法, 該算法基本思想是在指紋圖像內(nèi)部利用方向?qū)惯M行迭代搜錄。一旦找到脊上一點即在這一區(qū)域內(nèi)灰度值最低的象素點, 然后順延找到整條脊線。在得到的脊線圖中, 脊線的末梢及兩條脊線的交點都是指紋圖像的細節(jié)特征點。由這些細節(jié)特征點的位置、方向以及類型得到指紋圖像的特征向量, 并為后續(xù)的匹配算法提供必要的信息。這一過程還包括偽特征點的消除。該系統(tǒng)中指紋圖像每個細節(jié)特征點的特征向量為個字節(jié), 而特征點的數(shù)量有賴于獲取的有效指紋圖像的大小。
④ 指紋特征匹配由指紋傳感器獲取的指紋,在得到其特征向量后要和由讀卡器得到的先前注冊時儲存于卡中的指紋摸板相比對。然而由于手指按壓程度不同, 造成指紋采樣與卡中指紋摸板之間脊線間距離、對比度等差異。因此, 在匹配過程中應(yīng)用彈性匹配算法。
3 系統(tǒng)安全性
由于本系統(tǒng)限于本地用戶使用, 故當(dāng)前強調(diào)用戶身份認證的安全性而暫不考慮網(wǎng)絡(luò)互聯(lián)帶來數(shù)據(jù)通信安全性問題。
系統(tǒng)安全機制主要體現(xiàn)在以下三方面首先,系統(tǒng)用戶應(yīng)在系統(tǒng)服務(wù)器端進行注冊, 同時將用戶指紋特征、用戶數(shù)據(jù)及相關(guān)信息加密后存人智能卡中, 從而保證在不知道存儲格式的情況下不能獲得卡中數(shù)據(jù)。其次, 智能卡讀卡機上加裝指紋識別模塊, 當(dāng)讀卡機閱讀卡上信息時, 一并將持卡者指紋讀人, 通過對比卡上指紋與持卡者指紋可確定持卡者是否為該卡的合法擁有者, 身份確認后才能進行下一步操作。在更嚴格的場合下, 還應(yīng)和后端主機系統(tǒng)數(shù)據(jù)庫中的指紋進行比對。另外, 發(fā)卡時向智能卡中寫入PIN密碼, 該密碼同時存儲于服務(wù)器端的數(shù)據(jù)庫中。該密碼對用戶是保密的, 用戶要想對智能卡進行寫操作就必須有PIN密碼, 只有用戶指紋的采樣經(jīng)服務(wù)器端通過身份驗證后, 服務(wù)器端傳送PIN密碼至客戶端, 才可對智能卡進行寫操作。
(文/ 山東大學(xué) 劉治)