Autentificarea bateriilor a devenit o necesitate pentru numeroase dispozitive portabile. Există rapoarte despre supraîncălzirea bateriilor până la punctul de explozie în dispozitive larg răspândite, precum computere şi telefoane mobile. De exemplu, în iunie 2004, au fost retrase de pe piaţă 50000 de telefoane cu baterii contrafăcute. Aceasta s-a întâmplat ca răspuns la 18 rapoarte de răniri sau deteriorări de bunuri datorate exploziei unor baterii. În octombrie 2004, unul dintre marii furnizori de telefoane mobile a retras 1 000 000 de telefoane mobile datorită bateriilor necorespunzătoare. Aceste incidente sunt numai două exemple de supraîncălzire a unor baterii nesigure şi necertificate. Problema a stârnit atenţia generală, deoarece prin explozie bateriile pot provoca uneori rănirea utilizatorilor.
Problema fundamentală din spatele acestor baterii defecte este fabricarea defectuoasă. Este important de menţionat că OEM (Original Equipment Manufacturers) nu sunt responsabili pentru această situaţie. Sursele secundare, sau piaţa gri, produc şi vând aceste baterii ca o alternativă atractivă cu preţ redus. Adesea, pachetul de baterii sau bateria contrafăcută arată aproape la fel cu bateria originală a OEM. Ca expert, puteţi identifica etichetele de baterii contrafăcute prin inspectare, dar câţi dintre noi sunt experţi?

Deoarece în momentul cumpărării sunt dificil de identificat bateriile autentice prin comparaţie cu cele contrafăcute, OEM oferă un ultim zid de apărare, prin includerea unui software şi hardware de autentificare a bateriilor în cadrul echipamentelor portabile. Aceasta asigură siguranţa şi protecţia brand-ului, precum şi veghează asupra dreptului de proprietate intelectuală al OEM. Software-ul instalat pe un controler sau un procesor implementează rutine de autentificare în încărcătorul de baterii precum şi în interiorul bateriilor (Figura 1). Hardware-ul protejează împotriva condiţiilor de scurtcircuit, supraîncălzire, supraîncărcare şi descărcare puternică. La apariţia unor condiţii de eroare, echipamentul va notifica utilizatorul sau va porni procedura de închidere completă.
În interiorul software-ului gazdă din Figura 1, factorii de autentificare ai bateriei includ calcule complexe, lungimea bitului de cerere şi răspuns, şi chei de criptare/decriptare. Un proces de autentificare ce utilizează tehnica de identificare IFF (Identify Friend or Foe) simplifică procesul de autentificare prin utilizarea unei formule de calcul în locul unor valori fixe. Într-un sistem simplu, controlerul gazdă apelează bateria prin trimiterea unui număr mare. Controlerul din interiorul bateriei calculează o valoare de răspuns şi o trimite înapoi controlerului gazdă. Acesta compară valoarea returnată cu valoarea calculată local. Repetând procesul creşte nivelul de confidenţialitate şi securitate.
IFF a fost o tehnică militară utilizată în al doilea război mondial pentru identificarea şi autentificarea avioanelor de luptă. Diferitele baze militare trimiteau către avioanele de luptă un apel numeric, aşteptând răspunsul lor, şi apoi comparau acest răspuns cu valoarea determinată prin calcul matematic. Rezultatul verificării ducea la identificarea avioanelor ce soseau ca fiind avioane aliate sau inamice.
La comunicarea dintre sistemul gazdă şi baterie, se doreşte verificarea autenticităţii acesteia din urmă. Pot fi utilizate cu uşurinţă parole statice şi nume de utilizatori, dar trimiterea tuturor numelor şi parolelor într-un format necriptat este un mare dezavantaj. Cu acest sistem există posibilitatea ca un utilizator neautorizat să poată citi sau reproduce datele. Un alt tip de sistem constă dintr-o metodă de criptografie simetrică, ce implementează verificarea conexiunii. Această metodă este simplă şi relativ sigură. Gazda utilizează un tip de cifru (o cheie şi parolă) pentru verificare, iar informaţia cu privire la cifru nu este transferată în reţea. Procesul de autorizare este:
• Bateria este conectată;
• Gazda trimite un număr generat aleatoriu către baterie;
• Bateria primeşte numărul de la gazdă, codifică numărul recepţionat prin utilizarea cheii (cifru pus la dispoziţie de gazdă) şi trimite rezultatul înapoi la server.
Urmând secvenţa de mai sus, gazda primeşte răspunsul. Prin utilizarea numărului trimis anterior către baterie descifrează apoi mesajul primit şi compară parola cu rezultatul său. Dacă răspunsul este corect, energia bateriei este transferată. Dacă nu, conexiunea este întreruptă de către gazdă. Figura 2 prezintă o comparaţie a resurselor necesare pentru implementarea câtorva tipuri de algoritmi de criptare uzuali.

