Jakó Attila A Microchip HCS ugrókódos áramkörei



Hasonló dokumentumok
A telefon alközpont használati útmutatója

Laboratóriumi gyakorlatok

HI-SHARP. Felhasználói és üzembe helyezési útmutató

$IHOQ WWNRULWDQXOiVPRWLYiFLyL )HOQ WWNRULWDQXOiVLNpSHVVpJHN. (O DGiVRPEDQ NpW D IHOQ WWNRUL WDQXOiVVDO NDSFVRODWRV NpUGpVN UW D IHOQ WWNRUL

Laboratóriumi gyakorlatok

ORSZÁGOS EGÉSZSÉGBIZTOSÍTÁSI PÉNZTÁR

Egyezmény. a Németországi Szövetségi Köztársaság Kormánya. a Magyar Köztársaság Kormánya között. az audiovizuális kapcsolatokról

2 A GÉP FELÉPÍTÉSE ÁLTALÁNOS MECHANIKAI RÉSZEK H(*(6=7 75$16=)250È ELEKTROMOS VEZÉRLÉS A GÉP FELÁLLÍTÁSA...

CIAS - ERMO 482 Mikrohullámú sorompó kültéri védelemhez Szerelési útmutató

NYILVÁNOS VÉTELI AJÁNLATA A KARTONPACK DOBOZIPARI RT. ÁLTAL KIBOCSÁTOTT ÖSSZES SZAVAZATI JOGOT BIZTOSÍTÓ RÉSZVÉNYRE

PROGRAMOZÁS TARTALOMJEGYZÉK

PXOWLPpGLiVHODGiVpV IHODGDWODSV]HUNHV]W-NLpUWpNHOSURJUDPFVRPDJ

A PB-IN-+)V]pULiM~IpQ\VXJDUDVpU]pNHONP&V]DNLNp]LN Q\YH. PULNiX PB-)V]pULiQDNDW NpOHWHVtWHWWYiOWR]DWDDPHO\PHJEt]KDWyN OVWpULIpQ\VXJDUDs

PIC16F877 KÍSÉRLETI PANEL

GEORGIKON MÉDIA 99 KONFERENCIA

TANULMÁNYOK A KICSI SZÉP. A DETERMINÁCIÓS EGYÜTTHATÓ ÉRTELMEZÉSE ÉS HASZNÁLATA A SZOCIOLÓGIAI KUTATÁSBAN *

6]NHQQHU NiEHO 6]RIWYHU &'520RQ

TELEFIRE - ADR - 4OOO. 0&V]DNL.p]LN Q\Y9(5=,Ï2

DOKTORI (Ph.D.) ÉRTEKEZÉS TÉZISEI VESZPRÉMI EGYETEM. Gazdálkodás- és Szervezés Tudományok Doktori Iskolája. DR. SOMOGYI SÁNDOR Ph.D.

Magyarországon a lakosság 40 %a élt biztonságos vagyoni, anyagi és kulturális N U OPpQ\HN N ] WW NHW WHNLQWKHWM N D WiUVDGDOPL JD]GDViJL pv SROLWLNDL

Billentyűzet. Csatlakozók: A billentyűzetet kétféle csatlakozóval szerelhetik. 5 pólusú DIN (AT vagy XT billentyűzet csatlakozó),

ROMÁNIA HIVATALOS KÖZLÖNYE

AZ EURÓPAI KÖZPONTI BANK KORMÁNYZÓTANÁCSÁNAK IRÁNYMUTATÓ ÁLLÁSFOGLALÁSA

IX.B. Számrendszerek Megoldások

A BRITTON CAPITAL & CONSULTING B()(.7(7, TANÁCSADÓ ÉS SZOLGÁLTATÓ KFT. Részvényenként forint ellenérték ellenében.

Wally1/2/3/4/4 PLUS. Programozási leírás. 1, 2, 3, és 4 csatornás rádiós vevő

FDP LNURSURFHVV]RURVW ]MHO] N ]SRQW

HJ\V]HU&WLV]WiQWDUWiVDpVIHOW OWpVHN QQ\HGpQYpJUHKDMWKDWó.

WS-Pro WPX38 MD+ PROGRAMOZÓI KÓDOK ÖSSZESÍTÉSE

$N ]P YHO GpVD]LVNRODLIHOQ WWRNWDWiVNDSFVRODWDLpVOHKHW VpJHL

Kezelési Útmutató. Japan Cash Raktáros programhoz

.,27Ï,-(*<=.g1<9 AZ EGYESÜLT NEMZETEK ÉGHAJLATVÁLTOZÁSI KERETEGYEZMÉNYÉHEZ

KIP THORNE INTERSTELLAR ÉS A TUDOMÁNY

OTTOMAT KFT Szeged, Csalogány u. 32. tel./fax.: (62) (20) DCRK sorozat 1. DXWRPDWLNDP&V]DNLOHtUiV. és kezelési utasítás

JELENTÉS. $](8WDJiOODPRNpVD](8IHQQWDUWKDWyIHMOGpVVHONDSFVRODWRV stratégiáinak, illetve programjainak vizsgálata, elemzése c.

VAS MEGYE ÖNKORMÁNYZATÁNAK e57(6ë7-(

KARTONPACK DOBOZIPARI RT ÉVI ÉVES JELENTÉSE

Típusjel magyarázat...10 Méretek...10 Beépítési feltételek...11 A frekvenciaváltó bekötése Csatlakozókapcsok...14

Mérési jegyzőkönyv. az ötödik méréshez

ROMÁNIA HIVATALOS KÖZLÖNYE

SA 03 HEAD kétmotoros vezérlés

UJJLENYOMAT OLVASÓ. Kezelői Kézikönyv

TÁJÉKOZÓDÁS. normák szerinti cselekvés nem lehet része a racionális döntések elméletének. 1 A

DOKTORI (PhD) ÉRTEKEZÉS TÉZISEI VESZPRÉMI EGYETEM

FDP 2003/16 7 ]MHO] központ kezelési utasítása

vialan OS-103 vonalfordító készülék kezelési útmutató

TM Szervó vezérlő és dekóder

Hangposta rendszer HASZNÁLATI U TASÍTÁS. .pum N ROYDVVD HO PLHOWW KDV]QiODWED venné a berendezést. TÍPUS KX-TVP200B / KX-TVP200 KX-TVS200

Telepítői leírás. v2.8

Felhasználói kézikönyv AR-721KP. Version: 1.2

HSS60 ( ) típusú léptetőmotor meghajtó

micron s e c u r i t y p r o d u c t s EzeProx proximity kártyaolvasó és kódbillentyűzet

AIPHONE KVI. Telepítési és Használati útmutató. Szerelőkészlet Mennyiség Megnevezés A. Vandálbiztos, kültéri, fém kezelőegység

DOKTORI (PHD) DISSZERTÁCIÓ TÉZISEI

3.6. HAGYOMÁNYOS SZEKVENCIÁLIS FUNKCIONÁLIS EGYSÉGEK

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

INVARIANCIAELVEK A SZOCIOLÓGIAELMÉLETBEN ÉS AZ EMPIRIKUS KUTATÁSBAN

WPX típusú Alközpontok 1-3 fővonal, 8 mellék PROGRAMOZÓI KÓDOK ÖSSZESÍTÉSE

Életpálya-tervezés. Doktori (PhD) tézisek. Vincze László

2-VEZETÉKES KAPUTELEFON RENDSZER Kameraillesztő. VDCU Felhasználói és telepítői kézikönyv VDCU. VDCU Leírás v1.0.pdf

Használati útmutató UG 2200 Nova UG 3000 Nova UG 4500 Nova

SYS700-PLM Power Line Monitor modul DDC rendszerelemek, DIALOG-III család

Programozási segédlet DS89C450 Fejlesztőpanelhez

AC-MF1W. RFID kártyaolvasó és kódzár. Felhasználói leírás

