當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
引 言
   
基于密碼的訪問控制系統(tǒng)應(yīng)用在當(dāng)今是非常普遍的,但人們對(duì)其提供的安全等級(jí)經(jīng)常估計(jì)過高。通信傳輸速度和系統(tǒng)計(jì)算能力的提高使得系統(tǒng)受到惡意攻擊或“密碼掃描”的風(fēng)險(xiǎn)增加。在使用不安全的傳送方式時(shí),可能發(fā)生密碼被盜取的現(xiàn)象。例如典型的通過電話線的調(diào)制解調(diào)器連接,這種使用固定密碼的方法很不理想。
    跳碼技術(shù)是通過一個(gè)序列使訪問密碼在每次使用時(shí)改變。這樣,即使知道大量先前使用的密碼,也不能對(duì)新的密碼進(jìn)行預(yù)測(cè)。產(chǎn)生這樣一個(gè)序列需要使用可靠的加密引擎。Microchip公司提供多種基于KEEL0Q跳碼技術(shù)的編碼器,這些編碼器使得產(chǎn)生跳碼遠(yuǎn)程控制更為方便。
    本文采用Microchip公司的單片機(jī)PICl2C508和HSC300編碼器設(shè)計(jì)了一個(gè)密碼發(fā)生器,安裝于鍵盤和PC之間。一個(gè)5引腳插頭連接到PC,并向器件供電,而鍵盤插頭則插入5引腳插座。PC和鍵盤之間由時(shí)鐘線和數(shù)據(jù)線連接,允許鍵盤進(jìn)行正常的操作。當(dāng)傳送信息至互聯(lián)網(wǎng)時(shí),這個(gè)密碼發(fā)生器為通用訪問控制安全登錄創(chuàng)建一個(gè)“超級(jí)密碼”。

1 密碼發(fā)生器構(gòu)成與工作原理
1.1 鍵盤數(shù)據(jù)接收和發(fā)送

    目前使用的標(biāo)準(zhǔn)5孔屏蔽式連接器如圖1所示。其中包括時(shí)鐘線、數(shù)據(jù)線、地線和+5 V電源線,可以實(shí)現(xiàn)鍵盤和PC之間的雙向數(shù)據(jù)傳輸。

    通常,從鍵盤至PC的數(shù)據(jù)發(fā)送是通過按鍵或鍵釋放完成的。然而,某些配置數(shù)據(jù)(即重復(fù)、延遲和速率)可能反向傳遞。例如,在系統(tǒng)引導(dǎo)過程中,鍵盤使用集電極開路驅(qū)動(dòng)器對(duì)時(shí)鐘線進(jìn)行驅(qū)動(dòng)。PC可通過保持時(shí)鐘線為低電平來禁止鍵盤。如果PC將數(shù)據(jù)線保持為低電平而此時(shí)時(shí)鐘線為高電平,那么計(jì)算機(jī)發(fā)送請(qǐng)求發(fā)送信號(hào),鍵盤進(jìn)入接收模式。只有當(dāng)時(shí)鐘線和數(shù)據(jù)線同時(shí)處于高電平時(shí),鍵盤才被允許發(fā)送數(shù)據(jù)。
1.2 密碼發(fā)生器硬件構(gòu)成
   
密碼發(fā)生器硬件原理圖如圖2所示。

    當(dāng)SO被激活時(shí),PICl2C508接收HCS300編碼器產(chǎn)生的新信息。PICl2c508隨后將模仿鍵盤發(fā)送出正確序列的按鍵和釋鍵信息至PC。為防止鍵盤將此發(fā)送解讀為來自PC的“請(qǐng)求發(fā)送”,在發(fā)送期間將鍵盤與時(shí)鐘線和數(shù)據(jù)線隔離。為了簡(jiǎn)化電路,采用一個(gè)標(biāo)準(zhǔn)的4路雙向CMOS開關(guān)4066來切換密碼發(fā)生器,或鍵盤與PC線的連接。
    HCS300編碼器設(shè)計(jì)為,可以是密碼發(fā)生器的一部分,也可以像一把鑰匙一樣可移除的,從而允許方便地替換為具有不同加密密鑰或序列號(hào)的不同編碼器。HCS300和PICl2C508都采用8引腳SOIC封裝形式,消耗電流極低,并且都能在內(nèi)部產(chǎn)生用于操作密碼發(fā)生器的時(shí)鐘,功耗盡量低,以使傳輸線不會(huì)出現(xiàn)過載。另外,尺寸盡可能小、元件數(shù)盡可能少,從而盡可能采用較小的封裝。理想的情況是將整個(gè)電路安置在2個(gè)連接器之間較小的間隙中。除一對(duì)用于時(shí)鐘線和數(shù)據(jù)線上拉的電阻之外,無需其他元件即可實(shí)現(xiàn)全功能的跳碼密碼。
