Puncte:0

RC4-40 cu configurare IV (32 de biți).

drapel pk

am luat acest implementarea RC4 scrisă în C.

Am cheie pe 40 de biți și IV pe 32 de biți (ambele în hex).

Deci, întrebările sunt despre Pasul KSA:

  1. Cum ar trebui să transform valoarea cheii hexadecimale în matricea char? Doar convertiți-l în lung?

  2. Unde ar trebui să introduc IV? (Unii scriu să-l concat cu cheia, alții scriu că S este deja IV)

  3. Dacă S este deja IV, cum ar trebui să-mi transform IV-ul pe 32 de biți în matrice de 40 de biți? Următorul mod?

    pentru (int i = 0; i < 32; i++) S[i] = (iv >> (32 - 1 - i)) & 1; ?

Am făcut o investigație înainte de a întreba aici, dar nu găsesc răspunsuri.

fgrieu avatar
drapel ng
După cum se spune în [răspunsul](https://crypto.stackexchange.com/a/99456/555), 40 de biți este o cheie prea scurtă și nu poate fi sigură. Și concatenarea chiar și a unei chei mai late și IV este nesigură. Prin urmare, nu este clar cum trebuie înțeles „trebuie” întrebării. Reproduce vreun sistem existent? În acest caz, ar trebui să se cerceteze dacă este acest sistem și ce face. Concatenarea cheii și IV (și poate umplerea cu zerouri la 256 de octeți) ar fi una dintre cele mai simple. Dar din nou, acest lucru nu este sigur. Dacă se dorește un sistem sigur bazat pe RC4, [key streching](https://en.wikipedia.org/wiki/Key_stretching) ar fi de ajutor.
Puncte:3
drapel fr

RC4 nu ia IV. Acest lucru este relativ neobișnuit în cifrurile de flux, dar este cazul în RC4.

Pare tentant să concatenezi doar cheia cu IV-ul, iar aceasta este abordarea adoptată în WEP. Această abordare este, de asemenea, complet nesigură, deoarece RC4 este vulnerabil la atacurile cheie asociate. Combinat cu faptul că fluxul de chei RC4 are părtiniri semnificative chiar și atunci când este utilizat cu o cheie complet aleatorie, acest lucru este de obicei suficient pentru a recupera textul simplu. Acest lucru pentru WEP se poate face cu instrumente automate relativ rapid chiar și pentru o cheie de 104 biți.

Nu ar trebui să utilizați RC4 în niciun scop în zilele noastre și cu siguranță nu cu o cheie de 40 de biți. Dacă aveți nevoie de un cifru de flux securizat cu IV, aș recomanda ChaCha20 cu o cheie de 256 de biți. Este atât mai sigur, cât și mai rapid decât RC4.

Dacă intenționați să utilizați un IV aleatoriu, atunci aș recomanda varianta XChaCha20, care permite un nonce aleatoriu de 192 de biți. Nonce pentru ChaCha20 obișnuit este prea scurt pentru a utiliza nonce aleatorii din cauza riscului de coliziune, dar este bine dacă veți folosi o abordare nonce bazată pe contra.

Dacă utilizați acest lucru în lumea reală, veți dori și protecție a integrității, care este de obicei oferită de Poly1305 împreună cu ChaCha, dar puteți utiliza și HMAC criptare-apoi-MAC.

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.