《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于ET44M210的指紋識別智能卡設(shè)計
基于ET44M210的指紋識別智能卡設(shè)計
張 鏹 唐棣芳 上海交通大學(xué)
摘要: 本文討論了一種具有指紋識別功能的智能卡系統(tǒng)的設(shè)計方法,,兼容指紋識別的智能卡讀寫器可以應(yīng)用在需要身份認(rèn)證的銀行系統(tǒng)以及其他安全性要求比較高的身份認(rèn)證管理系統(tǒng)中。該設(shè)計采用的指紋識別技術(shù)和智能卡技術(shù)的結(jié)合使用,,提高了系統(tǒng)的安全防護能力,,改善了系統(tǒng)整體的可靠性和安全性。
Abstract:
Key words :

0 引言
    新一代智能卡Smart Card的內(nèi)嵌芯片CPU等于一個特殊類型的單片機,,內(nèi)部帶有控制器、存儲器,、時運控制邏輯和算法單元,。由于CPU卡有存儲容量大、處理能力強,、信息存儲安全等特性,,在對各種卡片技術(shù)的評估過程中,智能卡脫穎而出,,成為目前最佳,、最具有經(jīng)濟效益的解決方案,被廣泛用于信息安全性要求特別高的場合,。生物識別技術(shù)是利用人體的生物特征鑒別每個人的真實身份,,主要包括虹膜、面孔,、指紋,、掌紋等。其中以指紋識別技術(shù)最為成熟穩(wěn)定,。智能卡技術(shù)和指紋識別技術(shù)的結(jié)合使用,,具有優(yōu)勢互補的特點。智能卡作為個人身份及指紋信息的存儲載體,,利用指紋的唯一性達到個人身份鑒別的目的,,為智能卡技術(shù)和指紋識別技術(shù)的應(yīng)用提供了更加廣泛的發(fā)展空間。
    本文介紹了采用ET44M210芯片為基礎(chǔ)的一個智能銀行卡系統(tǒng)的實驗設(shè)計方法,,其中ET44M210為智能卡,,PC機模擬讀卡機??紤]到預(yù)防手指模型欺騙技術(shù),,采用輸入密碼加指紋雙重驗證的方式,。

1 硬件系統(tǒng)結(jié)構(gòu)
1.1 實驗中采用的芯片簡介
1.1.1 ET44M210微處理器
    ET44M210微處理器采用精簡指令集的結(jié)構(gòu)(RISC),外接6MHz的晶振,,除條件轉(zhuǎn)移指令需要二個時鐘周期外,,所有指令只要一個時鐘周期。在芯片內(nèi)部整合了USB,、16位模數(shù)轉(zhuǎn)換,、串行周邊控制界面(SPI)等功能。處理器內(nèi)部擁有16kB ROM,、1.3kB RAM,、42個IO口,供電電壓3.6~5V,。
    ET44M210芯片是一款低價格、高性能,,采用CMOS工藝制造,,具有RISC架構(gòu)的8位微控制器芯片。芯片采用SMA封裝,,引腳數(shù)為100,,由臺灣義統(tǒng)電子股份有限公司(Etoms Electronics Com)設(shè)計生產(chǎn)。ET44M210的設(shè)計充分體現(xiàn)了SoC化產(chǎn)品的特征,。圖1 ET44M210的模塊結(jié)構(gòu)圖,。

a.jpg


1.1.2 ET44M210芯片的開發(fā)工具
    ET USBICE仿真軟件ET44M210芯片采用“USB接口仿真+實驗?zāi)0?rdquo;作為硬件開發(fā)工具,如圖2所示,。開發(fā)板的前半部分是仿真模板,,在其上有一個ET44M210芯片,內(nèi)部固化了仿真程序,。仿真模板通過板上的USB接口與PC機通信,,在仿真軟件的配合下構(gòu)成一個低成本、高性能的在線仿真器ICE和寫入器,。

b.jpg


    開發(fā)板的后半部分是實驗?zāi)0?,在其上也有一個ET44M210芯片,用戶通過實驗?zāi)0暹M行系統(tǒng)開發(fā)和模擬實驗,。實驗?zāi)0迳嫌?個USB接口供用戶使用,。實驗板上還有1個48引腳的插座,可供連接I/O接口,、ADC,、PWM、SPI等使用,。
    ET44M210芯片采用ET USBICE仿真軟件作為軟件開發(fā)工具,,如圖3所示,。

