1 引 言
隨著RF遙控器件的成本在逐年下降,電子式遙控開鎖系統(tǒng)比機械式開鎖系統(tǒng)更有成本優(yōu)勢,從而導致該市場的進一步擴張,新的應用也在不斷涌現(xiàn),車庫門禁系統(tǒng)是其中之一。傳統(tǒng)的安防產(chǎn)品主要采用固定編碼集成電路,如PT2262、PT2272等編解碼芯片。但由于此類編解碼芯片的編碼長度有限,格式固定不變,十分易于在空中以捕捉電波碼字和掃描跟蹤等方法破解,只能用于一些對保密安全要求不高的場所。美國MICROCHIP公司的基于KEELOQ算法的系列滾動碼編碼芯片則克服了以上系統(tǒng)的缺點,已成功的應用于各種安防產(chǎn)品中,如閘門、車庫、銀行、自動防盜報警系統(tǒng)、身份識別、智能IC卡等領域。由于在傳輸代碼之前采用了先進的非線性位加密技術,產(chǎn)生具有極高保密性的滾動編碼。每一次發(fā)送的代碼都是惟一的、不規(guī)則的、且不重復,使得任何通過非法捕捉和掃描跟蹤等破譯手段都化為泡影。本文介紹了基于KEELOQ技術的HCS300芯片的編碼過程及基于PIC16C54的MCU解碼程序在車庫門禁系統(tǒng)中的應用。
2 系統(tǒng)工作原理
車庫門禁系統(tǒng)的目的是實現(xiàn)遙控無匙門禁技術(RKE),使駕駛員可以通過遙控器的按鈕來開關庫門,圖1為其原理結(jié)構(gòu)圖。系統(tǒng)由遙控編碼器及接收解碼器組成。其中遙控器由編碼芯片、發(fā)射電路組成,附加按鍵及電池,是袖珍發(fā)射裝置,可隨身攜帶;接收器由接收電路、解碼芯片、控制電路及執(zhí)行機構(gòu)組成,執(zhí)行機構(gòu)又包括門控電機、聲光報警等。下面分析系統(tǒng)各部分的設計及應用。
3 HCS300工作原理
3.1 KEELOQ技術介紹
KEELOQ實際上是一個“ASIC”的特別設計,內(nèi)含加密及解密技術。其核心在于KEELOQ演算法,即一種非線性的推算公式,當輸入數(shù)據(jù)進入這個算法時,其輸出對輸入而言是惟一的(不重復)結(jié)果。KEELOQ核心元件由三部分組成:制造商代碼(Manfacture's Code),長度為64 b,由制造商自行決定此代碼,這是不可泄露的原始密碼,遙控器的制造商代碼必須與接收解碼器相同;序號(Serial Number),長度為28 b,每一編碼IC或遙控器其序號均不相同,用來識別遙控器與接收器之間的關系,即使使用者同時有兩支遙控器來控制同一接收器,其序號也不相同;編碼密碼(Encryption Key),長度為64 b,這是利用制造商代碼及序號產(chǎn)生64 b的編碼密碼,這64 b的編碼密碼會被燒錄在HCS300內(nèi)部的E2PROM,這64 b的編碼密碼是用來產(chǎn)生跳碼的密碼。
3.2 KEELOQ密碼編碼過程
根據(jù)上述編碼材料,用MICROCHIP提供的編碼工具KEELOQ TOOL V2.00即可生成編碼密碼,如圖2所示,然后寫入HCS300的E2PROM中。而每當遙控器按鍵按下時,就會讀取按鍵輸入并更新同步計數(shù)器,同步碼及密碼編碼等經(jīng)KEELOQ算法加密后,產(chǎn)生32 b高度保密的滾動代碼。由于KEELOQ算法的復雜性和16 b同步碼每次傳輸時都要更新,故每次傳輸代碼都和上一次的代碼完全不同,因此這部分被稱為跳碼(HOPPING CODE)。這32 b的跳碼再結(jié)合序列號及按鍵信息構(gòu)成的34 b固定碼組成66 b發(fā)射信息,如圖3所示。
3.3 編碼器應用電路
本設計采用MICROCHIP公司的HCS300做編碼芯片,HCS300內(nèi)部集成了KEEl,0Q算法,帶4個按鍵接口,有15種功能可供使用,使用很簡單,只需添加發(fā)射電路即可。典型應用電路如圖4所示。當檢測有按鍵被按下時,HCS300被喚醒。延時去抖后進行加密運算形成跳碼,而完整的編碼信息由PWM端輸出(TX)到射頻電路發(fā)射。
4 基于PIC16C54的解碼原理
對于跳碼編碼可用由MICROCHIP公司提供的專用解碼芯片(如HCS5XX)進行硬件解碼,考慮到成本等因素,本系統(tǒng)采用單片機16C54進行軟件解碼。系統(tǒng)電路如圖5所示。圖中RF接收器來接收遙控器發(fā)射的信號,以PIC16C54進行軟件解碼,產(chǎn)生S0~S3的控制信號,以便對車庫門馬達,照明燈具及報警系統(tǒng)進行控制。
為了使發(fā)送器,接收器一起工作,發(fā)送器首先要被“學習”確認,“學習”確認完成后,解碼器將所學的序列號和同步值經(jīng)加密后存儲到E2PROM中,解碼器需要工廠代碼(只有相同工廠代碼的發(fā)射器才能進行學習),工廠代碼通常存儲到ROM中,以提高安全性。解碼器取得系列號之后先與工廠代碼結(jié)合產(chǎn)生與發(fā)射器相同的密鑰,并用這一密鑰進行解密滾動數(shù)據(jù)。解碼器接收到一次發(fā)送后,立即檢查序列號是否已被學習,如果是,則進行解碼過程,由生成的密鑰對滾動碼部分進行解密,用鑒別位來判斷解密否有效,如果以上通過,則檢查同步計數(shù)器是否匹配,在確認其匹配后,再去處理接收到的按鍵信號指令。解碼器的基本操作如圖6所示。圖中數(shù)字表示信息處理次序。
5 結(jié)語
該系統(tǒng)綜合運用了微機控制技術,無線傳輸技術,數(shù)據(jù)加密技術,設計了一種成本低廉,性能可靠,安全性高的車庫門禁系統(tǒng),得到了廣大車主的認可。實際使用時還可通過增加硬件及軟件,提升系統(tǒng)功能,使其可以滿足更廣泛的要求。