朱靜 閩芳 陳臘梅 陳健鵬 陳曉剛



摘要:指紋支付是支付方式的一個新的方向。指紋識別技術是依靠指紋的唯一性,通過對指紋的采樣、特征值提取來實現身份識別的技術。和傳統的帳號加密碼或是Ic卡掃描識別等身份識別方式相比,指紋支付具有更高的安全性、不會遺忘、丟失、不變性、唯一性、防偽性能好和使用方便等優點。本文設計并實現了一個通過指紋識別方式,完成支付等功能的系統,同時設計了無線功能,可以完成主機和客戶端的無線數據通訊、同步功能。該系統可以方便快捷地完成支付功能。
關鍵詞:指紋識別;支付
中圖分類號:TP393.02 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2015.05.028
0 引言
當前,人們進行支付時,多采用現金、充值IC卡的方式。隨著IC卡技術的普及,越來越多商戶提供了充值IC卡的支付方式,當人們在一些商戶消費時,無需現金,直接用充值卡進行支付。但是用IC卡支付的方式存在不少弊病,例如:不易保管,容易丟失等,而且僅僅依靠密碼或是簽名進行身份驗證,并不能真正地確認持卡人是否為其真正的主人,那么一旦用戶的IC卡丟失或是被竊,就會有被盜用的危險。
指紋識別技術是利用人類指紋的唯一性,通過對指紋圖案的采樣、特征信息提取并與庫存樣本相比較的過程來實現身份識別的技術。與帳號加密碼、充值Ic卡等傳統的身份識別手段相比,指紋識別技術具有不會丟失、不會遺忘、唯一性、不變性、防偽性能好和使用方便等優點,所以已經逐步在門禁、考勤、金融、公共安全等領域得到應用。本文將指紋支付應用到消費領域,設計并完成一種全新的指紋支付系統。
1 指紋支付的概念
指紋支付,也叫指紋消費,是一種利用指紋認證的生物識別技術進行繳費支付的方式。該支付方式采用指紋系統進行消費認證,即顧客使用指紋注冊成為商家會員,通過指紋識別即可消費或打折,簡化了消費程序。
由于生物識別技術認定的是人本身,而每個人的生物特征,包括指紋在內,都具有唯一性和一定時期內的穩定性,不易被偽造和假冒,所以這一支付方式在一定程度上確保了用戶隱私不受侵犯,而且比其他支付方式更便捷。因此,指紋支付將會成為一種新生的支付方式。
使用指紋支付,可以省去辦卡的費用、節約資源。在一些需要刷卡消費的場所,比如餐館、商店、網吧、食堂或是連鎖賣場使用指紋支付,無疑是一種更新穎、更時尚的消費方式,給顧客和商家帶來便利的同時,也提升顧客的消費體驗感。2系統功能設計
本系統實現的功能是將指紋識別技術應用于商戶支付,根據應用的需求,需要設計兩類用戶:注冊用戶和管理員,功能如下:
注冊會員:充值、查詢余額、指紋支付;
管理員:建立新賬戶、會員管理、金額管理;
本系統設計了服務器端和客戶端,服務器端和客戶端采用無線方式傳輸數據。當用戶在支付時,無需到柜臺進行支付,只需在座位上用客戶端進行指紋刷卡,就可以將數據傳遞到服務器端,從而進行支付;
服務器端:提供指紋支付、指紋充值功能,同時可以處理客戶端發送來的信息,進行相應處理,處理完成后,將結果返回給客戶端;
客戶端:通過采集指紋信息,發送給服務器端進行處理,從而完成支付或是充值功能,并接收服務器端返回的信息。
3 系統實現
3.1 硬件設計
本系統服務器端和客戶端均采用ST(意法半導體)公司生產的ARM CortexM3內核的STM32F103ZET6的主控MCU。該芯片最高工作頻率72MHz,具有512KB的flash存儲空間,64KBSRAM,帶多達112個I/O口,11個定時器,13個通訊接口。該MCU完全可以滿足本系統的功能和性能要求。
本文通過STM32F 103ZET6外接FLASH模塊、SD卡模塊、LCD模塊、LED模塊、指紋模塊、矩陣鍵盤模塊、NRF24L01無線通訊模塊等模塊完成本文提到的所需要功能。系統結構如圖1所示。
1.指紋模塊
指紋模塊的CPU是一片DSP芯片,型號為PS1802,指紋采集使用的是CMOS芯片,CMOS芯片主要是對指紋進行“照相”,生成指紋特征值。指紋模塊通過USART接口與服務器端或是客戶端進行通訊和數據交換。
2.TFT-LCD模塊
TFT-LCD,是在亮度、對比度、功耗、壽命、體積以及重量等綜合性能上全面趕超CRT的顯示器件,并具有觸屏功能,通過它來顯示點陣漢字以及其他需要顯示的信息。
3.FLASH模塊
FLASH(閃存)則是一種非易失性內存,本文用它來存儲點陣漢字,既能達到快速提取點陣信息的功能,又不占用有限的編程空間SRAM,提高程序的運行效率和空間。
4.NRF24L01模塊
該模塊主要用來完成服務器端和客戶端無線通訊功能,需要選擇從功耗、性能上相對合適的無線傳輸模塊,因此本文選擇了NRF24L01模塊。NRF24L01是NORDIC公司生產的一款無線通信通信芯片,采用FSK調制,內部集成Enhanced Short Burst協議。可以實現點對點或是1對6的無線通信,無線通信速度可以達到2M(bps)。通過它可以實現服務器端和客戶端的通訊。
通過對硬件模塊功能的分析,明確了各個模塊的元器件的選擇,最終硬件電路圖設計如圖2所示。
3.2 數據存儲結構
由于用戶數量是不確定的,所以無法采用數組方式來存放會員數據,所以本系統考慮采用鏈表結構來存放數據,節約動態分配空間。鏈表結構可以充分利用計算機內存空間,實現靈活的內存動態管理。
由于一個用戶至少要存儲兩個指紋的信息,所以需要兩個鏈表來進行數據記錄用戶及其指紋的信息。另外管理員信息需要單獨一個鏈表來存儲,本文創建了三個鏈表,如圖3所示。
3.3 軟件模塊設計
本系統的所有操作都是以指紋識別為基礎,指紋模塊與服務器端和客戶端都是通過串口進行通訊,主要實現指紋匹配功能、指紋采集功能、指紋刪除功能、清空指紋庫功能。
指紋匹配功能:將讀入的指紋信息與鏈表中指紋信息進行匹配,如果匹配成功,返回指紋編號,顯示指紋對應的用戶的信息。如果在一個循環周期內沒有搜索到指紋,則返回“匹配失敗”。
指紋采集功能:新用戶注冊時,需要錄入兩個指紋,因此需要通過指紋采集器進行二次指紋采集,然后制作成指紋模版,并將該模版保存到鏈表中。
指紋刪除功能:當用戶不再需要在商戶進行消費時,可以將數據進行刪除,空出存儲空間,便于新會員加入。
清空指紋庫功能:提供清空全部指紋功能,可將系統還原至初始化。
指紋匹配算法主要涉及:指紋圖像預處理、特征點提取和特征點匹配。圖像預處理又包括圖像場的計算、分割、均衡化、平滑化、增強、二值化、細化等,通過這些預處理使特征值更容易被提取,如圖4所示。
4 結束語
本文將指紋識別技術應用于支付領域,設計并實現了一整套指紋支付系統。該系統包含管理員和普通會員兩種用戶,方便進行權限控制。同時為了方便用戶使用,設計了服務器端和客戶端,并采用無線通信方式進行數據傳輸。該系統極大解決了當前用IC卡進行支付的弊病,提升用戶支付體驗感,應用前景廣闊。