Google hat ûntjouwings ûntdutsen yn ferbân mei it PSP-befeilige netwurkprotokol

Google hat de iepening fan spesifikaasjes oankundige en in referinsje-ymplemintaasje fan it PSP (PSP Security Protocol), brûkt om ferkear tusken datasintra te fersiferjen. It protokol brûkt in ferkear-ynkapselingsarsjitektuer oer IP fergelykber mei IPsec ESP (Encapsulating Security Payloads), it leverjen fan fersifering, kontrôle fan kryptografyske yntegriteit en boarneferifikaasje. De PSP-ymplemintaasjekoade is skreaun yn C en ferspraat ûnder de Apache 2.0-lisinsje.

In skaaimerk fan PSP is it optimalisearjen fan it protokol om berekkeningen te fersnellen en de lading op 'e sintrale prosessor te ferminderjen troch fersiferings- en ûntsiferingsoperaasjes nei de kant fan netwurkkaarten (offload) te ferpleatsen. Hardware fersnelling fereasket spesjale PSP-kompatible netwurk kaarten. Foar systemen mei netwurk kaarten dy't net stypje PSP, wurdt in software ymplemintaasje fan SoftPSP foarsteld.

It UDP-protokol wurdt brûkt as ferfier foar gegevensferfier. In PSP-pakket begjint mei in IP-header, folge troch in UDP-header, en dan in eigen PSP-header mei fersifering en autentikaasje-ynformaasje. Dêrnei wurdt de ynhâld fan it orizjinele TCP / UDP-pakket taheakke, einiget mei in lêste PSP-blok mei in kontrôlesum om yntegriteit te befêstigjen. De PSP-koptekst, lykas de koptekst en gegevens fan it ynkapsulearre pakket, wurde altyd authentisearre om de identiteit fan it pakket te befêstigjen. De gegevens fan it ynkapsele pakket kinne fersifere wurde, wylst it mooglik is om selektyf fersifering oan te passen, wylst in diel fan 'e TCP-koptekst yn' e dúdlike litten wurdt (wylst de autentisiteitskontrôle behâldt), bygelyks om de mooglikheid te jaan om pakketten te ynspektearjen op transitnetwurkapparatuer.

Google hat ûntjouwings ûntdutsen yn ferbân mei it PSP-befeilige netwurkprotokol

PSP is net bûn oan in spesifyk kaai-útwikselprotokol, biedt ferskate opsjes foar pakketformaat en stipet it gebrûk fan ferskate kryptografyske algoritmen. Sa wurdt bygelyks stipe foar it AES-GCM-algoritme foar fersifering en autentikaasje (ferifikaasje) en AES-GMAC foar ferifikaasje sûnder fersifering fan 'e eigentlike gegevens, bygelyks as de gegevens net weardefol binne, mar jo moatte derfoar soargje dat it net hat is manipulearre tidens de oerdracht en dat it de juste is dy't oarspronklik ferstjoerd binne.

Oars as typyske VPN-protokollen, brûkt PSP fersifering op it nivo fan yndividuele netwurkferbiningen, en net it hiele kommunikaasjekanaal, d.w.s. PSP brûkt aparte fersiferingskaaien foar ferskate tunneled UDP- en TCP-ferbiningen. Dizze oanpak makket it mooglik om strangere isolaasje fan ferkear te berikken fan ferskate applikaasjes en processors, wat wichtich is as applikaasjes en tsjinsten fan ferskate brûkers op deselde server rinne.

Google brûkt it PSP-protokol sawol om har eigen ynterne kommunikaasje te beskermjen as om it ferkear fan Google Cloud-kliïnten te beskermjen. It protokol is yn earste ynstânsje ûntworpen om effektyf te wurkjen yn ynfrastruktueren op Google-nivo en moat hardwarefersnelling fan fersifering leverje yn 'e oanwêzigens fan miljoenen aktive netwurkferbiningen en de oprjochting fan hûnderttûzenen nije ferbiningen per sekonde.

Twa bestjoeringsmodi wurde stipe: "stateful" en "stateless". Yn 'e "stateless" modus wurde de kaaien foar fersifering oerbrocht nei de netwurkkaart yn 'e pakketbeskriuwing, en foar dekodearring wurde se ekstrahearre út it SPI (Security Parameter Index) fjild oanwêzich yn it pakket mei in masterkaai (256-bit AES) , opslein yn it ûnthâld fan it netwurk card en ferfongen elke 24 oeren), dat kinne jo bewarje netwurk card ûnthâld en minimalisearje ynformaasje oer de steat fan fersifere ferbinings opslein op de apparatuer kant. Yn "stateful" modus wurde de kaaien foar elke ferbining opslein op 'e netwurkkaart yn in spesjale tabel, fergelykber mei hoe't hardware-fersnelling wurdt ymplementearre yn IPsec.

Google hat ûntjouwings ûntdutsen yn ferbân mei it PSP-befeilige netwurkprotokol

PSP leveret in unike kombinaasje fan TLS- en IPsec/VPN-protokolmooglikheden. TLS paste Google yn termen fan feiligens per ferbining, mar wie net geskikt fanwegen syn gebrek oan fleksibiliteit foar hardware-fersnelling en gebrek oan UDP-stipe. IPsec levere protokol-ûnôfhinklikens en stipe hardware-fersnelling goed, mar stipe gjin kaaibining oan yndividuele ferbiningen, waard ûntwurpen foar mar in lyts oantal oanmakke tunnels, en hie problemen mei skaalfergrutting fan hardware-fersnelling troch it bewarjen fan de folsleine fersiferingstastân yn tabellen yn it ûnthâld. fan de netwurk card (Bygelyks, 10 GB ûnthâld is nedich foar in omgean 5 miljoen ferbinings).

Yn it gefal fan PSP kin ynformaasje oer de steat fan fersifering (kaaien, inisjalisaasje vectors, folchoarder nûmers, ensfh) oerdroegen wurde yn de TX pakket descriptor of yn 'e foarm fan in oanwizer nei host systeem ûnthâld, sûnder besetten netwurk card ûnthâld. Neffens Google waard earder sawat 0.7% fan 'e kompjûterkrêft en in grutte hoemannichte ûnthâld bestege oan it fersiferjen fan RPC-ferkear yn' e ynfrastruktuer fan it bedriuw. De ynfiering fan PSP troch it brûken fan hardware-fersnelling makke it mooglik om dit sifer te ferminderjen nei 0.2%.

Boarne: opennet.ru

Add a comment