Puncte:1

Trebuie să schimb IV în AES-256 GCM atunci când folosesc doar criptarea pentru schimbul de răspuns la provocare cu șir aleatoriu?

drapel ag

Când vreau să folosesc criptarea numai pentru schimbul de răspuns-provocare și nu pentru a ascunde conținutul unui mesaj criptat, este încă o amenințare pentru mine să nu schimb IV pentru o nouă criptare?

Pentru a înțelege mai ușor de ce întreb asta, iată situația mea:

Folosesc două Arduino-uri cu transceiver LoRa pentru a comunica între ele. Unul este un pod conectat la internet, iar celălalt este conectat la servo și senzori.

Nu-mi pasă dacă potențialul atacator știe că un pachet, de exemplu, rotește servo la dreapta și un alt pachet trimite date de la senzorul de umiditate către punte.

Singurul lucru de care țin este că atacatorul nu poate imita niciuna dintre aceste comenzi, așa că nu poate să-mi rotească servomotoarele și să trimită valori proaste care nu provin de la senzorul meu de umiditate.

De aceea folosesc schimbul de provocare-răspuns, astfel încât să pot verifica dacă bridge-ul meu a trimis pachetul și etc.

Dar nu există nicio modalitate (cel puțin una pe care o cunosc) să schimb IV cu celălalt Arduino, astfel încât să poată decoda provocarea.

Întrebările mele sunt:

Schimbarea IV-ului nu poate fi în cazul meu exploatată cumva? Daca da. Cum și ce înseamnă pentru mine?

Există vreo modalitate mai bună de a o face?

Maarten Bodewes avatar
drapel in
CBC-MAC este bine pentru mesaje de dimensiuni fixe. Puteți să o reduceți la 64 de biți dacă este posibil să rămâneți fără spațiu.
kelalaka avatar
drapel in
IV nu este schimbat, IV este generat local apoi transmis cu textul cifrat, de obicei ca $IV|Ciphertext|AuthenticanTag$. DACĂ nu vă pasă că atacatorul vă cunoaște datele, poate aveți nevoie doar de integritate și autentificare. Puteți utiliza pur și simplu HMAC. Rețineți că atacurile de reluare ar putea fi posibile în cazul dvs.
Maarten Bodewes avatar
drapel in
Se pare că HMAC este acceptat din fabricație, cu o bibliotecă recentă. Dar pentru CBC-MAC, veți avea nevoie de implementarea modului CBC moștenit (și faceți singur biți-padding). S-ar putea, totuși, să fie mai rapid, depinde foarte mult de detaliile implementării. HMAC-SHA-1 ar trebui să fie suficient de rapid și sigur pentru majoritatea scopurilor.
kelalaka avatar
drapel in
Și, mai multe detalii despre catastrofa de reutilizare IV a AES/GCM sunt [aici](https://crypto.stackexchange.com/q/26790/18298)
Puncte:3
drapel ru

Trebuie să schimbați IV de fiecare dată.

A fost observat în diferite locuri (vezi de exemplu Joux „Eșecuri de autentificare în versiunea NIST a GCM" secțiunea 3) că un singur IV repetat este foarte probabil să ofere unui atacator capacitatea de a calcula singur etichete de autentificare. Împreună cu maleabilitatea modului de contor, dacă atacatorul cunoaște XOR a două răspunsuri și criptarea autentificată a unuia, el ar putea atunci liber să-l creeze pe celălalt.

După cum s-a menționat în comentarii, tastată HMAC oferă o alternativă foarte bună. Un simplu schimb de răspunsuri la provocare ar putea fi:

  • Bridge: „Vreau să vă dau o instrucțiune”
  • Servo: nonce
  • Pod: comanda,HMAC(Cheie secreta,nonce|comandă)

Servo verifică valoarea HMAC în raport cu propriul calcul și, dacă acestea sunt egale, execută comanda. Cu condiția ca servo să nu repete nonces și cheia să rămână secretă, acest lucru ar trebui să funcționeze. Nonce-urile pot fi chiar de la un contor (cu condiția ca contorul să nu poată fi forțat să se repete).

kelalaka avatar
drapel in
Ei bine, de fapt, un IV zero poate fi folosit pentru o lungă perioadă de timp cu construcție deterministă, cu condiția să nu existe zdrobire de sistem. [NIST sugerează deja acest tip de utilizare](https://crypto.stackexchange.com/q/84357/18298). Încă riscant pentru OP și GCM are multe capcane, HMAC este mai bine să fie folosit, deoarece are capcane.

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.