c.jpg


    ET USBICE仿真軟件使用USB接口與PC計算機進行通信。軟件具有標(biāo)準(zhǔn)的通用仿真軟件界面和工程導(dǎo)向管理功能,,適用于Windows98/2000/XP等多種操作系統(tǒng),,可以很方便地對源程序進行編寫、編譯,、偵錯,、仿真運行、代碼生成,、寫入等全過程,。
1.2 指紋識別簡介
    (1)指紋模塊的結(jié)構(gòu)。本系統(tǒng)的指紋采集模塊使用的是某公司的指紋模塊,,它包括指紋傳感器,、指紋識別芯片。若需要大于16用戶的指紋數(shù)據(jù),,可以使用PC存儲器內(nèi)的指紋數(shù)據(jù),。
    (2)指紋模塊的采集功能。該模塊在本系統(tǒng)中具有指紋采集的功能,。將采集到的指紋存儲在模塊中后傳輸給PC并保存,。
    (3)指紋模塊的識別功能。該模塊在本系統(tǒng)中具有指紋判斷的功能,。將采集到的指紋與先前存儲的指紋相鑒別,,識別出是否是正常的用戶,并將識別結(jié)果保存,。
    (4)指紋采集與識別,。流程如圖4所示。

d.jpg



2 系統(tǒng)原理及框圖
2.1 ET44M210的功能
    (1)通信功能,。通過USB接口與PC機連接,,傳輸已經(jīng)加密的指紋信息及用戶銀行個人信息,然后由PC機將之解密,,與中央數(shù)據(jù)庫比較,。
    (2)運算功能。IC卡在向外傳輸命令之前都會先將其按相應(yīng)算法加密,,同理,,IC卡在收到PC機傳來的加密信息后,用相應(yīng)算法對信息進行解密,,具體算法請參見系統(tǒng)原理及框圖,。
    (3)內(nèi)部信息管理功能。由于卡內(nèi)存儲信息量很少(用戶個人信息及銀行存款信息),,故信息系統(tǒng)不必做得很復(fù)雜,,采用定長存儲方式,,可以實現(xiàn)信息的建立、修改,、刪除,、維護等基本操作。另外還要實現(xiàn)信息訪問的安全控制,,如對里面的信息進行修改時,,要有不同的安全控制等級。
    (4)命令處理功能,。智能卡與PC機之間通信采用相應(yīng)的協(xié)議,,為實現(xiàn)模擬的真實性,我們在此處使用現(xiàn)在通用的智能卡通信標(biāo)準(zhǔn)協(xié)議:使其支持ISO7816-4,,6,,8,9智能卡標(biāo)準(zhǔn),。根據(jù)PC機上傳輸?shù)牟煌钸M行相應(yīng)的處理,。
    (5)擴展功能?;竟δ苤膺€要在其上加入液晶顯示功能及語音功能。其中液晶顯示用戶的基本信息,,語音則通過單片機的AD和PWM功能實現(xiàn),,通過功放發(fā)出聲音“請放入手指”及“確認(rèn)通過”、“確認(rèn)失敗”的聲音,。
2.2 PC機的功能
    (1)通信功能,。通過USB接口與智能卡進行通信,且產(chǎn)生隨機數(shù)通過RSA及ECC算法對數(shù)據(jù)進行加解密,;與指紋傳感器進行通信,,得到相應(yīng)的指紋數(shù)據(jù)。
    (2)數(shù)據(jù)庫管理功能,。模擬中央數(shù)據(jù)庫,,存儲大量用戶信息,以采入的指紋數(shù)據(jù)為標(biāo)準(zhǔn)進行查找,。
    (3)模糊比較功能,。在進行指紋比較過程中,所得到的數(shù)據(jù)與原始數(shù)據(jù)肯定存在一定程度的偏差,,因此可設(shè)定好百分比,,只要偏差在此允許范圍內(nèi)便可默認(rèn)為一致。
    (4)數(shù)據(jù)讀取顯示功能,。PC機通過和單片機通訊可以讀到其相應(yīng)數(shù)據(jù),,在屏幕上可以顯示以下內(nèi)容:
    修改用戶密碼或指紋密碼,; (CHANGEPIN)
    消費/取現(xiàn);(DEBITFORPURCHASE/CASHWITHDRAW)
    讀余額,;(GETBALANCE)
    輸入密碼,; (GETPIN)
    中英文選擇;(CHINESEENGLISH)
    打印憑證: (PRINT)

e.jpg



