鍵盤信息泄漏與防泄漏鍵盤設(shè)計(jì)與實(shí)現(xiàn)
普通鍵盤的編碼是固定的標(biāo)準(zhǔn)值,如表1所列。這種明碼如果防御不當(dāng),一旦被截獲將可被復(fù)現(xiàn),造成嚴(yán)重后果。
這里的防御技術(shù)包括可編程的鍵盤微控制器。由于掃描周期是隨機(jī)的,在它們傳送給PC機(jī)前加密掃描碼。當(dāng)按鍵時(shí),在周期內(nèi)鍵掃描次數(shù)將是隨機(jī)的,并且改變了值,而不是原來(lái)的常數(shù)。這樣,當(dāng)用戶打印圖案或所有情況下使用時(shí),即使由攻擊者截獲到該值,但給他們的不是該按鍵值的信息。
為此需要修改系統(tǒng),自己設(shè)置密碼。我們改變了鍵盤微控制器的程序,即使對(duì)方能夠探測(cè)到鍵盤在工作中的電磁泄漏信息,對(duì)于截獲的信息也是沒(méi)有意義的。因?yàn)殒I盤產(chǎn)生并發(fā)出的光信號(hào)不是通用的掃描碼,如圖3中的紅信號(hào)通路中傳輸?shù)牟辉偈峭ㄓ脪呙璐a,而是密碼,到主機(jī)方有一個(gè)相應(yīng)的單片機(jī)接收密碼,并轉(zhuǎn)換成鍵盤標(biāo)準(zhǔn)碼送往主機(jī)。主機(jī)方的這一機(jī)構(gòu)密封在屏蔽機(jī)箱的內(nèi)部,電磁波不會(huì)泄漏出來(lái)。加密編碼還有一個(gè)好處,就是可以經(jīng)常更換編碼方式,這一點(diǎn)對(duì)于機(jī)要部門很有用。
這里只涉及PC 機(jī)的設(shè)備驅(qū)動(dòng)程序,并將其固化在鍵盤微控制器中。
下面主要討論鍵盤的設(shè)備驅(qū)動(dòng)程序或者稱為鍵盤微控制器程序算法。
① 實(shí)現(xiàn)的功能與第1節(jié)中描述的普通鍵盤的功能完全相同。
② 鍵盤要連續(xù)掃描每一個(gè)鍵,遇到一個(gè)鍵按下了就要發(fā)出數(shù)據(jù)說(shuō)明并開始記時(shí)。若在0.5 s之后這個(gè)鍵還沒(méi)有松開,就連續(xù)發(fā)這一鍵,每秒30個(gè)。
③ 在記時(shí)過(guò)程和連續(xù)發(fā)碼過(guò)程中,還不停頓地監(jiān)視其它鍵。
④ 在連續(xù)發(fā)一個(gè)鍵時(shí),若有其它鍵按下就停止發(fā)這個(gè)鍵,發(fā)新按下去的那個(gè)鍵并開始為其記時(shí)。
⑤ 若有鍵抬起,要發(fā)一個(gè)結(jié)束碼給主機(jī),告之這個(gè)鍵已抬起。
⑥ 在RAM中的位尋址區(qū)中固定104位,每一位為一個(gè)鍵提供標(biāo)志。掃描到某個(gè)鍵時(shí),先查看相應(yīng)的位。這個(gè)鍵以前按下了,設(shè)這一位是1;這個(gè)鍵以前沒(méi)按下,設(shè)這一位是0。然后再看現(xiàn)在按下沒(méi)有,現(xiàn)在剛按下發(fā)掃描碼,現(xiàn)在沒(méi)按下就去處理下一個(gè)鍵,現(xiàn)在抬起來(lái)了就發(fā)結(jié)束碼。
⑦ 這104個(gè)鍵要輪流掃描,同時(shí)要計(jì)時(shí)。如有鍵一直按著沒(méi)抬起來(lái),要在0.5 s之后連續(xù)發(fā),每秒發(fā)30個(gè)。同時(shí)按下的鍵達(dá)到4個(gè)時(shí),就不再記新的了。
根據(jù)上述算法鍵盤微控制程序編程流程如圖5所示。
圖5 鍵盤程序流程
3.2 實(shí)現(xiàn)
紅黑分離式防信息泄漏鍵盤中,單片機(jī)選擇了低電壓芯片,光纜選擇了直徑1 mm的塑料光纜。在鍵盤結(jié)構(gòu)上按紅黑分離規(guī)則進(jìn)行了結(jié)構(gòu)和電路兩部分設(shè)計(jì),做成了樣機(jī),并進(jìn)行了小批量生產(chǎn)。圖6是我們研制出的紅黑分離式防信息泄漏鍵盤。
圖6 TEMPEST-111型鍵盤
紅黑分離式防信息泄漏鍵盤可靠性很高,信息安全測(cè)試技術(shù)指標(biāo)可達(dá)A型機(jī)標(biāo)準(zhǔn)。用頻譜儀測(cè)試該紅黑分離式防信息泄漏鍵盤時(shí),結(jié)果如圖7所示。由測(cè)試結(jié)果可以看出已沒(méi)有電磁輻射了。
圖7 TEMPEST鍵盤發(fā)“H”時(shí)的頻譜
結(jié)束語(yǔ)
通過(guò)紅黑分離式防信息泄漏鍵盤的設(shè)計(jì)使我們體會(huì)到,要設(shè)計(jì)一種防信息泄漏設(shè)備,必須先進(jìn)行電路分析,找出紅信號(hào)的泄漏路徑。通過(guò)分析和論證,才能開始進(jìn)行電路的紅黑分離工作和軟件編碼的加密工作。在對(duì)電路紅信號(hào)線的屏蔽、吸收、隔離和接地的設(shè)計(jì)中,一定要避免紅信號(hào)被非線性交叉效應(yīng)調(diào)制,這是本設(shè)計(jì)成功的經(jīng)驗(yàn)之一。
更多計(jì)算機(jī)與外設(shè)信息請(qǐng)關(guān)注:21ic計(jì)算機(jī)與外設(shè)頻道
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
p2p機(jī)相關(guān)文章:p2p原理
評(píng)論