FARFISA, FA/FC52 ELEKTRONIKUS KÓDZÁR

JELENTÉS. Környezetvédelmi és Vízügyi Minisztérium. Debreceni Egyetem, Alkalmazott Tájföldrajzi Tanszék. Dr.Kerényi Attila egyetemi tanár

JELLEMZŐK MŰSZAKI ADATOK ALKATRÉSZEK LEÍRÁSA

SR mini PLC Modbus illesztő modul. Modul beállítása Bemeneti pontok kiosztása főmodul esetén Bemeneti pontok címkiosztása kiegészítő modul esetében

Yottacontrol I/O modulok beállítási segédlet

$]RNWDWiVWHFKQROyJLD27MHOHQHpVM YMH

TELEPÍTÉSI LEÍRÁS. 1. Ábra 2. Ábra. 3. Ábra. 4. Ábra

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

3. A DIGILENT BASYS 2 FEJLESZTŐLAP LEÍRÁSA

IDAXA-PiroSTOP. PIRINT PiroFlex Interfész. Terméklap

VDCU használati utasítás

Felhasználói és Telepítői Kézikönyv AT 7070 Elektronikus vezérlő garázskapukhoz

LOGSYS LOGSYS SZTEREÓ CODEC MODUL FELHASZNÁLÓI ÚTMUTATÓ szeptember 16. Verzió

Dr. Oniga István DIGITÁLIS TECHNIKA 9

2-VEZETÉKES KAPUTELEFON RENDSZER Telefonos illesztő / Telefonhívó modul. VDT-TPC Felhasználói és telepítői kézikönyv VDT-TPC. VDT-TPC Leírás v1.0.

VESZPRÉMI EGYETEM. Állattudományi Intézet ÁLLATÉLETTANI ÉS TAKARMÁNYOZÁSTANI TANSZÉK. DOKTORI (PhD) ÉRTEKEZÉS TÉZISEI

Dr. Oniga István DIGITÁLIS TECHNIKA 9

KeyLock-2V Digitális kódzár 2 kimenettel

2. A dohányzás egészségügyi következményei

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

352*5$02= 6,87$6,7 6

Felhasználói kézikönyv. 3DM2280A típusú léptetőmotor meghajtó

Tartalomjegyzék. 2 Telepítés A rendszer standard telepítése Eszköz leírása Eszköz mérete 4

Felhasználói kézikönyv. 3DM860A típusú léptetőmotor meghajtó

INVERSE MULTIPLEXER RACK

Dr. Oniga István DIGITÁLIS TECHNIKA 8

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg: Olvasható aláírás:...

Dinnyeválogató v2.0. Típus: Dinnyeválogató v2.0 Program: Dinnye2 Gyártási év: 2011 Sorozatszám:

HSS86 ( ) típusú léptetőmotor meghajtó

HUN HASZNÁLATI ÉS KARBANTARTÁSI UTASÍTÁS

JIM JM.3, JM.4 garázskapu mozgató szett CP.J3 vezérléssel

JIM garázskapu mozgató szett JIM. JM.3, JM.4 garázskapu mozgató szett CP.J3 vezérléssel

Digitális technika (VIMIAA01) Laboratórium 9

Moduláris USB billentyűzet emulátor

2-VEZETÉKES KAPUTELEFON RENDSZER. Telefonhívó egység VDT TPS. VDT-TPS Leírás v1.0.pdf

Szinkronizmusból való kiesés elleni védelmi funkció

Átírás:

Jakó Attila A Microchip HCS ugrókódos áramkörei

1 1 TARTALOMJEGYZÉK 1 TARTALOMJEGYZÉK... 1 2 BEVEZETÉS... 4 3 A KEELOQ ALKOTÓELEMEI... 6 4 UGRÓ KÓDOS RENDSZEREKNÉL HASZNÁLT DEFINÍCIÓK... 8 4.1 SOROZAT SZÁM... 8 4.2 TITKOSÍTÓ KULCS... 8 4.3 AZONOSÍTÓ ÉRTÉK... 8 4.4 SZINKRONIZÁLÓ SZÁMLÁLÓ... 8 4.5 GYÁRTÓ KÓD... 9 4.6 SEED... 9 5 A RENDSZER ÁTTEKINTÉSE... 10 6 AZ ÜZENETEK (ÁTVITELEK) ÖSSZETÉTELE... 14 6.1 UGRÓ KÓD... 16 6.1.1 FUNKCIÓ INFORMÁCIÓK... 16 6.1.2 7Ò/&625'8/È67-(/=%,7(... 16 6.2 FIX KÓD... 17 6.2.1 9/2:$ODFVRQ\IHV] OWVpJV]LQWMHO]... 17 6.2.2 537,60e7/e6-(/=... 17 6.2.3 CRC (Ciklus UHGXQGDQFLDHOOHQU]ELWHN... 17 6.3 SEED ÁTVITELEK AKTIVIZÁLÁSA... 18 7 A KEELOQ KÓDOLÓK ÉS DEKÓDOLÓK TITKOSÍTÓKULCS KÉSZÍTÉSEI... 19 7.1 TITKOS KULCSKÉSZÍTÉS (SEED A FORRÁS)... 20 7.1.1 XOR algoritmus használata a kulcskészítéshez... 21 7.1.2 Titkosító algoritmus használata a kulcskészítéshez... 21 8 A KEELOQ KÓDOLÓK ÜZENETKÜLDÉSÉNEK A FOLYAMATA... 23 9 A KEELOQ KÓDOLÓK... 25 9.1 Á/7$/È126-(//(0=... 25 9.2 LÁBKIOSZTÁS... 28 9.2.1 HCS200-as kódoló... 28 9.2.2 HCS300/301 és HCS360/361 kódoló... 28 9.3 EEPROM MEMÓRIA KIOSZTÁS... 29 9.3.1 HCS200-as kódoló... 29 9.3.2 HCS300 és HCS301 kódoló... 31 9.3.3 HCS360 kódoló... 34 9.3.4 HCS361 kódoló... 42 9.4 A KÓDOLÓK ÁLTAL ALKALMAZOTT MODULÁCIÓS FORMÁK... 46 9.4.1 HCS200, HCS300/301 kódoló... 46 9.4.2 HCS360 kódoló... 46 9.4.3 HCS361 kódoló... 48