3 軟件設(shè)計
3.1 系統(tǒng)工作流程
    單片機首先復(fù)位,,然后發(fā)消息等PC機回復(fù)確認(rèn)是否正確通信,,PC機回復(fù)信息確認(rèn)通信正常。然后單片機發(fā)送身分確認(rèn)請求,,要示PC機輸入密碼及指紋數(shù)據(jù),,這些數(shù)據(jù)是經(jīng)過加密之后傳輸?shù)模瑔纹瑱C收到確認(rèn),,然后根據(jù)其是否與內(nèi)部信息匹配做下一步處理,,如不匹配,則報錯,;如錯三次,,則顯示吞卡,如匹配,,則回復(fù)確認(rèn)消息,,PC機系統(tǒng)從中央數(shù)據(jù)庫調(diào)相關(guān)資料。然后用戶可以根據(jù)自己的需要與PC機通信,,并在液晶上顯示相關(guān)的操作過程,。
    PC機的鍵盤用來輸入用戶信息,且用數(shù)字鍵分別選擇用戶所需要的服務(wù),,如提款,、讀余額等等。同時在注冊新卡時,,可以輸入用戶信息,。
    其具體的定義為:
    a…確定;(OK)
    b…取消,;(CANCEL)
    c…取卡,;(GETCARD)
    d…選項上移;(MOVEUP)
    e…選項下移,;(MOVEDOWN)
    0~9…輸入密碼及所取款額,;(NUMBER)
    單片機系統(tǒng)中定義指示燈:
    燈1——亮為有卡插入,系統(tǒng)工作,;暗為無卡,;
    燈2——閃5下代表提現(xiàn)金過程;
    燈3——閃5下代表系統(tǒng)提示用戶取卡;
    燈4——亮代表輸入密碼次數(shù)超過限度,,機器吞卡:
    燈5——代表打印憑條過程,;
    通過鍵盤的信息將轉(zhuǎn)化為協(xié)議方式,通過USB接口把相應(yīng)命令輸入到單片機,。且用戶的相關(guān)信息及系統(tǒng)的修改時間將被記憶到計算機的數(shù)據(jù)庫中,。圖6單片機、PC機的軟件流程,。

f.jpg


3.2 指紋采集與識別
    PC機收到單片機的通信確認(rèn)消息,,回復(fù)后,進行指紋數(shù)據(jù)采樣和密碼輸入,,對其進行加密后傳給單片機進行相關(guān)的驗證,。一旦成功,則從中央數(shù)據(jù)庫中調(diào)所需要的數(shù)據(jù),,面向用戶服務(wù),。當(dāng)出現(xiàn)用戶修改密碼情況則與卡進行相關(guān)通信。當(dāng)操作完成后,,控制打印機打印憑條,,保存中央數(shù)據(jù)庫的修改。
3.3 通信協(xié)議定義
    主要的通信協(xié)議根據(jù)現(xiàn)在通用的ISO7816協(xié)議定義機器和單片機之間的命令,。
    ·命令Command:終端向IC卡發(fā)出的一條信息,,該信息啟動一個操作或請求一個應(yīng)答。
    ·終端Terminal:為完成交易而在交易點安裝的設(shè)備,。
    ·響應(yīng)Response:IC卡處理完成收到的命令報文后,,返回給終端的報文。
    ·報文Message:由終端向卡或由卡向終端發(fā)出的,,不含傳輸控制字符的字符串。
    ·報文鑒別代碼Message Authentication Code:對交易數(shù)據(jù)及其參數(shù)進行運算后產(chǎn)生的代碼,,主要用于驗證報文的完整性,。
    ·明文Plaintext:沒有加密的信息。
    ·密文Ciphertext:通過密碼系統(tǒng)產(chǎn)生的不可理解的文字或信號,。
    ·密鑰Key:控制加密或解密轉(zhuǎn)換操作的符號序列,。
    ·加密算法Cryptograhpic Algorithm:為了隱藏或揭露信息內(nèi)容而變換數(shù)據(jù)的算法。
    ·對稱加密技術(shù)Symmetric Cryptographic Technique
    ·數(shù)據(jù)完整性Data Integrity:數(shù)據(jù)不受未經(jīng)許可的方法變更或破壞的屬性,。
    ·非對稱加密技術(shù)Asymmetric Cryptographic Fechnique,。
    ·響應(yīng)狀態(tài)碼:

g.jpg



4 結(jié)束語
    本文討論了一種具有指紋識別功能的智能卡系統(tǒng)的設(shè)計方法,兼容指紋識別的智能卡讀寫器可以應(yīng)用在需要身份認(rèn)證的銀行系統(tǒng)以及其他安全性要求比較高的身份認(rèn)證管理系統(tǒng)中,。該設(shè)計采用的指紋識別技術(shù)和智能卡技術(shù)的結(jié)合使用,,提高了系統(tǒng)的安全防護能力,改善了系統(tǒng)整體的可靠性和安全性,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。