Provizionare securizată: fiecare dispozitiv primește o identitate pe care o poate dovedi
Un dispozitiv pe banc pare terminat. Pornește, funcționează, vorbește cu cloud-ul. Dar pune-i o singură întrebare — cine ești și poți dovedi asta — și cea mai mare parte a hardware-ului amuțește. Are firmware, dar nu are un sine. Este un lucru care merge, nu o identitate în care poți avea încredere.
Identitatea nu este ceva ce adaugi mai târziu
Un dispozitiv livrat fără o identitate unică este un dispozitiv despre care vei ghici tot restul vieții lui. Flotele trebuie să autentifice fiecare unitate, să revoce una singură compromisă, să cripteze traficul pe fiecare dispozitiv și să lege o garanție sau un abonament de un serial anume. Nimic din toate acestea nu funcționează dacă fiecare unitate este interschimbabilă. Identitatea este un drept din naștere, creat o singură dată, la fabrică, înainte ca dispozitivul să vadă vreodată o rețea. A o adăuga ulterior, pe teren, înseamnă să ai încredere într-un dispozitiv în care nu ai încă niciun motiv să te încrezi.
Cheile se creează pe linie, nu se scriu într-un tabel
Cea mai puternică identitate trăiește într-un element securizat — un cip mic, rezistent la manipulare, care își generează singur cheia privată și nu o lasă niciodată să iasă. Cheia se naște în siliciu și moare în siliciu. Ce iese afară este doar jumătatea publică și un certificat semnat de CA-ul fabricii tale. Injectarea cheilor pe linie este o ceremonie controlată: o stație de provizionare vorbește cu elementul securizat, declanșează generarea cheii pe cip, înregistrează cheia publică și serialul și înrolează dispozitivul în backendul tău de identitate. Cheia privată nu este văzută niciodată de un om, de un jurnal sau de un hard disk.
Atestarea transformă o afirmație în dovadă
O identitate pe care nu o poți verifica este un abțibild. Atestarea înseamnă că dispozitivul dovedește, criptografic, că este unitatea care spune că este și că rulează firmware-ul pe care l-ai semnat. La primul contact, dispozitivul își prezintă certificatul și semnează o provocare cu cheia pe care numai el o deține. Backendul verifică semnătura față de cheia publică înrolată și lanțul până la CA-ul tău. Nimic partajat, nimic ghicibil. Și aceasta este regula care salvează companiile în tăcere: nu livra niciodată un secret implicit partajat. O singură parolă imprimată în o sută de mii de unități este la un scurt pas de a-ți deschide întreaga flotă. Chei per dispozitiv înseamnă că o compromitere este compromiterea uneia singure.
Când fabrica nu este pe deplin de încredere
Rareori deții linia. Ea aparține unui producător contractual, în altă țară, cu oameni pe care nu îi vei întâlni niciodată. Așa că proiectează ca și cum fabrica ar fi curioasă și ocazional ostilă. Elementul securizat generează singur cheile, așa că producătorul nu atinge niciodată o cheie privată. Stația de provizionare se autentifică la backendul tău, așa că o stație clonată nu poate înrola dispozitive fantomă. Limitezi câte identități poate crea o linie și reconciliezi serialele înrolate cu unitățile efectiv livrate — un surplus este un lot furișat. Încrederea devine măsurabilă în loc de presupusă.
Un dispozitiv pe care nu îl poți identifica este un dispozitiv în care nu poți avea încredere, pe care nu îl poți rechema și pe care nu îl poți proteja.— Protocore · Inginerie firmware
Într-un program de hardware conectat am construit mai întâi calea de provizionare — element securizat, chei pe cip, un serviciu de înrolare și un raport de reconciliere pe care clientul îl citea în fiecare dimineață — înainte să livrăm o singură funcționalitate. Când un bug ulterior de firmware a cerut o rechemare țintită, au revocat exact unitățile afectate și le-au lăsat pe restul să funcționeze. Exact asta este ideea. O identitate creată corect la fabrică nu este birocrație; este diferența dintre a opera o flotă și a doar spera în privința ei.
Ai un sistem de construit?
Spune-ne care e problema. Revenim cu o arhitectură și un plan.
Începe un proiect