2 9.5 SZINKRONIZÁLT ADATÁTVITELI MÓD (VEZETÉKES)... 51 9.6 63(&,È/,6-(//(0=.... 52 9.6.1 Auto-shutoff... 52 9.6.2 Blank Alternate kód szó (BACW)... 52 9.7 PROGRAMOZÁS... 54 9.8 HCS410... 57 9.8.1 KEELOQ IFF... 59 9.8.2.pV] OpNP&N GpVH... 59 10 A KEELOQ DEKÓDOLÓK ÜZENETDEKÓDOLÓ ELJÁRÁSA... 61 10.1 ÉRVÉNYESÍTÉS... 61 10.2 SZINKRONIZÁLÁS... 62 11 TANÍTÁS, TANULÁS... 65 11.1 NORMÁL TANÍTÁS...67 11.2 TITKOS TANÍTÁS... 69 12 A KEELOQ DEKÓDOLÓK... 72 12.1 J(//(0=.... 73 12.2 LÁBKIOSZTÁS... 74 12.2.1 HCS512... 74 12.2.2 HCS500... 75 12.3 M%.g'e6,/(Ë5È62... 75 12.4 KONFIGURÁCIÓS BÁJT... 76 12.4.1 HCS500... 76 12.4.2 HCS512... 78 12.5 A HCS500 (*<e1,-(//(0=,... 79 12.5.1 Mikrokontrollerhez való csatlakozás... 79 12.5.2 Programozása... 86 12.6 A HCS512 (*<e1,-(//(0=,... 87 12.6.1 Adó tesztelése... 87 12.6.2 Programozása... 87 12.6.3 Checksum... 89 13 ADATÁTVITELI MÓDSZEREK ALKALMAZÁSA AZ UGRÓ KÓDOS RENDSZEREKBEN 90 13.1 INFRA ADATÁTVITEL... 90 13.1.1 TEMIC U2538B... 91 13.1.2 TEMIC U2535B-FP... 94 13.2 RÁDIÓFREKVENCIÁS ADATÁTVITEL... 95 13.2.1 &+,3&$'iOWDOIRUJDOPD]RWW5)DGyYHY... 95 14 A CHIPCAD ÁLTAL FORGALMAZOTT HCS PROGRAMOZÓ SZETT RÖVID BEMUTATÁSA 98 14.1 A KÓDOLÓ... 99 14.2 A DEKÓDOLÓ... 100 14.3 A DEKÓDOLÓK BEÁLLÍTÁSAI... 100 14.4 A KÓDOLÓK BEÁLLÍTÁSAI... 101 14.5 A KÓDOLÓK PROGRAMOZÁSA... 102 14.6 A DEKÓDOLÓ PROGRAMOZÁSA... 102 14.7 TANÍTÁSI ELJÁRÁS... 102 14.8 KEELOQ ÁTVITELEK FIGYELÉSE... 103 14.9 TAPASZTALATOK... 104 15 ÁBRAJEGYZÉK... 106

3 16 TÁBLÁZAT JEGYZÉK... 108 17 IRODALOMJEGYZÉK... 109

4 2 BEVEZETÉS 1DSMDLQNEDQ QDJ\RQ QpSV]HU&HN D UiGLyIUHNYHQFLiV pv RSWR HOHNWURQLNXVDQ YH]pUHOW távirányításos biztonsági rendszerek. Ilyen biztonsági rendszereket már számos alkalmazásban WDOiOKDWXQN PLQW SO MiUP&YHN EL]WRQViJL UHQGV]HUHL YDJ\ DXWRPDWLNXV JDUi]VDMWy Q\LWyN $ hagyományos távirányításos biztonsági berendezések egyirányú átviteleken alapszanak és a EL]WRQViJL V]LQWM N QHP D PHJIHOHO 0iU W EE IHMOHWW HV]köz (berendezés) alapszik kétirányú iwylwhohq D]RQEDQ QDJ\RQ N OWVpJHVHN V]iPRV KiWUiQ\DLN YDQQDN pv QHP HOpJ V]pOHVN U&HQ használhatóak. Napjainkban általában a biztonsági rendszerek két igen fontos hiányossággal rendelkeznek: minden átvitel során állandó kódot küldenek el, és a kód kombinációk OHKHWVpJpQHN D V]iPD UHODWtYDQ NLFVL (] XWyEEL OHKHWYp WHV]L KRJ\ D NyGRN WDOiOJDWiViYDO SUyEiOJDWiViYDODUHQGV]HUWKDWiVWDODQtWDQLOHKHWDUiQ\ODJU YLGLGDODWW. QQ\HQOHKHWNpV]tWHQL egy mikrokontrolleres berendezést, amely ezt véghez is viszi. Tipikusan 20 próbálkozás lehet másodpercenként, ami annyit jelent egy 12 bites fix kódos rendszer esetében, hogy a kinyitásuk kevesebb, mint 5 percbe kerül. Ugyanilyen percenkénti próbálgatás mellett egy 16 bites rendszer esetében kevesebb, mint 2.5 órába kerül a berendezés hatástalanítása. A kódpróbálgatás HOKiUtWKDWyD]]DOKRJ\DNyGNRPELQiFLyNOHKHWVpJpWNHOOHQQDJ\UDQ YHOM N $PiVLNJRQGiOWDOiEDQDEL]WRQViJLUHQGV]HUHNNHOKRJ\IL[NyGRNNDOP&N GQHN(Nkor PHU OIHODNyGU J]tWKHWVpJpQHNpVYLVV]DMiWV]iViQDNDSUREOpPiMD$KKR]KRJ\MREEDQpUWKHW OHJ\HQ OiVVXN D N YHWNH]W (J\ QRUPiO WiYLUiQ\tWiVRV EL]WRQViJL UHQGV]HUQpO SO DXWyULDV]Wy van egy adó, mely elküldi a nyitáshoz szükséges kódot, amit JHQHUiOpVYDQHJ\YHYPHO\D] DGyiOWDONLDGRWWMHOHNHWYHV]LpUWHOPH]L(]HNHJ\PHJKDWiUR]RWWIUHNYHQFLiQP&N GQHNPHO\HN N ]LVPHUWHNËJ\EiUNLQHNDGRWWDOHKHWVpJKRJ\pStWVHQHJ\RO\DQYHYEHUHQGH]pVWDPHO\D] adók jeleit fogja. Gondoljunk bele, hogy illetéktelen személy rendelkezik egy ilyen készülékkel és megvárja azt, hogy pl. egy autótulajdonos hatástalanítsa az autójának a riasztó berendezését a távirányítójával, akkor máris rögzíteni tudta a nyitáshoz szükséges kódot, melyet utána vissza is tud játszani.

5 $] HOEELHN HOKiUtWiViKR] D WiYLUiQ\tWiVRV EL]WRQViJL UHQGV]HUHNQHN NpW DODSYHW tulajdonsággal kell rendelkezniük, mely tulajdonságokkal a KEELOQ ugró kódos rendszerek már rendelkeznek: $NyGNRPELQiFLyNV]iPDNHOONpSSHQQDJ\OHJ\HQ A KEELOQ technológiát alkalmazó eszközök 66 bites kódszó hosszal rendelkeznek. (J\ ELWHV WLWNRVtWRWW UpV]EO ioo PHO\ W EE PLQW ELOOLy NyG NRPELQiFLyW WHV] OHKHWYp$NyGRNSUyEiOJDWiVDH]iOWDOW EEPLQWpYEHNHU O+DDELWHViOODQGy részét és figyelembe vessz NDNNRUD]HOEELLGNEELOOLypYUHEY O Sosem szabad ugyanazt a kódot kétszer elküldeni. (]DUHQGV]HURO\DQWLWNRVtWyDOJRULWPXVVDOUHQGHONH]LNDPHO\LNOHKHWYpWHV]LKRJ\ XJ\DQD]DNyGHJ\UHQGV]HUpOHWpEHQOHKHWOHJQHIRUGXOMRQHONpWV]er. A rendszer azzal a tulajdonsággal rendelkezik még, hogy minden egyes gombnyomás KDWiViUD D] HO]WO WHOMHVHQ HOWpU NyGRW N OG HO (] HJ\ NtY OiOOy V]iPiUD ~J\ W&QLN KRJ\ D UHQGV]HUYpOHWOHQV]HU&HQNpV]tWLDNyGRNDW1LQFVVHPPLIpOHOiWKDWy VV]HI Jgés két egymás után elküldött kód között. Ha egy ilyen rendszert tekintünk, akkor legalább 65000 érvényes kód ]HQHWHON OGpVHOHKHWVpJHVDQpON OKRJ\HJ\LVPHJLVPpWOGQH+DQDSL-V]RUP&N GWHWM ND rendszerünket, akkor kb. 22 évbe kerül, amíg újra mhjlvppwoglnxj\dqd]dnyg7ryieeidpiu használt kódok nem tudják hatástalanítani a biztonsági berendezést. $ KRVV]~ NyG KRVV] pv D] ioodqgydq YiOWR]y NyG V] NVpJHVVp WHV]L D] DGy pv D YHY állandó összehangolását. Ezt nevezzük szinkronizálásnak. A KEEL24DOJRULWPXVLVMHOOHP]MHD IHMOHWW V]LQNURQL]iFLyV WHFKQLNiQDN $ UHQGV]HU DNNRU LV P&N GQL IRJ KD D] DGyQNDW D YHY KDWiVN UpQ NtY O IRO\DPDWRVDQ P&N GWHWM N SO HJ\ J\HUHN MiWV]LN D WiYYH]pUOYHO +D D távirányító gombját több mint 16-szor lenyomjuk, akkor elveszti a szinkronizmusát a rendszer. $]RQEDQH]WN YHWHQNpWHJ\PiVWN YHWiWYLWHOKHO\UHiOOtWMDDV]LQNURQL]PXVW,O\HQNRUYDQD] KRJ\ KD D] DGy P&N GWHWpVpUH QHP UHDJiO D YHY DNNRU D IHOKDV]QiOy WHUPpV]HWHV UHDNFLyNpQW még egyszer meg nyomja a nyomógombot (pl. autóriasztó), és ebben az esetben áll helyre az

