Puncte:0

Protecție (adăugare neobișnuită?) împotriva descoperirii cheilor în AES 256

drapel in

Am o situație în care trebuie să trimit un mesaj cifrat cu AES-256. Cu toate acestea, conținutul și, prin urmare, lungimea mesajului poate fi interceptat înainte (nu întrebați;)) și întrebarea care mi-a fost adresată a fost „Nu este o vulnerabilitate care permite descoperirea cheii?”. Prima mea abordare a fost să estimez forța brută necesară pentru a sparge cheia și am ajuns să am un număr de aproximativ 2^40 până la 2^60 de ani.

Este mult și în comparație cu situația în care potențialul atacator nu cunoaște conținutul mesajului interceptat, nu arată mai bine.Cu toate acestea, a apărut o idee despre adăugarea unor nonce și acum mă gândesc cât de mare ar trebui să fie dacă aș dori să adaug câteva.

Să spunem, sarcina utilă este de 40 de biți. Deoarece AES lucrează cu un bloc lung de 16 octeți, ar avea sens să adăugați 11 octeți de nonce unic aleatoriu sau nu merită toată speculația efortul?

kelalaka avatar
drapel in
Pentru a sparge AES-256, singura ta problemă nu este timpul, ai nevoie de o putere imensă. [Cât ar costa în S.U.A.dolari pentru a forța brută o cheie de 256 de biți într-un an?](https://crypto.stackexchange.com/q/1145/18298). Care este originea acestei întrebări
drapel in
Scenariul este descris mai sus. Nu putem exclude posibilitatea de a intercepta mesajul inițial necriptat pe 40 de biți. Acel mesaj, criptat ulterior, va fi folosit și utilizatorul își face griji că ar putea fi ascultat cu urechea la ceea ce ar putea fi un potențial vector de atac pentru spargerea cheii. Am încercat să explic efortul unei astfel de metode de forță brută în timp, dar se pare că perspectiva financiară poate fi mai convingătoare, mulțumesc pentru acest sfat. Oricum, pentru a-mi consola utilizatorul, am vrut să adaug o sarcină utilă aleatorie, de unde întrebarea mea despre nonce.
Puncte:0
drapel ng

Mesajul poate fi interceptat înainte. Nu este o vulnerabilitate care permite descoperirea cheii?

Nu, pentru alegerea corectă a cheii (vezi 1 de mai jos). AES-256 este proiectat să reziste astfel Atac cunoscut în text simplu. Aceasta este o ipoteză standard și, într-adevăr $2^{256}$ este atât de imens de mare încât nu e nicio grijă să ai că cheia poate fi găsită căutând-o (pentru a pune lucrurile în perspectivă, risipa de resurse cunoscută sub numele de minerit bitcoin până acum a efectuat o muncă echivalentă cu mai puțin de $2^{100}$ criptare AES). Suntem în siguranță chiar dacă emitem ipoteze Calculatoare cuantice relevante din punct de vedere criptografic devenit vreodată un lucru.

Singurele protecții de care aveți nevoie împotriva descoperirii cheilor în AES-256 sunt

  1. Alegerea cheii aproximativ uniform la întâmplare. O parolă nu funcționează, întinderea tastelor nu-l voi tăia.
  2. Nedezvăluirea acestuia; vedea XKCD obligatoriu.
  3. Preveniți extragerea acestuia de pe orice dispozitiv în care este introdus.Aceasta este partea grea: de unde ești sigur că computerul tău nu este infectat de vreun troian? Și apoi sunt atacuri pe canale laterale și atacuri de culpa.

Să spunem, sarcina utilă este de 40 de biți. Deoarece AES lucrează cu blocuri lungi de 16 octeți, ar fi logic să adăugați 11 octeți de nonce unic aleatoriu sau nu merită toată această speculație efortul?

Există o alta motiv bun pentru a introduce ceva aleatoriu de-a lungul mesajului criptat: este necesar să rezistați Atacul cu text simplu alesși, în special, împiedică adversarii să testeze dacă două texte clare sunt identice doar prin compararea textelor lor cifrate.

De asemenea, observați că aplicațiile tipice care necesită confidențialitatea textului simplu necesită și integritatea acestuia, adică criptare autentificată, și criptare AES directă cu comun moduri de operare numai pentru criptare bloc-cifrare nu va da asta chiar și cu IV/nonce aleatoriu. În plus, unele aplicații necesită prevenire reluare, iar criptarea direct autentificată nu va da asta.

Alegerea unui algoritm criptografic nu este ceva de făcut ușor. Ne pare rău, dar acest lucru nu ar trebui să fie încercat de cineva care trebuie să pună această întrebare.

drapel in
Multumesc pentru raspuns! Cel care pune această întrebare este conștient de ignoranța sa și, din fericire, nu este singurul responsabil pentru problema dată (ar fi extrem de inconfortabil și neprofesionist). Protecția integrității a fost luată în considerare, dar vă mulțumesc și pentru că ați menționat asta.

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.