鍵盤信息泄漏與防泄漏鍵盤設計與實現(xiàn)
摘要 簡要介紹鍵盤的工作原理,分析鍵盤的信息泄漏問題;提出預防信息泄漏鍵盤的設計;重點介紹我們研制的紅黑分離式防信息泄漏鍵盤的設計與實現(xiàn)。
本文引用地址:http://www.ex-cimer.com/article/202200.htm1 鍵盤工作原理概述
鍵盤是計算機中最通用的設備,也是除顯示器外信息最容易被截獲并被復現(xiàn)的設備。按照紅黑分離式防信息泄漏原理,我們成功地開發(fā)了紅黑分離式防信息泄漏鍵盤。
首先分析一下鍵盤的工作原理。現(xiàn)在的鍵盤主芯片只有1個。1個鍵盤由專用芯片、按鍵和接口3部分組成。其中專用芯片提供主機接口、行線、列線及鍵盤分系統(tǒng)控制微程序;按鍵被安排在行列線的交叉點上;主機接口共4根線:電源、地、時鐘、數(shù)據(jù)。工作原理如下。
① 時鐘和數(shù)據(jù)線在主機方和鍵盤方的引腳都是OC門,正常時電平為高。主機和鍵盤任何一方都可以把這兩根線上的電平拉低。當兩根線都為高時,鍵盤可以發(fā)數(shù)據(jù);當時鐘為低時,禁止鍵盤發(fā)送數(shù)據(jù);當時鐘為高、數(shù)據(jù)為低時,表示主機要發(fā)送命令,鍵盤要準備接收。
② 加電后鍵盤開始自檢,如自檢正常,則向主機發(fā)出AAH,并開始掃描按鍵。
③ 判斷出有鍵按下后向主機發(fā)這一鍵的掃描碼并開始計時,然后繼續(xù)掃描。若0.5 s后,這個鍵仍未抬起,且沒有新鍵按下的話,就要連續(xù)發(fā)這一鍵的掃描碼:每秒30個。最多支持3個鍵同時按下。在0.5 s內(nèi)若有新鍵按下的話,就為新鍵計時。
④ 待有鍵抬起時發(fā)這一鍵的結(jié)束碼。
⑤ 收到主機發(fā)來的命令碼后,鍵盤發(fā)FAH以應答,并開始執(zhí)行這一命令。
鍵盤與主機通信的數(shù)據(jù)規(guī)則是:每組數(shù)據(jù)由11位組成:1位啟始位(邏輯0)、8位數(shù)據(jù)位(低位在前)、1位校驗位(奇校驗)、1位停止位(邏輯1)。 其數(shù)據(jù)位的數(shù)據(jù)格式為:
時鐘是鍵盤分系統(tǒng)發(fā)出的方波,周期約為80μs下降沿有效,只在發(fā)碼的時候才有時鐘。每個鍵有1個掃描碼。主機還會發(fā)一些命令。表1給出了每個鍵的掃描碼。
表1 鍵盤掃描
這是一個開放式的工業(yè)標準,PC機的鍵盤都是這樣的。其與主機的通信必須按上述標準執(zhí)行。這為零配件的生產(chǎn)、維修、使用提供了極大的方便,但同時也使鍵盤按鍵造成信息泄漏成為了可能。
2 鍵盤信息泄漏的分析
為了驗證鍵盤信息泄漏的電磁場的特性,進行如下試驗:當鍵盤連續(xù)保持按下“H”鍵時,用頻譜儀測量鍵盤與主機連接的信號線的傳導發(fā)射特性,結(jié)果如圖1所示。
圖1 鍵盤的傳導發(fā)射特性
當按不同的鍵時,頻譜儀接收到的譜線發(fā)生頻移。按信息的相關原理證明,所得的譜線與按鍵信息相關,說明其中含有鍵盤的掃描碼信息。該信息為鍵盤編碼,并將其定義為紅信號。
下面具體分析一下鍵盤產(chǎn)生的紅信號走過的路徑。圖2是普通鍵盤的電路圖,是用8051單片機實現(xiàn)的。
圖2 普通鍵盤電路
圖2中鍵陣列部分的引腳(P0、P2和P1的一部分)流過的是高低變換的電平,用以判斷哪個鍵按下了,哪個鍵抬起了。這些信號即使被截獲也是沒有意義的,因此,將它們定義為黑信號。此外復位電平、晶振等也為黑信號。
鍵盤有2根信號線與主機相連,即時鐘線(KBDCLK)和數(shù)據(jù)線(KBCDATA)。時鐘線提供鍵盤與主機通信時的時鐘信號,由鍵盤發(fā)出,下降沿有效。也就是說在每個時鐘的下降沿,主機將鍵盤準備好的數(shù)據(jù)讀入累加器“ACC”中,讀到有效的“停止位”后送CPU處理。但對于同一種鍵盤來說,時鐘的周期、頻率、電平高低都是一樣的;對于不同鍵盤會略有不同。在同一個鍵盤中,發(fā)出的所有數(shù)據(jù)的時鐘都是相同的。所以這一信號與按鍵信息無關,也是黑信號。鍵盤有不同的鍵,它們被依此選通后,將通過數(shù)據(jù)線發(fā)出相應的鍵碼數(shù)據(jù)傳送給主機,所以,圖2中只有數(shù)據(jù)線上走的是紅信號。
下面再分析一下在芯片內(nèi)部的紅信號的通路情況。圖3為8051的內(nèi)部框圖。
圖3 8051框圖
圖3中以空心箭頭表示紅信號的路徑。在8051內(nèi)部,這一部分發(fā)出列掃描電平,讀入行掃描電平,鍵按下后ALU通過計算將放在累加器ACC中。ACC再一位一位地送到P3的某個引腳上。在芯片內(nèi)部,這一紅信號是串行二進制碼數(shù)據(jù),其波特率為12.5 Kbps,脈沖寬度為80μs,轉(zhuǎn)換時間為 1.4μs,奇校驗。具體波形如圖4所示。
圖4 鍵盤發(fā)“H”的掃描碼波形
通過上述試驗可知,鍵盤中紅信號的路徑是從微處理器中的累加器開始,經(jīng)一個數(shù)據(jù)引腳至主機數(shù)據(jù)口止的一段電路上。
鍵盤掃描周期諧波的RF輻射有兩種主要的威脅:其一為攻擊鍵盤電纜在其響應頻率諧波的輻射;其次是攻擊被非線性交叉效應調(diào)制的返回信號中被檢波的掃描碼。
3 紅黑分離式防信息泄漏鍵盤
3.1 設計
為了預防鍵盤泄密,我們研制了紅黑分離式防信息泄漏鍵盤。這種鍵盤使用光信號傳輸數(shù)據(jù),鍵盤與主機間用塑料光纜連接,鍵盤以電池供電,使其最大限度地減小電磁輻射。
所設計的低電壓電路,用2節(jié)5號電池供電。使用低電壓的8051單片機作主芯片,實現(xiàn)鍵選掃并發(fā)送數(shù)據(jù)。為了省電,設計中采用一種技術,即在沒有鍵按下時單片機處于休眠狀態(tài)。
DIY機械鍵盤相關社區(qū):機械鍵盤DIY
p2p機相關文章:p2p原理
評論