6 HOEE HPOtWHWW PyGRQ D V]LQNURQL]PXV $ IHOKDV]QiOy LO\HQNRU QLQFV WXGDWiEDQ DQQDN KRJ\ D rendszer kibillent a szinkronizmusból, majd visszaállt. (]HN D] HOQ\ N HJ\pUWHOP&HQ pv]uhyhkhwhn D KDJ\RPiQ\RV IL[ NyGRV UHQGV]HUHNNHO V]HPEHQ 7RYiEEi D.((/24 DOJRULWPXV MHOHQWVpJH NHYpV N OV NRPSRQHQV V] NVpJHV D UHQGV]HUP&N GWHWpVpKH]PLYHOHJ\,&-EHYDQQDNLQWHJUiOYDDIUpV]HN A KEELOQ algoritmus egy 32 bit hosszú blokkon és egy 64 bites kulcson alapszik. Ennek a biztonságát rendkívül fontosnak tartották, azonban mára már nyilvános az algoritmus, mivel mikrokontrollerekkel is megvalósíthatók a dekódolók, ahhoz pedig szükség van, hogy bele SURJUDPR]]XN D] ]HPEH KHO\H]pV HOWW $] információk tekintetében az adó adatai és szinkronizációs érték ezzel az algoritmussal kódolva vannak, így az egy kívülálló számára érthetetlen. A dekódoláshoz ugyanarra a 64 bites kulcsra van szükség, amit a kódolásnál használt a kódoló. Következésképpen PpJ DNNRU LV KD D YHY DPHO\LN UHQGHONH]LN D NXOFFVDO NpSHV beazonosítani az adót egy kívülálló nem tud mit kezdeni az adó által szolgáltatott információval. Még akkor sem tudja a kapott információkat felhasználni, ha folyamatosan rögzíti azokat, mivel KDDNyGROiVHOWWiOOyDGDWRNFVDNHJ\ELWEHQLVWpUQHNHOD]HO]WODN YHWNH]iWYLWHOVRUiQD] DOJRULWPXVQDNN V] QKHWHQWHOMHVHQN O QE ]OHV]D]iWYLWHO $UHQGV]HUP&N GpVpKH]D]DGypVYHYHV]N ]HLQHNHJ\PiVUyOEL]RQ\RVLQIRUPiFLyNNDO kell reqghonh]ql NDKKR]KRJ\DUHQGV]HUP&N GpVNpSHVOHJ\HQ(KKH]YLV]RQWHJ\~J\QHYH]HWW WDQtWiVLHOMiUiVUDDONDOPD]iViUDYDQV] NVpJ QNPHO\LJHQIRQWRVÄV]HUHSOMH DUHQGV]HUQHND] ]HPHOWHWKHWVpJ V]HPSRQWMiEyO (]HQ NtY O PpJ VRN PiV VDMiWRVViJ YDQ D Uendszernek, PHO\QHNDEHPXWDWiViWDN YHWNH]NEHQOiWKDWMXN A dolgozatomban ezt a KEELOQ technológiát és a technológiát megvalósító eszközöket, WRYiEEiDP&N GpV NK ]V] NVpJHVSHULIpULiNDWPXWDWRPEHUpV]OHWHVHQ 3 A KEELOQ ALKOTÓELEMEI A KEELOQ technolójliwdondopd]yuhqgv]huhnel]rq\rvdodsyhwhohphneops OQHNIHO $]iwylwhokh]ihowpwohq OV] NVpJHVHJ\DGyDPLKH]FVDWODNR]LNDNyGROyWRYiEEiD]HO]iOWDO NLDGRWW MHOHN IRJDGiViUD DONDOPDV YHY pv KR]]i FVDWODNR]y GHNyGROy $ NyGROy pv GHNyGROy kö] WW OpY NDSFVRODW PHJWHUHPWpVpQHN D OHJHJ\V]HU&EE OHKHWVpJH D] KD YH]HWpNNHO N WM N

7 össze a két egységet, de bizonyos esetekben és általában ennél többre van szükségünk, vagyis a vezetékmentes kapcsolatra. Ezt megvalósíthatjuk rádiófrekvenciás vagy optoelektronikus (infra) DGDWiWYLWHOL PyGV]HUHNNHO H]pUW YDQ V] NVpJ DGyUD pv YHYUH (UUH D GROJR]DWRPEDQ D NpVEELHNEHQPpJNLWpUHN$]HOEEOHtUWDNDWD]1. ábrán láthatjuk. 1. Ábra. A KEELOQ alkotórészei A MICROCHIP által foujdopd]rwwnygroywtsxvrndn YHWNH]N+&6+&6 HCS360/361 és HCS410. A HCS500 és HCS512 pedig a dekódolók. A kódoló arra alkalmas, hogy a hozzácsatlakoztatott nyomógomb aktiválásának a hatására HJ\ ]HQHWHW NpV]tWVHQ D EHOV PHPyULiMiEDQ WiURlt értékek és algoritmus segítségével. Ezt N YHWHQ SHGLJ D SHULIpULDNpQW KR]]iN W WW DGy P&N GWHWpVpYHO HON OGMH D] HOEE NpV]tWHWW üzenetet a dekódoló számára. $GHNyGROyDYHYSHULIpULDVHJtWVpJpYHOYHV]LDNyGROyiOWDOHON OG WW ]HQHWHWPDMGD]W feldolgozva (dekódolja, a kapott értékeket összehasonlítja a memóriájában tárolt értékekkel) érvényes üzenet érkezése esetében végrehajtja a kívánt feladatot.

8 4 UGRÓ KÓDOS RENDSZEREKNÉL HASZNÁLT DEFINÍCIÓK 0LHOWWD]HJpV]UHQGV]HUiWWHNLQWpVpEHNH]GHQpQN szükséges egy-két fogalom, kifejezés értelmezése, magyarázata, melyek ismerete a továbbiak értelmezésének elengedhetetlen feltétele. 4.1 SOROZAT SZÁM A kódoló, a sorozat számát minden egyes gomb lenyomás hatására elküldi. A sorozat szám az átvitel kódolatlan részének az egyik alkotó eleme, és a dekódolónak nyújt segítséget arra, hogy beazonosítsa, hogy melyik kódolótól kapott utasítást. Ezt a számot továbbá arra használjuk, hogy a tanítási eljárás során ennek a segítségével készítjük el a titkosító kulcsot. 4.2 TITKOSÍTÓ KULCS A titkosító kulcs egy a gyártás során programozott és létrehozott egyedülálló 64 bites NXOFV$WLWNRVtWyNXOFVYH]pUOLDWLWNRVtWyDOJRULWPXVWpVWiUROyGLND]HOHNWURPRVDQW U OKHWpV újra programozható memóriában (EEPROM). 4.3 AZONOSÍTÓ ÉRTÉK Ez szám gyártó által változtatható, programozható, de általában a sorozat szám alsó tíz bitjével egyezik meg. Az azonosító bitek az átvitel során a titkosított információ részét képzik. $]XWiQ KRJ\ D YHY GHNyGROWD D PHJNDSRWW ]HQHWHW VV]HKDVRQOítja ezeket a biteket a tárolt értékkel, hogy a dekódoló eljárás és az üzenet érvényes-e. 4.4 SZINKRONIZÁLÓ SZÁMLÁLÓ

