Puncte:1

Ce moduri de criptare bloc sunt cel mai bine utilizate în situații din viața reală?

drapel sa

Pentru un examen pentru care studiez, mă întreb ce moduri de criptare bloc sunt cele mai bune de utilizat în anumite situații.

Am aflat despre aceste moduri de criptare bloc: ECB, CBC, CFB (+ s-bit), OFB (+ s-bit) și CTR.
Din câte am înțeles: unii pot fi paralizați, alții nu. Unele pot fi transformate într-un cifr de flux (s-bit), altele nu. Unele au o propagare mai proastă a erorilor. Fiecare are (de)avantajele lor.

Întrebarea mea este, ce metode de criptare bloc sunt preferate în anumite situații, de exemplu pentru chat-urile video, pentru a stoca parole, pentru a trimite date cu un micro-controler, ...

kelalaka avatar
drapel in
Bine ați venit la Cryptography.Se Aceasta este o întrebare destul de largă la care nu se poate răspunde complet.
drapel sa
Ei bine, există o mare șansă ca profesorul meu să mă întrebe în continuare acest lucru la examen și va trebui să ofer un răspuns... De exemplu, pentru a stoca parole, este o idee foarte proastă să folosești ECB, deoarece blocurile egale sunt criptate în același fel. Caut alte indicii de genul ăsta.
kelalaka avatar
drapel in
Pentru parole, nu criptăm, folosim algoritmi de hashing a parolelor, acesta este răspunsul corect. Consultați [Cum să hașați în siguranță parolele?](https://security.stackexchange.com/q/211/86735). Dacă insistați asupra criptării, atunci cum păstrați cheia de criptare în siguranță?
SAI Peregrinus avatar
drapel si
IMO, unul dintre GCM-SIV, GCM, OCB, CTR sau XTS pentru criptare (nu hashing parole). OCB este cel mai rapid, dar nu este la fel de larg acceptat (a fost patentat până de curând) și nu este rezistent la utilizare greșită, GCM-SIV este bun pentru majoritatea utilizărilor și este rezistent la utilizare greșită, dar are 2 treceri, GCM este obișnuit, dar nu este utilizat necorespunzător. -rezistent, XTS nu se autentifică și, prin urmare, este mai slab, dar nu extinde textul cifrat, așa că este folosit pentru criptarea completă a discului, iar CTR este un bloc de construcție pentru modurile autentificate și este ocazional utilizat în cazul în care autentificarea este furnizată la un alt nivel al unui protocol . Restul sunt mult mai puțin utile.
Swashbuckler avatar
drapel mc
@kelalaka Uneori criptăm parole, depinde de ce este folosită parola. Dacă este folosit pentru a ne autentifica, atunci nu o facem, dacă stocăm parola pentru a ne autentifica la altceva, atunci criptăm.
drapel kr
@kelalaka: „*Pentru parole, nu criptăm, folosim algoritmi de hashing a parolei*” - Acest lucru este adevărat doar într-un caz, când parolele sunt necesare pentru autentificarea utilizatorului. Dar când utilizatorul stochează parole în managerul de parole, atunci, desigur, aceste parole sau, în mod normal, întreaga bază de date a parolelor este criptată, de ex. cu AES-256. Dacă doriți să dezvoltați un manager de parole, este foarte important ce mod să alegeți.
kelalaka avatar
drapel in
Da, am luat în considerare doar autentificarea. Nu am menționat alte utilizări în care este nevoie de parolă mai degrabă decât de valoarea hash.
drapel cn
BCE este o alegere proastă pentru orice. Dacă nu puteți garanta, același mesaj nu este niciodată trimis de două ori cu aceeași cheie. Aceasta este o restricție asupra mesajelor - și este mai bine să evitați asta.
Puncte:1
drapel ng

În situații din viața reală, cu excepția compatibilității cu sistemele existente, rareori ar trebui să fie utilizat direct oricare dintre modurile de criptare enumerate în întrebare, deoarece acestea oferă în cel mai bun caz criptare sigură (avertisment: ECB nu), ceea ce nu nu acoperi nevoile majorității situațiilor din viața reală.

În aplicațiile reale, dacă aveți nevoie de criptare, de obicei trebuie să preveniți modificarea nedetectată a mesajului (de exemplu, eliminarea unei părți a acestuia, modificarea unui segment). Prin urmare, este nevoie de un mod care oferă criptare și autentificare¹, cum ar fi GCM combinat cu cifrul bloc AES. Este suficient de rapid pentru „conversații video” cu un procesor modern și suficient de simplu pentru a „trimite date cu un micro-controler”.

Astfel de criptare autentificată modul va folosi adesea intern unul dintre modurile întrebării pentru criptarea pe care o oferă, de ex. GCM folosește CTR.ECB/CBC/CFB/OFB tinde să fie eliminate treptat pentru CTR, deoarece CTR este simplu, rapid, ușor paralelizabil și permite accesul direct de citire/modificare/scriere la fișiere mari fără a re-cripta ceea ce urmează. Sunt singurele dezavantaje

  • Maleabilitatea², dar aceasta este rezolvată în întregime prin criptare autentificată.
  • Sensibilitatea la reutilizare a Vector de inițializare/nonce. Acest lucru poate fi atenuat prin proceduri bune pentru a genera IV sau moduri de criptare autentificate care nu sunt rezistente la utilizare greșită, cum ar fi GCM-SIV.

Pentru a „stoca parolele”, de multe ori nu dorim să folosim criptarea, ceea ce implică posibilitatea decriptării, când deseori putem trăi cu un sistem care nu necesită niciodată decriptarea parolelor și, prin urmare, este mai puțin vulnerabil la scurgerile de date (există unele excepții). precum managerii de parole). Pentru parole, prima alegere este hardware-ul securizat conceput pentru stocarea parolelor. A doua alegere este de a stoca pe disc rezultatul unei funcții hash în mod deliberat lente și sărate a parolei, cum ar fi Argon2. Ultima alegere este criptarea autentificată a parolei. Observați că autentificarea contează: numai cu criptare, este de teamă că cineva cu acces de citire/scriere la parolele criptate poate reseta parola unui utilizator la una cunoscută, fără cheie, dacă cunoaște parola altui utilizator.


¹ În sensul că textul simplu descifrat se potrivește exact textul simplu care a fost criptat cu cheia de criptare, ceea ce îl face autentic.

² În sensul de a permite modificarea sensului textului simplu descifrat pentru textul simplu cunoscut, de ex. Schimbare plătiți 1000 USD la plătiți 9800 USD. Modul CBC sau CFB fac un astfel de atac mai dificil, dar nu oferă criptare completă autentificată.

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.