Lielākā daļa cilvēku sastop vārdu nonce VPN profilā un pieņem, ka tas ir vēl viens koplietojams noslēpums, kas jākopē starp partneriem. Tas tā nav. Nonce ir vērtība, kas nekad nedrīkst atkārtoties zem tās pašas atslēgas, un lielākajā daļā uz nonce balstītas šifrēšanas tā ceļo atklāti. Apjukums paliek nekaitīgs, līdz kāds to rediģē ar roku, un tieši tur sākas īstā bojājums.

No kurienes nonce patiesībā nāk

Autentificētai šifrēšanai ir vajadzīgs atšķirīgs nonce katrai ziņai, kas šifrēta zem atslēgas. Protokoli šo prasību izpilda dažādos veidos: monotoni pieaugošs skaitītājs, sāls, kas apvienota ar paketes identifikatoru, vai pietiekami gara nejauša vērtība. IKEv2 apmainās ar nonce sākotnējās apmaiņas laikā, un tie ir publiski ievades dati atslēgas atvasināšanai, nevis noslēpumi.

Unikalitāte var būt strukturāla vai varbūtiska. Skaitītājs nevar atkārtoties, līdz tas apgriežas, tāpēc protokols daudz agrāk definē atslēgas atjaunošanas punktu. Nejauša vērtība paļaujas uz pietiekamu bitu skaitu, lai sadursme būtu neticama ziņu robežās, kas ir cits arguments ar citu atteices režīmu. Protokola dokumentācija norāda, kura metode ir spēkā, un abas ir drošas tikai tad, kamēr tiek ievērota norādītā robeža.

DesignWhere uniqueness comes fromExhaustion is handled by
AES-GCM recordsAn IV, typically a counterRekey before the counter wraps
ChaCha20-Poly1305A 96-bit nonce from a counter or generatorA message limit per key
WireGuardA per-key 64-bit counterRekey at a message cap
OpenVPN AEADPacket identifier plus implicit key materialRekey on the packet-id limit
IKEv2Fresh nonces per exchangeA new security association

Cik patiesībā maksā atkārtota izmantošana

Nonce atkārtota izmantošana zem vienas atslēgas nav mazs efektivitātes jautājums. Ar GCM divas ziņas, kas dala IV, ļauj novērotājam atgūt autentifikācijas atslēgu un aprēķināt divu atklāto tekstu ekskluzīvo vai. Plūsmā balstītas konstrukcijas tādā pašā veidā atkārtoti izmanto atslēgas plūsmu, kas šifrēto tekstu pārvērš mīklā, nevis noslēpumā.

Tāpēc implementācijas atjauno atslēgu, pirms skaitītājs apgriežas, un tāpēc tās apstājas, nevis turpina, kad to stāvoklis ir nedrošs. Restartēšana, kas atiestata skaitītāju, kamēr partnerim vēl ir vecā atslēga, vai virtuālā mašīna, kas atjaunota no sesijas vidū uzņemta momentuzņēmuma, ir tieši tā situācija, kuras novēršanai robežas pastāv. Uzbrucējs nav vajadzīgs; pietiek ar parastām darbībām.

Kāpēc rediģēšana ar roku ir nepareizais risinājums

Skaitītāji, sāļi un pakešu identifikatori ir stāvokļa mašīnas, ko dala abi gali. Vienas puses maiņa izjauc otras sinhronizāciju, un tunelis sabrūk tā, ka tas izskatās pēc maršrutēšanas problēmas. Atbalstītā svira ir jauna atslēgu apmaiņa, kas vienlaikus atiestata stāvokli abos galos.

Paroles un nonce arī pilda dažādas lomas. Parole ir slepens ievades dati atslēgas atvasināšanai; nonce ir publiski ievades dati katrai ziņai. Profila lauks ar apzīmējumu nonce, kas prasa garu noslēpumu, parasti ir statiska atslēga vai iepriekš koplietots noslēpums citā nosaukumā, tāpēc lasiet šī lauka dokumentāciju, nevis pieņemiet.

Kad ieteikums attiecas uz nonce apstrādi, labojums ir uzturētāja labotā versija, nevis cits šifrs vai īsāka atslēga. Šifra maiņa, lai izvairītos no vārda nonce, pārvieto problēmu, nevis to atrisina.

Brīdinājuma lasīšana bez minējumiem

Žurnāla rindiņa par skaitītājiem vai nonce parasti apraksta zaudētu stāvokli, nevis uzbrukumu. Pārbaudiet, vai viens partneris nav restartēts, vai klonēta virtuālā mašīna nav atkārtoti izmantojusi to pašu identitāti un vai abi gali vienojas par atslēgas atjaunošanas iestatījumiem. Pēc tam izveidojiet jaunu sesiju un vērojiet, vai ziņa atgriežas.

Turiet diagnostiku atsevišķi no nesaistītām kļūmēm. Lapa, kas neielādējas, vai akreditācijas datu pieprasījums, kas atkārtojas cilpā, nav nonce atkārtotas izmantošanas pierādījums, un izturēšanās pret to kā tādu aizved jūs kriptogrāfijas slānī, kamēr problēma ir virs tā.

Parastai lietošanai drošais noteikums ir īss: ļaujiet implementācijai pārvaldīt nonce, turiet abus galus atbalstītās versijās un uzskatiet jebkuru stāvokļa atiestatīšanu par iemeslu atjaunot atslēgu, nevis rediģēt vērtību. Ja profila lauks nav piegādātāja dokumentācijā, neizdomājiet tam vērtību. Tuneļa labošana sākas ar zināšanu, uz kuru slāni jūs skatāties.

Saistītie raksti