9 Az átviteli szó tartalmaz egy 16 bites szinkronizáló számláló által szolgáltatott értéket. Ezt az információt is arra használja fel a dekódoló, hogy megállapítsa az átvitelek érvényességét. A PiUV]HUHSHOWNyGRNDWV]iPOiOypUWpNHNHWHOXWDVtWMDD]HVHWOHJHVNyGU J]tWpVHNNLV]&UpVHPLDWW (A HCS300/301-HVNyGROyNW~OFVRUGXOiVWMHO]ELWHNHWN OGHQHNHOPLQGLJH]iOWDODV]LQNURQL]iOy számláló éuwpnpw NLEYtWLN -ról 196608-ra. A HCS360 és HCS361-es kódolók csak egy W~OFVRUGXOiVWMHO]ELWHWN OGHQHNHODPHOO\HODV]iPOiOyWDUWRPiQ\iWFVDN-re terjeszti ki.) 4.5 GYÁRTÓ KÓD A gyári kód egy 64 bites szó, mely egyedi lehet minden egyes darabnál. Azonban rendszerenként meg kell egyeznie. Ennek a következménye az egyedülálló titkosító kulcs minden átvitel során. Ezt a kódot a dekódolóba a gyártás (programozás) folyamán kell bele rakni és nem pedig a tanításkor. 4.6 SEED A Microchip által forgalmazott kódolók mindegyike rendelkezik a seed elküldésének képességével. A seed tulajdonképpen HJ\YpOHWOHQV]HU&HQJHQHUiOWV]iPPHO\pUWpNHWDNNRUNHOO EHSURJUDPR]QXQN D NyGROyN PHPyULiMiED DPLNRU HOV] U LQLFLDOL]iOMXN D] HV]N ]W D számlálóval, a kulccsal, a sorozat számmal és más információkkal együtt. A seed hossza kódolónkként más és más. A HCS200, HCS300 és HCS301 seed értéke 32 bites, míg a HCS360 és HCS361-é 48 bites. $] HO]HNHW pv HJ\pE MHOOHP] NLIHMH]pVHN U YLG OHtUiViW OiVVXN D] 1. táblázatban összefoglalva: 1. Táblázat. Az ugró kódoknál használt kifejezések

10 Adó sorozat száma Minden adó gyártáskor felprogramozható egy egyedülálló 28 vagy 32 bites sorozat számmal. Ez biztosítja minden kódoló számára, hogy egyedi legyen egy rendszeren belül. Titkosító kulcs (]HJ\ELWHVV]iPPHO\HWDNXOFVNpV]tW algoritmus generál a 28- vagy 32 bites sorozat számból, vagy a 32- vagy 48 bites seed puwpneopvdelwhvj\iuwynygeyoplqwehphqhw$wlwnrvtwy kulcs nem olvasható és soha nem kerül átvitelre. Seed A seed egy 32- YDJ\ ELWHV YpOHWOHQV]HU&HQ JHQHUált érték, melyet beprogramozunk a kódolóba. Ezt az értéket használja a NXOFVNpV]tW DOJRULWPXV D WLWNRV WDQtWiV HVHWpQ &VDN HJ\ speciális nyomógomb kombináció hatására aktiválódik és ekkor kerül átvitelre. Kulcskészítés $ NXOFVNpV]tW IXQNFLyW DUUD KDV]nálja a kódoló, hogy egyedülálló kulcsot készítsen minden egyes adónak a sorozat V]iPEyOYDJ\DVHHGpUWpNEO Gyártó kód $ J\iUWy NyGRW D YHYQHN WDUWDOPD]QLD NHOO DKKR] KRJ\ D titkosító kulcsot elkészítse. A gyártó kódot a gyártás során kell beprogramozni a dekódolóba. Normál tanítás (sorozat szám forrású) Titkos tanítás (seed forrású) Azonosító érték Szinkronizáló számláló $ YHY XJ\DQD]RNDW D] LQIRUPiFLyNDW KDV]QiOMD D NXOFVNpV]tWpVKH] PLQW D] DGy D QRUPiO P&N GpV DODWW (NNRU dekódolja az azonosító értéket és a szinkronizáló számlálót, és H]XWiQDYHYEHQWiUROyGLNa kódoló minden adata. Az adó egy speciális nyomógomb kombináció hatására aktiválódik és elküldi az EEPROM-jában tárolt 32- vagy 48 bites értéket (seed), hogy a dekódoló ezt használja a kulcskészítéshez. Ez a funkció letiltódik a tanulás befejeztével. Az azonosító érték a titkosított adatnak egy 10 vagy 12 bites fix UpV]pW NpS]L (]W D WLWNRVtWiV XWiQL HOOHQU]pVUH KDV]QiOMD D rendszer. Egy 16 bites számláló, amely a kódoló minden egyes aktiválásakor inkrementálódik. Ez az érték DYHYPHPyULiMiEDQ LVWiUROyGLNpVPLQGHQHJ\HViWYLWHOQpOD]HO]HQWiUROWpUWpNNHO van összehasonlítva. Tulajdonképpen ez képzi az ugró kód alapját, emiatt fog minden egyes esetben változni a kód. 5 A RENDSZER ÁTTEKINTÉSE

11 A KEELOQ ugró kódos rendszer egy olyan módszert használ fel, mely során minden JRPEQ\RPiVHVHWpQPLQGLJN O QE ]NyGRWN OGHOD]DGyDYHYQHN$2. ábrán látható, hogy az ugró kódos eszközök egy nem túl nagy EEPROM-ot tartalmaznak, melyet a rendszerbe LOOHV]WpVHOWWIHONHOOSURJUDPR]QLQpKiQ\DP&N GpVKH]V] NVpJHVSDUDPpWHUUHO (]HNN ] ODOHJIRQWRVDEEDNDN YHWNH]N 28 bites sorozat szám titkosító kulcs, mely a gyártás (programozás) során készül el 16 bites szinkronozó érték, mely a számláló aktuális állapota és alapból 0-ról indul A sorozat számot és a gyártó kódot minden kódoló esetében a gyártás során programozzák be. A titkosító kulcs, a kulcs generáló algoritmus használata során készül (lásd. 2. ábra) a sorozat számból és a gyártónak a 64 bites kódjából. A 16 bites szinkronozó érték az alapja annak, hogy minden gombnyomásra változni fog az átvitelünk. Igaz, hogy ez a szám csak egy bit-ben WpUHOD]HO]WOGHDWLWNRVtWyDOJRULWPXVQDNN V] QKHWHQDN YHWNH]iWYLWHOLNyG már sokban fog különbözni. 2ÈEUD.XOFVNpV]tWHOMiUiVpVWiUROiV A 3. ábrán látható az összefüggés az EEPROM-ban tárolt értékek között, és hogy a kódoló KRJ\DQ KDV]QiOMD IHO H]HNHW $ IRO\DPDW ~J\ W UWpQLN KRJ\ HOV] U pu]pnhol D NyGROy KRJ\