Criptarea KEELOQ®
Criptarea KEELOQ este patentată de Microchip şi se bazează pe un algoritm de criptare simetric pe 32 de biţi, care utilizează o cheie de criptare de 64 de biţi. Această tehnologie poate fi utilizată în aplicaţii de autentificare pentru sisteme de la RKE (Remote Keyless Entry) şi PKE (Passive Keyless Entry) şi până la sisteme de autentificare. Programul ciclurilor de executare pentru codul KEELOQ ocupă 16k dacă se utilizează microcontrolerul Microchip PIC16C62x. El nu se bazează pe scheme dispersate care calculează o sumă sau o semnătură bazată pe diferitele intrări, dar intrările pot fi recalculate prin utilizarea algoritmului opus (criptare vs. decriptare). Dimensiunea de cod relativ mică de 47 de cuvinte permite utilizarea de microcontrolere mai mici, precum PIC10F care este disponibil în capsulă SOT-23 cu 6 pini.
Calculul matematic nu este un secret în tehnologia KEELOQ. Securitatea KEELOQ este dată de dificultatea de a prezice rezultatul numai pe baza accesului limitat la intrări sau la combinaţii de intrări/ieşiri. Algoritmii de securitate sunt analizaţi pe baza naturii neliniare a algoritmilor; aceasta face să fie mult mai greu de determinat o cale sau o secvenţă pe baza unor seturi de perechi de intrări / ieşiri. Cu cât mai mare este dimensiunea cheilor de intrare, cu atât există mai multe combinaţii posibile. Aceasta creşte timpul necesar pentru un atac în forţă (încercarea tuturor combinaţiilor posibile), făcându-l din acest motiv irealizabil. Algoritmul KEELOQ combină o lăţime de date de 32 de biţi şi o cheie de 64 de biţi, fiind util pentru aplicaţii de control acces sau autentificare. Securitatea reiese din soliditatea algoritmului şi calea prin care sistemul gestionează cheile de criptare. Prin utilizarea unui număr din numai 32 de biţi pentru calcularea perechilor cerere/răspuns se oferă 4,3 miliarde de posibile combinaţii. Acum, dacă acesta nu pare un număr foarte mare, trebuie ţinut cont că algoritmul KEELOQ utilizează o cheie unică de 64 de biţi pentru fiecare unitate derivată din codul respectiv al fabricantului. Acest lucru, combinat cu apelul aleatoriu şi mereu în schimbare ales de dispozitivul gazdă, poate creşte numărul de permutări posibile prin includerea numărului unic de 64 de biţi peste cei 32 de biţi ai răspunsului la apel. Aceasta creşte numărul de posibile combinaţii la 264 x 232 = 296, care este fără putinţă de tăgadă un număr foarte mare. Gazda poate implementa o schemă de autentificare multi-pas în care să fie necesare mai mult de un singur ciclu apel/răspuns, sau adăugând întârzieri pentru răspunsuri incorecte, extinzând şi mai mult timpul necesar pentru încercarea mai multor combinaţii.
Concluzie
Există mai mulţi algoritmi publici care criptează şi decriptează mesaje de cod de autentificare (MAC), care calculează un răspuns ireversibil, fără coliziuni, cu un înalt grad de dispersivitate. Este foarte importantă oricum evitarea situaţiei în care combinaţii multiple de intrare să conducă la acelaşi răspuns decriptat. Metoda de criptare KEELOQ poate fi utilizată pentru criptarea unor informaţii sensibile şi, datorită naturii de cifru bloc simetric a algoritmului, are abilitatea de a recupera intrarea din valoarea de ieşire calculată prin utilizarea aceleiaşi chei de criptare şi a algoritmului invers. Prin comparaţie cu majoritatea algoritmilor, amprenta necesară implementării algoritmului KEELOQ este mică. Algoritmul KEELOQ necesită mai puţin RAM şi memorie program, şi viteză de execuţie mai mică, făcându-l potrivit pentru implementarea pe microcontrolere economice Microchip PIC10F cu 6 pini.
de Bonnie C. Baker, Microchip Technology Inc.
www.microchip.com