1.3 軟件設(shè)計(jì)
    軟件由3個(gè)代碼段組成:
    ◆用于HCS300編碼器的接收子程序。
    ◆鍵盤仿真子程序。
    ◆主循環(huán)程序。
    用于HCS300編碼器的接收子程序(RECEIVE子程序)收集H(2S300發(fā)送的最初64個(gè)數(shù)據(jù)位,并將其填充至一個(gè)8字節(jié)的緩沖器。其中最后兩個(gè)數(shù)據(jù)位將被忽略,因?yàn)樗鼈儾痪哂袑?duì)本應(yīng)用有用的信息。
    鍵盤仿真子程序根據(jù)IBM—PC/AT鍵盤協(xié)議實(shí)現(xiàn)鍵掃描碼的發(fā)送。
    當(dāng)CMOS開關(guān)將PC連接至鍵盤時(shí)鐘線和數(shù)據(jù)線時(shí),主循環(huán)程序?qū)?duì)LED輸出線進(jìn)行連續(xù)采樣,以檢測(cè)HCS300是否被激活。
    當(dāng)LED線變?yōu)榈碗娖綍r(shí),CMOS開關(guān)被激活以使時(shí)鐘線和數(shù)據(jù)線與鍵盤隔離,RECEIVE子程序?qū)⒈徽{(diào)用。軟件采用最簡(jiǎn)化的形式開發(fā),可對(duì)其采取一些優(yōu)化措施。例如:可使PIC12C508進(jìn)入“休眠”狀態(tài),以進(jìn)一步減小功耗。編碼器可能被移除,因此應(yīng)對(duì)編碼器的接入/激活進(jìn)行正確檢測(cè)。由于沒有解密過程,因此沒有其他方法可獲知發(fā)送操作是否已失敗,只能將第二個(gè)密碼字與接收到的第一個(gè)密碼字進(jìn)行對(duì)比,以確認(rèn)是否出現(xiàn)發(fā)送錯(cuò)誤。


2 加密原理

    編碼器HCS300使用KEELOQ跳碼技術(shù),使編碼器每次發(fā)送的數(shù)據(jù)都是獨(dú)一無二的。編碼器發(fā)送包括兩部分:第一部分稱為“跳碼部分”,在編碼器每次被激活時(shí)發(fā)生改變且被加密;第二部分是發(fā)送數(shù)據(jù)的非加密部分,主要包括編碼器序列號(hào),解碼器通過該序列號(hào)對(duì)其進(jìn)行識(shí)別。密碼字的組成如下:

    跳碼包括功能信息、識(shí)別值和一個(gè)同步計(jì)數(shù)器。在發(fā)送這一信息之前需通過加密算法對(duì)其進(jìn)行加密。加密算法使用64位加密密鑰。如果加密數(shù)據(jù)中的一位發(fā)生改變,則將導(dǎo)致輸出數(shù)據(jù)中平均有一半的位發(fā)生改變。這樣,每次發(fā)送時(shí)跳碼將徹底改變,因而無法對(duì)其進(jìn)行預(yù)測(cè)。解碼器使用同步信息來確定發(fā)送是有效的還是前一次發(fā)送的重復(fù),前一次密碼將被拒絕以防止密碼被盜取。HSC300編碼器發(fā)送2個(gè)溢出位,用來將同步計(jì)數(shù)器值的范圍從65 536擴(kuò)展到196 608次按鈕操作。HCS300編碼器發(fā)送數(shù)據(jù)的固定碼部分包括4位功能信息和2個(gè)狀態(tài)位。這2個(gè)狀態(tài)位表明是否進(jìn)行了重復(fù)發(fā)送,以及電池電壓是否過低。HCS300編碼器具有發(fā)送固定種子的能力,種子值連同計(jì)數(shù)器值、密鑰、序列號(hào)和其他信息一起,在編碼器首次初始化時(shí)通過編程寫入編碼器。HCS30C具有32位的種子。
    接收應(yīng)用程序(服務(wù)器上運(yùn)行的軟件)執(zhí)行一些簡(jiǎn)單的解碼和校驗(yàn)步驟,跳碼密碼可用來對(duì)大量電子服務(wù)的訪問進(jìn)行驗(yàn)證。密碼中固定的未加密部分可用來識(shí)別用戶和編碼器中激活的功能。

結(jié) 語
    本文設(shè)計(jì)的密碼發(fā)生器采用基于KEELOQ的跳碼密碼技術(shù),體積小、功耗低,特別適用于當(dāng)傳送信息至互聯(lián)網(wǎng)時(shí)為通用訪問控制安全登錄創(chuàng)建一個(gè)“超級(jí)密碼”。實(shí)踐證明,這種方式的加密方法非??煽?。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