12 lenyomtak egy gombot, majd megvizsgálja, hogy melyiket és utána felfrissíti a szinkronizáló V]iPOiOypUWpNpW(]WN YHWHQDV]iPOiOypUWpNpEOpVDtitkosító kulcsból a KEELOQ algoritmus képez egy 32 bites titkosított adatot. Ez lesz a kód szó egyik fele, úgynevezett ugró kódos része. $PiVLNIHOHIL[UpV]DVRUR]DWV]iPEyOpVDOHQ\RPRWWJRPERNNRPELQiFLyMiEyOWHYGLN VV]H ÈWYLWWLQIRUPiFLyN ((3520 7LWNRVtWyNXOFV.((/24 7LWNRVtWy $OJRULWPXV ELWHV WLWNRVtWRWWDGDW 6RUR]DWV]iP 1\RPyJRPE LQIRUPiFLyN 6]LQNU6]iPOiOy 6RUR]DWV]iP 3ÈEUD$]DGyDODSP&N GpVH $NyGROyKDV]QiODWDHOWWPHJNHOOWDQtWDQLDYHYW(]D]WMHOHQWLKRJ\HONHOOWiUROQLD YHYQHNXJ\DQD]RNDWD]LQIRUPiFLyNDWDPHO\HNHWD]DGyKDV]QiO(]HND]pUWpNHND]DGyVRUR]DW száma, a szinkronizáló számláló értéke, a titkosító kulcs és az azonosító szám. Abban az esetben, ha a dekódolót már megtanítottuk a kódoló paramétereire és vesz egy érvényes üzenetet, akkor HOV] UHOOHQU]LDVRUR]DWV]iPRWKRJ\PHJHJ\H]LN-e az EEPROM-ban eltárolt értékkel, majd a dekódoló algoritmus dekódolja a 32 bites kódolt adatot a memóriájában tárolt kódoló kulcs VHJtWVpJpYHO PHO\HW HOWWH PiU D VRUR]DW V]iPEyO pv D J\iUWy NXOFVEyO JHQHUiOW $] tj\ NDSRWW értéket összehasonlítja a saját szinkronizáló számlálójának az értékével. Ha H] D] HOOHQU]pV EHIHMH]GLN pv PHJHJ\H]LN D NpW V]iP DNNRU PHJYL]VJiOMD KRJ\ PLO\HQ IXQNFLyW NHOO YpJUHKDMWVRQ D OHQ\RPRWW JRPERN NRPELQiFLyMiQDN PHJIHOHOHQ $] DOiEEL VV]HI JJpVHN grafikusan láthatóak a 4. ábrán.

13 (J\H]WHWpV ((3520 7LWNRVtWyNXOFV 6]LQNU6]iPOiOy 6RUR]DWV]iP *\iulnyg (J\H]WHWpV.((/24 'HNyGROy $OJRULWPXV 'HNyGROW 6]LQNURQL]iOy 6]iPOiOy 1\RPyJRPE LQIRUPiFLyN 6RUR]DWV]iP ELWHV WLWNRVtWRWWDGDW %HpUNH]HWWLQIRUPiFLyN 4. Ábra. $GHNyGROyDODSP&N GpVH

14 6 AZ ÜZENETEK (ÁTVITELEK) ÖSSZETÉTELE $ NyG V]y VV]HWpWHOpQHN HONpV]tWpVH DXWRPDWLNXV MHOOHP] D]pUW KRJ\ EL]WRV OHJ\HQ hogy a teljes kód átvitele megtörténik, még abban az esetben is, ha a nyomógombot hamarabb felengedjük, mlqw DKRJ\ D] iwylwho EHIHMH]G WW YROQD $ NyGROy IHOpOHG KD HJ\ Q\RPyJRPE OHQ\RPiV W UWpQW pv DODSiOODSRWED NHU O KD D SDUDQFV YpJUHKDMWiVD EHIHMH]G WW KD D KDV]QiOy IHOHQJHGWH N ]EHQ D JRPERW +D D Q\RPyJRPE HJ\ iwylwhol LGQ W~O Q\RPYD YDQ DNNRU többszörös átvitel lesz az eredmény. Ha másik gomb lenyomása történt az átvitel alatt, akkor az psshq DNWtY iwylwho D]RQQDO OHiOO pv D] ~M Q\RPyJRPE NRPELQiFLyQDN PHJIHOHO ~M NyG generálódik. A kódolók által készített 66/67 bites átvitelek (üzenetek) két UpV]EOWHYGQHN VV]H$] egyik része mindig változik, amikor az adókat aktiváljuk. Ezt nevezzük az ugró kódos résznek. A PiVLN UpV]H WXODMGRQNpSSHQ D NyGROy VRUR]DW V]iPiEyO pv HJ\pE ELWHNEO ioo H]W SHGLJ IL[ résznek nevezzük. Az üzenetek összetételét kódoló típusokra lebontva kell vizsgáljuk, mivel eltérnek egymástól. A 5., 6. és 7. ábrán OiWKDWMXN JUDILNXVDQ KRJ\ NyGROyQNNpQW PLEO pv hogyan épül fel az üzenet két része. 5. Ábra. A HCS200 által készített üzenet összetétele

15 6. Ábra. A HCS300/301 által készített üzenet összetétele 7. Ábra. A HCS360/361 által készített üzenet összetétele 8. Ábra. A kódolók üzeneteinek összetétele a titkos tanítás során $]ieuineyonlw&qlnkrj\d+&6pv+&6nygroynqioelwhvd]iwylwhoptjd HCS360/361-QpOELWHV$N YHWNH]NEHQSHGLJUpV]OHWH]] NKRJ\PLEOLVpS OQHND]HOEE

16 említett részek. Az üzenetnek azon részeinek az értelmezésére térnék ki, melyek még nem ismeretesek a számunkra. 6.1 UGRÓ KÓD $] XJUy NyGRV WLWNRVtWRWW UpV] DODSYHWHQ WDUWDOPD]]D YpJUHKDMWDQGy IHODGDW IXQNFLy kódjait, az azonosító értéket és a szinkronizáló számláló aktuális értékét. A HCS300/301 kódolóknál kiegészül úgynevezett t~ofvrugxoivw MHO] ELWHNNHO (]HNHW D] DGDWRNDW D NyGROy PLQGHQ HJ\HV iwylwho HOWW OHNyGROMD D WLWNRVtWy DOJRULWPXV DODSMiQ D WLWNRVtWiV IRO\DPDWiW D NpVEELHNEHQOiWKDWMXN+DWLWNRVWDQtWiVUyOEHV]pO QNDNNRUHJ\~J\QHYH]HWWVHHGpUWpNNpSH]L teljes PpUWpNEHQD]XJUyNyGRVUpV]pWD] ]HQHWQHN6WD+&6NyGROyNQiODIL[NyGHJ\ részét is (8. ábra) 6.1.1 FUNKCIÓ INFORMÁCIÓK $ NyGROy PLQGHQ HJ\HV iwylwho VRUiQ HON OGL D YpJUHKDMWDQGy IHODGDWQDN PHJIHOHO nyomógomb kombinációkat, vagyis a funkció kódot. Összesen négy nyomógomb található általában az eszközökön (HCS200-on három van), ami annyit tesz, hogy összesen 15 (HCS200- QiON O QE ]IHODGDWRWOHKHWYpJUHKDMWDWQLDNyGROyYDO(]WXODMGRQNpSSHQPHUWDVHHG átvitel aktivizálására szolgál. 6.1.2 TÒ/&625'8/È67-(/=%,7(. (]HNHWDELWHNHWDV]LQNURQL]iOyV]iPOiOyIHOVKDWiUiQDNDNLWHUMHV]WpVpUHKDV]QiOMDD EHUHQGH]pV$V]iPOiOyELWHVPHO\FLNOXVOHKHWVpJHWEL]WRVtWPLHOWW PHJLVPpWOGQpQHNDV]iPRN$WDSDV]WDODWRND]WPXWDWWiNKRJ\DPHJIHOHOEL]WRQViJpV P&N GpVLpOHWWDUWDPV]iPiUDH]QHPHOHJHQGpVH]pUWOpWUHKR]WiNH]HNHWDELWHNHWKRJ\ NLEYtWKHVVHDV]iPOiOiVLWDUWRPiQ\W(]HNQHNDELWHNQHNDP&N GpVHSURJUDPR]yiOWDO szabályozható.

17 6.2 FIX KÓD A fix kód az a része az üzenetnek, mely kódolatlanul állandóan benne szerepel az iwylwhoehq $ODSYHWHQ D VRUR]DW V]iPEyO D IXQNFLy NyGRNEyO pv WtSXVRQNpQW YiOWR]y VWiWXV] ELWHNEOWHYGLN VV]H(]HNHNDVWiWXV]ELWHNQHND]pUWHOPH]pVpWOiVVXNDN YHWNH]NEHQ 6.2.1 VLOW: Alacsony feszültséjv]lqwmho] A VLOW bit minden egyes kódoló típusnál megtalálható. Értéke egyes lesz, ha a P&N GpVLIHV] OWVpJD]DODFVRQ\IHV] OWVpJV]LQWDOiHVLN(]D]pUWpNNpWpUWpNN ] OYiODV]WKDWy a használt feszültség forráson alapszik. A VLOW jel átvitelre ker O D YHYQHN tj\ ÄKDOOKDWy jelet adhat a használónak, hogy az adó tápforrásának a feszültség szintje alacsony. 6.2.2 537,60e7/e6-(/= Ez csak a HCS300/301-HVNyGROyQiOYDQ(]DELWD]HOVNyGV]yiWYLWHOVRUiQDODFVRQ\ szintben lesz. Ha a nyomógombot tovább tartjuk nyomva, mint egy kód szó átvitele, akkor az HOEE HPOtWHWW ELW iootwygln H]]HO MHOH]YH D] LVPpWOGpVW pv PHJPDUDG H] D] ioodsrw DPtJ D gombot nyomva tartjuk. 6.2.3 &5&&LNOXVUHGXQGDQFLDHOOHQU]ELWHN $&5&ELWHNHWD]HOWWHOpYELWUHV]iPROMDNL$YHYKDV]QiOMDIHOKRJ\HOOHQUL]]H D]DGDWRNLQWHJULWiViWD]HOWWKRJ\HONH]GHQpD] ]HQHWIHOGROJR]iViW(QQHNDVHJtWVpJpYHOD] egy bitben való eltérést, hibát 100%-osan és a két bitben való hibát 66%-osan képes felismerni. Ez az adottság a HCS360/361-es kódolókban található meg.

