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