Puncte:0

Ce sistem de criptare să utilizați dacă părțile mesajului sunt cunoscute?

drapel be

Doresc să criptez un firmware de sistem, iar actualizările viitoare de firmware vor folosi același sistem de criptare. Deoarece acest firmware nu este complet de la zero, ci se bazează mai degrabă pe un cadru existent, este foarte probabil ca părți din codul firmware-ului original să fie cunoscute, cu alte cuvinte, că secvențele lungi ale mesajului de criptat ar fi cunoscute de orice atacator. (dintre care unele sunt cunoscute a fi 1 complet și 0 complet)

Având în vedere acest lucru, pot să folosesc doar, să zicem, AES, care păstrează secvența blocurilor de 128 de biți? Sau trebuie să folosesc o criptare specifică adaptată unui astfel de caz de utilizare? Nu știu dacă este încă robust împotriva unui atacator care are perechi de blocuri necriptate/criptate și întâmpin probleme în a găsi informații despre acel caz de utilizare.

Bănuiesc că este, dar aș prefera să verific. Mulțumiri.

forest avatar
drapel vn
Depinde cu adevărat de obiectivele dvs. de securitate și de modul în care implementați criptarea.Doriți să detectați firmware-ul modificat și să refuzați să îl executați sau să împiedicați citirea firmware-ului? În ce mod de operare folosești AES? De unde vine cheia? Ce face decriptarea? Cum verifici integritatea? La întrebarea simplă dacă AES este sau nu vulnerabil la un atac de text clar cunoscut (un atac care este posibil atunci când aveți perechi de text clar/text cifrat), răspunsul este nu.
kelalaka avatar
drapel in
Și cum păstrați cheia de criptare? Ai un drum lung de parcurs. Chiar și [Xilinx a avut greșeli](https://crypto.stackexchange.com/a/88822/18298)
Julien BERNARD avatar
drapel be
@forest Sunt în poziția enervantă de a fi nevoit să folosesc un blitz extern nesecurizat pentru acel dispozitiv, dar totuși îi pasă că firmware-ul nu este analizat. Deci cheia... trebuie să fie și ea în flash (ea însăși criptată în anumite moduri). Deci, este de fapt să facem cât mai greu de analizat, mai degrabă decât imposibil. Bănuiesc că există două probleme separate: a face astfel încât actualizările de firmware să nu poată fi analizate singure și a face cât mai dificilă analiza firmware-ului/clonarea dispozitivului odată ce ajungeți la flash. Mulțumesc pentru răspuns, nu știam că se numește atac prin text simplu.
Julien BERNARD avatar
drapel be
Pentru verificările integrității actualizării firmware, primul meu gând este să încorporez niște CRC în pre-criptarea actualizărilor de firmware. Există îngrijorări în legătură cu asta?
forest avatar
drapel vn
@JulienBERNARD Ceea ce descrii este pur și simplu imposibil. Dacă cheia este stocată împreună cu firmware-ul, aceasta poate fi analizată, de obicei destul de ușor, indiferent de cât de mult ați încerca să ofuscați cheia. În ceea ce privește verificările de integritate, un CRC este bine dacă doriți doar să detectați corupția accidentală. Dacă nu aveți hardware care acceptă verificarea (adică sistemul va _refuza_ să execute codul dacă nu are o semnătură validă, cu cheia publică fiind arsă în CPU însuși), nici nu o puteți verifica.
Puncte:-1
drapel gy

Indiferent de schema de criptare simetrică (3DES, AES,...), vă sugerez să utilizați un mod de criptare care poate ascunde modelele de date. Dacă utilizați CBC ca mod de criptare va fi textul dvs. cifrat randomizat prin utilizarea unui IV aleatoriu (Vector de inițializare). Apoi puteți transmite IV-ul receptorului în text simplu.

forest avatar
drapel vn
Acesta nu este într-adevăr un răspuns bun, deoarece nu abordează preocupările specifice hardware-ului și oricum este puțin înșelător (folosirea unei construcții IND-CPA nu este o soluție la problema lui OP).

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.