18 6.3 SEED ÁTVITELEK AKTIVIZÁLÁSA $VHHGiWYLWHOHNVRUiQD] ]HQHW VV]HWpWHOpUOPiUV]yYROWPRVWOiVVXND]V] NVpJHVD] aktivizálásukhoz (2. táblázatot). 2. Táblázat. A seed átvitelek aktivizálási módjai kódoló típusonként Kódolók Seed hossz Seed átvitel aktiválása HCS200 32 bit Seed átvitel azonnal, ha az S0, S1 és S2 egyszerre aktív HCS300 32 bit Seed átvitel azonnal, ha az S0, S1, S2 és S3 egyszerre aktív HCS301 32 bit Seed átvitel azonnal, ha az S0, S1, S2 és S3 egyszerre aktív HCS360 HCS361 48 bit 48 bit Seed átvitel azonnal, ha az S0 és S3 egyszerre aktív Seed átvitel 3 másodperc múlva, ha az S0 és S1 egyszerre aktív több mint 3 másodpercig Seed átvitel azonnal, ha az S0 és S3 egyszerre aktív Seed átvitel 3 másodperc múlva, ha az S0 és S1 egyszerre aktív több mint 3 másodpercig

19 7 A KEELOQ KÓDOLÓK ÉS DEKÓDOLÓK TITKOSÍTÓKULCS KÉSZÍTÉSEI $]HO]HNEHQPiUV]yYROWWLWNRVtWiVRNUyONyGROyDOJRULWPXVRNUyO0RVWYL]VJiOMXNPeg ezeket a folyamatokat részletesebben. A KEELOQ technológiát alkalmazó berendezések egy speciális titkosító algoritmust használnak az üzenetek kódolására és dekódolására. Ez az algoritmus a kódolóban és a dekódolókban is egyaránt megtalálható, csak az egyik a paraméterek kódolására (KEELOQ kódoló algoritmus), a másik pedig az üzenetek dekódolására (KEELOQ dekódoló algoritmus) használ egy 64 bites titkosító kulcsot. Ennek a kulcsnak az elkészítéséhez szükség van egy ~J\QHYH]HWW WLWNRVtWy NXOFV HONpV]tWDOgoritmusra. Azonban meg kell, hogy jegyezzük, hogy a NXOFVRWHONpV]tWDOJRULWPXVN O QE ]LND]HO]DOJRULWPXVRNWyO )RUUiV 1RUPiO6RUR]DWV]iP 7LWNRV6HHGiWYLWHO ELWHV *\iuwy NyG.XOFVNpV] $OJRULWPXV WLWNRVtWiV ;25 7LWNRVtWy NXOFV 9. Ábra. A KEELOQ eszközök kulcskészítése $NXOFVNpV]tWpVLHOMiUiVKiURPDODSHOHPEOpS OIHOPLQWDKRJ\D]t a 9. ábra is mutatja. Az egyik része, a tulajdonképpeni forrása a kulcskészítésnek. Ez rendszerint egy egyedülálló, pontosabban egyedi minden egyes kódolónál úgy, mint például a sorozat szám vagy a seed érték.

20 A második része az algoritmus, amely elkészíti a titkosító kulcsot. Végezetül a hármadik alkotóelem a 64 bites gyártó kulcs, amely a másik bemeneti eleme az algoritmusnak. $ NXOFVNpV]tW HOMiUiVEDQ D J\iUWy NyG KDV]QiODWD NDSFVRODWRW WHUHPW D NyGROy VRUR]DW száma és a kódoló/dekódoló kulcs között. Ez biztosítja a gyártónak, hogy olyan kódolókat készítsen, melyeket a konkurencia (illetéktelen személy) nem tud lemásolni. Ezért a gyártó kód EL]WRQViJDWLWRNEDQWDUWiVDHJ\NULWLNXVSRQWMDDUHQGV]HUEL]WRQViJiQDNDPHJU]pVpEHQ(]pUW van az is, hogy nem olvashatóak a kódolóban és dekódolóban letárolt adatok. A KEELOQ termékek két forrást használhatnak a titkosító kulcs elkészítéséhez (9. ábra). A sorozat számot abban az esetben használják, hogy ha normál tanításról van szó. Titkos tanítás esetében a HCSXXX kódolóknak van egy olyan képessége, hogy egy fix seed értéket továbbítsanak, ekkor ezt használják a titkosító kulcs generálásához. $WRYiEELDNEDQWHNLQWV NHJ\NLFVLWDGHNyGROyROGDOiUyODWLWNRVtWyNXOFVRNN O QE ] HONpV]tWpVLOHKHWVpJHLW.pWIpOH NXOFVNpV]tW DOJRULWPXV LVPHUHWHV $] HJ\LN HJ\V]HU&HQ ~J\ QHYH]LN KRJ\ titkosító algoritmus, a másik pedig XOR algoritmus. Abban az esetben, ha normál tanításról van szó, vagyis a sorozat szám az algoritmus egyik EHPHQHWL HOHPH DNNRU FVDN D] HOEE HPOtWHWW ÄWLWNRVtWy DOJRULWPXVW KDV]QiOKDWMXN D NXOFV elkészítéséhez. Viszont a titkos tanítás esetén mindkét algoritmust alkalmazhatjuk, választhatjuk. 7.1 TITKOS KULCSKÉSZÍTÉS (SEED A FORRÁS) A titkos kulcs generálása a kódolónak a seed átvitelén alapszik, amely az algoritmus forrása és a tanítási folyamat alatt készül. A Microchip HCSXXX kódolók képesek az üzenet ugró kódos részén egy 32 vagy 48 bites seed átvitelére. A seed átvitel során a kód szó tartalmazza magát a seed értékét, a sorozat számát a kódolónak és a kódolatlan funkció kódokat. A YpOHWOHQV]HU&HQJHQHUiOWVHHGpUWpNFVDNDWDQXOiVLSURFHG~UDDODWWWRYiEEtWyGLN(]pUWXWiQDKLiED kapják el az üzeneteket, nem tudják dekódolni azokat, mert nem a sorozat számból készült a titkosító kulcs.

