In VPN-profyl biedt Blowfish mei in kaai fan 448 bits oan, en immen stelt foar de langste kaai te brûken om it fersifer te behâlden. De kaailingte is echt, mar it is it ferkearde getal om te optimalisearjen. Blowfish ferwurket blokken fan 64 bits, hoefier't de kaai ek is, en de blokbreedte is wat beheint hoefolle ferkear ien kaai feilich beskermje kin. Rin de kontrôles hjirûnder yn folchoarder út en stop by de earste dy't de tsjinst frijsprekt, want in lettere stap kin in eardere net reparearje.

Kontrolearje wat de partijen eins ûnderhannelje

Lês it fersifer fan it datakanaal oan beide einen, net út it profyl dat jo fan plan wiene te útrôljen. In klantkonfiguraasje kin ferskate fersifers listje, en it keazen ien is it resultaat fan ûnderhanneling tusken twa ymplemintaasjes en har ferzjes. Ferheegje de logdetail op in testferbining en lês de datakanaalrigel, dy't it fersifer en de kaaigrutte neamt dy't feitlik initialisearre is.

As it ûnderhannele fersifer AES-GCM of ChaCha20-Poly1305 is, stop dan hjir. Dy konstruksjes brûke in blok fan 128 bits en autentisearje de lading, dus it argumint oer 64-bits botsingen hjirûnder jildt net foar har.

Skied kaailingte fan blokbreedte

Blowfish akseptearret kaaien fan 32 oant 448 bits, en de dokumintaasje fan de algoritme-auteur neamt beide getallen apart. De kaai is it geheim; it blok is de ienheid fan transformaasje. In langer geheim makket it rieden swierder en docht neat oan 'e breedte fan it blok dat it fersifer ferwurket.

Yn CBC-modus wurdt it fersifer tapast op blokken fan fêste breedte, keatst mei it foarige fersifertekstblok en oan 'e ein opfold. Foar Blowfish is dy breedte 64 bits, of acht bytes. It kaaiskema kin sa grut wêze as jo wolle; de keatling skoot noch altyd acht bytes per kear op.

Dêrom is in langere kaai gjin tsjinmaatregel. It rjochtet him op brute force tsjin de kaai, wylst it botsingsrisiko hjirûnder in eigenskip is fan 'e blokbreedte en de modus.

Rekkenje de jierdei-aritmetyk op 'e blokgrutte

In blok fan 64 bits hat in jierdeiskaal fan sawat 2^32 blokken fersifere ûnder ien kaai foar't botsingen wierskynlik wurde. Elk blok draacht acht bytes, dus deselde skaal is sawat 2^35 bytes, of 32 GiB oan gegevens ûnder ien inkele kaai.

Besjoch dat as in skaal, net as in kwotum. Botsingen binne probabilistysk, en oft ien eat lekket hinget ôf fan 'e modus, it ferkearspatroan en oft de oanfaller de omlizzende heldere tekst werkenne of beynfloedzje kin. De earste byte foarby 32 GiB is gjin ûntsifering barren, en de earste 32 GiB binne net as feilich sertifisearre.

De Sweet32-ûndersikers demonstrearren yn 2016 praktyske oanfallen op 64-bits blokfersifers, wêrûnder in OpenVPN-senario, ûnder betingsten dy't observaasje en ferkearsgeneraasje fregen. Har publisearre standertwearden en softwareferzjes binne histoaryske kontekst, gjin beskriuwing fan jo útrôl.

Bepale oft wergebrûk fan CBC hjir ta docht

Yn CBC betsjut in werhelle fersifertekstblok dat de twa heldere tekstblokken in bekend ferhâlding hawwe, om't de keatling-XOR himsels opheft. In oanfaller dy't de fersifertekst observearje kin en ien fan 'e heldere teksten ken of beynfloedzje kin, kin mooglik ynformaasje oer de oare weromfine. De Blowfish-kaai is dêrfoar nea nedich.

De relevante fragen binne dus hoe lang in kaai yn gebrûk bliuwt, hoefolle ferkear der ûnder trochgiet en oft immen dat ferkear sjen en stjoere kin. Kaai fernijing ferleget it bloktal per kaai, mar in tiidsinterval is gjin byte limyt: in drokke tunnel kin yn deselde oere folle mear gegevens ferpleatse as in lege. As jo in âlder fersifer behâlde, lied dan de limyt ôf út 'e konstruksje en it feitlike folume, net út in rûn getal.

As it metten folume per kaai fier ûnder de jierdeiskaal bliuwt, is de bleatstelling lytser. It is noch altyd net nul en noch altyd in reden om in migraasje te plannen yn plak fan jo gjin soargen mear te meitsjen.

Ferfang it fersifer, net de kaai

Ferpleats de tsjinst nei in stipe AEAD-fersifer en befêstigje dat beide partijen, har ferzjes en har kryptografyske backends it ûnderhannelje kinne. In langere Blowfish-kaai feroaret neat dat ta docht, en in nij rjochtline op ien klant riede is hoe't in wurkjende tunnel in brutsen ien wurdt. Test de feroaring op ien klant en ien server foar't jo de rest fan 'e float oanreitsje. Hâld it âlde profyl beskikber foar weromrollen oant it nije fersifer in folsleine ferbiningssyklus trochstien hat.

Hâld sertifikaatferifikaasje en accountautentikaasje yn stân by de feroaring. Se beantwurdzje ferskate fragen: in slagge oanmelding kin in blok net breder meitsje, en in better datafersifer is gjin ekskuus om de ferkearde server te fertrouwen.

Slút de kontrôle ôf troch it ûnderhannele fersifer opnij te lêzen op in nije ferbining en befêstigje dan dat it âlde fersifer net mear akseptearre wurdt. As in partij it noch oanbiedt, is de migraasje net klear, wat it profyl oan 'e oare kant ek seit.

Relatearre artikelen