采用滾動數(shù)碼的鼠標(biāo)概念防窺視密碼鍵盤
摘 要:介紹了一種新穎的個人身份碼(PIN)輸入方法及其電路。利用鼠標(biāo)概念和3~5個鍵,操作人員可以輸入任意希望的密碼。介紹了這種鍵盤的關(guān)鍵技術(shù)。
關(guān)鍵詞:個人身份碼(PIN) 鍵盤 鼠標(biāo) 防窺視 密碼
隨著信息技術(shù)的發(fā)展,各種交易卡、身份卡也越來越多地進入到人們的日常生活。在這些活動中,經(jīng)常需要輸入幾位數(shù)碼的口令或密碼即個人身份碼(Personal Identify Number/PIN)以確認(rèn)身份。目前,在自動取款機(ATM)上以及儲蓄所和大部分證券交易所都使用數(shù)碼位固定的密碼小鍵盤。這種小鍵盤一般包括0~9共10個數(shù)字鍵和確認(rèn)等若干個功能鍵。這種鍵盤的主要缺陷是容易被盜竊分子通過觀察交易者輸入密碼的動作或用微型攝像機等工具竊去交易密碼,給交易者造成經(jīng)濟損失、給金融機構(gòu)造成誠信損失。這種鍵盤也容易被身旁的人窺視,給交易者造成不必要的尷尬。因而要求不斷地研究新的保密程度高的身份確認(rèn)技術(shù),防止PIN被他人窺視和竊取。在一些安全級別要求高的場合,如國家安全、軍事指揮機關(guān)等可以采用聲音譜、眼底圖像識別或者多重身份識別方法。有些技術(shù),例如指紋識別技術(shù)的身份識別誤差較大、成本高,因此目前這種數(shù)碼位固定的密碼鍵盤仍然是使用場合最廣泛的密碼輸入方法。本文介紹一種在鼠標(biāo)概念基礎(chǔ)上研究開發(fā)的密碼輸入方法,或者稱為密碼鼠標(biāo)。這種密碼鼠標(biāo)采用滾動的數(shù)碼輸入方式,只有3~4個鍵,其輸出編碼結(jié)構(gòu)、數(shù)碼傳輸方法和傳輸率等與現(xiàn)行密碼鍵盤完全相同,最大的不同是它可以完全防止輸入密碼時被他人窺視。
1 鍵盤的整體結(jié)構(gòu)和工作原理
從外部看本鍵盤包括兩部分:一部分是選碼與操作部分;另一部分是數(shù)碼顯示部分,圖1(a)、(b)分別給出了這種鍵盤的兩種外型圖。
圖1 兩種外型圖
選碼與操作部分包括功能電路和若干個操作鍵,除了有與原來鍵盤相同的功能鍵外,還有一個選碼鍵(或選碼轉(zhuǎn)輪),用該鍵取代原來鍵盤的0~9 10個數(shù)字,通過“+”或“-”的方式滾動選定0~9其中之一,然后再選定輸入。圖2是其結(jié)構(gòu)框圖。
圖2 結(jié)構(gòu)框圖
顯示部分是一個一位的數(shù)碼顯示管,該部分即時顯示選碼鍵(或選碼轉(zhuǎn)輪)選中的數(shù)碼。顯示部分利用光學(xué)原理和光學(xué)材料限制數(shù)碼顯示視角。
上述兩部分組合,完成密碼的輸入過程。工作原理如下:開始時鍵盤的顯示部分會顯示一個0~9之間的隨機數(shù)。通過轉(zhuǎn)動轉(zhuǎn)輪改變BCD可逆計數(shù)器的數(shù)值,當(dāng)轉(zhuǎn)輪正向轉(zhuǎn)動時,計數(shù)器正向計數(shù),即按0-1-2-3-4-5-6-7-8-9-0的規(guī)律計數(shù);轉(zhuǎn)輪逆向轉(zhuǎn)動時,計數(shù)器逆向計數(shù),即按0-9-8-7-6-5-4-3-2-1-0的規(guī)律計數(shù)。在該BCD碼計數(shù)器計數(shù)的同時,顯示部分即時顯示該計數(shù)器的數(shù)值。當(dāng)選中要輸入的數(shù)字時,按動“選定”鍵,該BCD碼并行地存儲到鎖存器中,然后該BCD碼按設(shè)定的傳輸率輸出。按順序全部輸入完若干位密碼后,按“確認(rèn)”鍵。
通過加入其它的聲光提示信息還可以提高鍵盤的操作靈活性。
2 鍵盤的實現(xiàn)電路和關(guān)鍵技術(shù)
2.1 硬件構(gòu)成
實現(xiàn)上述功能可以采用分立電子元件也可以用單片機實現(xiàn),還可以用可編程邏輯器件實現(xiàn)。根據(jù)現(xiàn)在的技術(shù)條件,采用單片機實現(xiàn)上述功能比較方便。利用8051單片機的緊湊結(jié)構(gòu)芯片AT89C2051可以在很小的面積上布線,并完成圖2的功能。由于AT89C2051的外部輸入/輸出引線有限,利用軟件譯碼會占用7條輸入/輸出線,所以在AT89C2051和7段LED數(shù)碼管之間接一個BCD碼到7段顯示碼譯碼器CD4056。
從外部看,用P1.0、P1.1、P1.2、P1.3和P3.7作為五個熱鍵(鼠標(biāo)式的只用三個)的輸入;P3.2、P3.3作為選碼轉(zhuǎn)輪的輸入接口;由P1.4、P1.5、P1.6、P1.7共4位即時傳送BCD碼到CD4056;CD4056的輸出直接驅(qū)動7段LED數(shù)碼管。P3.5為串行通信口,用于傳送經(jīng)確定后的BCD碼。
2.2 選碼轉(zhuǎn)輪和可逆計數(shù)器
選碼轉(zhuǎn)輪是一個在內(nèi)徑成環(huán)形均勻布有12小孔的圓形轉(zhuǎn)輪,在PCB板上設(shè)有一個紅外發(fā)光管和兩個紅外接收管。轉(zhuǎn)輪轉(zhuǎn)動會切割紅外光線,通過光電二極管和轉(zhuǎn)輪上的光孔形成信號,經(jīng)過整形后利用兩個信號輸入的先后順序識別轉(zhuǎn)輪的正反轉(zhuǎn)。
2.3 隨機數(shù)發(fā)生器
為了防止他人從輸入的動作和規(guī)律看出所輸密碼,鍵盤的每次啟動或每輸入一位碼后再輸入新一位碼時,鍵盤總是在0~9之間隨機顯示一個數(shù),在此數(shù)的基礎(chǔ)上再進行加/減計數(shù)。這個隨機數(shù)的產(chǎn)生用單片機一個內(nèi)部寄存器完成。該寄存器不斷進行BCD不帶進位的高速加計數(shù),當(dāng)需要產(chǎn)生隨機數(shù)時,從該寄存器即時取出當(dāng)時的計數(shù)值。由于取數(shù)是操作人員按動“確認(rèn)”鍵后進行,是一個隨機時刻,所以取出的數(shù)也是一個0~9之間的隨機數(shù)。
3 視角限制方法
在顯示器的前面放置一層內(nèi)部平面經(jīng)過凹凸處理的透光材料。該層材料使與顯示器平面法線方向平行的光線不失真射出,使偏離中心的光線發(fā)生散射,從而限制顯示器在垂直方向的視角,即只允許交易者個人看到顯示器的內(nèi)容。調(diào)節(jié)顯示器的電流使顯示器的亮度為一個合適的值。通過調(diào)節(jié)顯示器表面與透光材料的距離h也能達到限制顯示器在垂直方向的視角,如圖3。
圖3 顯示器部分剖面圖
圖4是根據(jù)上述原理制作的鼠標(biāo)結(jié)構(gòu)密碼鍵盤圖。首先從功能上進行對比實驗,對比鍵盤是深圳某公司出品的碼位固定的明碼鍵盤,當(dāng)輸入一個0~9之間的數(shù)字時,該鍵盤串行傳送一個8位的二進制碼3X,X是要傳送的數(shù)字。制作的鍵盤采用相同的編碼和傳輸率,接收端是一臺計算機。經(jīng)過100多次輸入6位密碼,兩者性能完全相同。
設(shè)計的顯示器視角為15
評論