21 7.1.1 XOR algoritmus használata a kulcskészítéshez $] DOJRULWPXV KDV]QiODWD VRUiQ D IXQNFLy NyG W UOGLN D] iwylwhoeo PDMG D] tj\ NDSRWW puwpnnho pv D J\iUWy NyGGDO;25 P&YHOHWHW KDMWXQN YpJUH $] HOMiUiV VRUiQ NDSRWW V]iP OHV] D titkosító (dekódoló) kulcsunk, amivel dekódoljuk a kapott üzenet ugró kódos részét.(10. ábra) 7.1.2 Titkosító algoritmus használata a kulcskészítéshez (QQHN D] DOJRULWPXVQDN D KDV]QiODWD VRUiQ LV D] iwylwhoeo D NyGRODWODQ IXQNFLy NyGRN W UOGQHN$10. ábrán is láthatjuk, hogy utána elmhqwld]iwylwhoihovelwmpwpdmgehroydvvdd J\iUWyNyGRW(]WN YHWHQHONpV]tWLDWLWNRVtWyNXOFVDOVyELWMpWpVHOPHQWLD]W%HROYDVVDD] iwylwho IHOV ELWMpW DPLW iwphqhwlohj HO]OHJ HOWiUROW pv HEEO SHGLJ HONpV]tWL D NXOFV PiVLN részét.

22 10. Ábra. XOR és titkosító algoritmus használata a kulcskészítéshez

23 8 A KEELOQ KÓDOLÓK ÜZENETKÜLDÉSÉNEK A FOLYAMATA Az alkalmazott algoritmus biztonságossá teszi az információt, ami azt jelenti, hogy minden egyes használat XWiQ D N YHWNH] NyG WRWiOLVDQ HOWpU D] HO]WO 6WDWLV]WLND EL]RQ\tWMD hogy ha 32 bites string-nél 1 bit változik, akkor kb. 50 %-os változás történik a kódolt átvitelnél. A kódolók gombnyomásra felélednek, majd egy kb. 10 ms-os késleltetés történik (11. ábra). )HOpOHGpV Q\RPyJRPEOHQ\RPiVW UWpQW 5HVHWpVNpVOHOWHWpV PV %HPHQHWHNPLQWDYpWHOH]pVH 6]LQNU,QIRIULVVtWpV 7LWNRVtWiVDWLWNRVtWy NXOFFVDO %HW OWLD]iWYLWHOLUHJLV]WHUW ÈWYLWHO,JHQ 7 UWpQWJRPE OHQ\RPiV" 1HP 0LQGHQJRPE IHOYDQ HQGHGYH",JHQ $NyGV]yiWYLWHOH PHJW UWpQW 1HP ÈOOM 11. Ábra. Az üzenetküldés folyamata

24 Ezek után beolvassa a bemeneteket, hogy melyik gombot nyomtuk le, majd frissíti (növeli) a számláló értékét. Utána a már ismert paraméterekkel megtörténik a titkosítás. Abban az esetben, ha ugyanazt a gombot nyomtuk meg kétszer egymás után akkor is más információ fog átvitelre kerülni, vagyis akkor is változik a kód. Ha nyomva tartjuk a gombot abban az esetben az történik, hogy ugyanazt a kódot küldi el addig míg abba nem hagyjuk, vagylgw~oopspvqhpw UWpQLN+D átvitel közben új gombnyomás történik, abban az esetben azonnal alapállapotba áll a rendszer, és a kód szó nem lesz teljes.

25 9 A KEELOQ KÓDOLÓK $.((/24 NyGROyN EHOV VHPDWLNXV IHOpStWpVpW D 12. ábrán láthatjuk. Ez az ábra a HCS200-DV NyGROy HVHWpQ DEEDQ WpU HO KRJ\ QLQFV /(' YH]pUO NLPHQHW pv FVDN KiURP nyomógomb bemenete van. 12. Ábra. A KEELOQ kódolók blokk diagramja 9.1 È/7$/È126-(//(0=. Biztonság Programozható 28/32 bites sorozat szám Programozható 64 bites titkosító kulcs Minden átvitel egyedi

26 66/67 bites átviteli kód hossz 32 bites ugró kód 34/35 bites fix kód (28/32 bites sorozat szám, 4/0 bit funkció kód, Vlow, Repeat/2 CRC bit) A titkosító kulcs olvasás védett 0&N GpV 3 vagy 4 nyomógomb bemenet 7 vagy 15 funkciót lehet megvalósítani Választható baud rate Automatikus power down az átvitel után $ODFVRQ\IHV] OWVpJMHON OGpVHDYHYQHN,5PRGXOiFLyVOHKHWVpJ (J\pEP&V]DNLSDUDPpWHUHN Chip-be van építve az EEPROM, oszcillátor és LG]tW NRPSRQHQVHN YDODPLQW D UHVHW áramkör $Q\RPyJRPEEHPHQHWHNEHOVOHK~]yHOOHQiOOiVRNDWWDUWDOPD]QDN /('YH]pUONLPHQHW $N YHWNH]NpWWiEOi]DWEDQD]HOEEiOWDOiQRVDQOHtUWDNDWHV]N ] NUHV]pWERQWYDOiWKDWMXN$3. táblázat az átviteli kódok összetételét, míg a 4. táblázat DP&N GpVL MHOOHP]NHW PXWDWMD részletesen.

27 3. Táblázat. Az átviteli kódok összetétele típusonként HCS200 HCS300/301 HCS360/361 Teljes átvitel hossza 66 bit 66 bit 67 bit Ugró kódos rész (teljes hossz) 32 bit 32 bit 32 bit Funkció bitek 3 bit 4 bit 4 bit Azonosító bitek 12 bit 12 bit 12 bit Szinkronizáló bitek 16 bit 16 bit 16 bit Fix rész (teljes hossz) 34 bit 34 bit 35 bit Sorozat szám 28 bit 28 bit 28/32 bit 2 Funkció bitek 3 bit 4 bit 4/0 bit 2 Státusz bitek Vlow 1 bit 1 bit 1 bit Repeat 0 1 bit 0 CRC 0 0 2 bit 2 Felhasználó által megválasztható, hogy 28 vagy 32 bites legyen a sorozat szám és ennek PHJIHOHOHQYiOWR]LNDIXQNFLyELWHNV]iPDLV 47iEOi]DW$P&N GpVLMHOOHP]NNyGROyWtSXVRQNpQW Kódolók HCS200 HCS300 HCS301 HCS360 HCS361 Bemenetek 3 4 4 4 4 Funkciók 7 15 15 15 15 Feszültség 3.5-13V 2.0-6.3V 3.5-13V 2.0-6.6V 2.0-6.6V Baud rate 2 3 3 2 2 LED kimenet Nincs Van Van Van Van,GW~OOpSpV Van Választható Választható Választható Választható Modulálás PWM PWM PWM PWM Manchester PWM VPWM Egyéb MHOOHP] Alacsony feszültség szint jelzése Túlcsordulást MHO]ELWHN Alacsony feszültség szint jelzése Ugyanaz, mint a HCS300 IR mód, 2 db önálló számláló, 2 CRC bit IR mód, 2 db önálló számláló, 2 CRC bit A továbbiakban a HCS3pV+&6NyGROyWHJ\ WWWiUJ\DOMXNPLYHOD]HO]WiEOi]DWEDQLV láthatóan csak az üzemeltetési feszültség szintben különböznek egymástól.