Google het ontwikkelings ontdek wat verband hou met die PSP-veilige netwerkprotokol

Google het die opening van spesifikasies en 'n verwysingsimplementering van die PSP (PSP Security Protocol) aangekondig, wat gebruik word om verkeer tussen datasentrums te enkripteer. Die protokol gebruik 'n verkeersinkapselingsargitektuur soortgelyk aan IPsec ESP (Encapsulating Security Payloads) oor IP, wat enkripsie, kriptografiese integriteitsbeheer en bronverifikasie verskaf. Die PSP-implementeringskode is in C geskryf en onder die Apache 2.0-lisensie versprei.

'n Kenmerk van PSP is die optimalisering van die protokol om berekeninge te bespoedig en die las op die sentrale verwerker te verminder deur enkripsie- en dekripsiebewerkings na die kant van netwerkkaarte te skuif (aflaai). Hardewareversnelling vereis spesiale PSP-versoenbare netwerkkaarte. Vir stelsels met netwerkkaarte wat nie PSP ondersteun nie, word 'n sagteware-implementering van SoftPSP voorgestel.

Die UDP-protokol word gebruik as 'n vervoer vir data-oordrag. 'n PSP-pakkie begin met 'n IP-kopskrif, gevolg deur 'n UDP-kopskrif, en dan sy eie PSP-kopskrif met enkripsie- en verifikasie-inligting. Vervolgens word die inhoud van die oorspronklike TCP/UDP-pakkie aangeheg, wat eindig met 'n finale PSP-blok met 'n kontrolesom om integriteit te bevestig. Die PSP-kopskrif, sowel as die kopskrif en data van die ingekapselde pakkie, word altyd geverifieer om die identiteit van die pakkie te bevestig. Die data van die ingekapselde pakkie kan geïnkripteer word, terwyl dit moontlik is om selektief enkripsie toe te pas terwyl 'n deel van die TCP-opskrif in die duidelike gelaat word (terwyl egtheidsbeheer gehandhaaf word), byvoorbeeld, om die vermoë te bied om pakkies op vervoernetwerktoerusting te inspekteer.

Google het ontwikkelings ontdek wat verband hou met die PSP-veilige netwerkprotokol

PSP is nie gekoppel aan enige spesifieke sleuteluitruilprotokol nie, bied verskeie pakkieformaatopsies en ondersteun die gebruik van verskillende kriptografiese algoritmes. Ondersteuning word byvoorbeeld verskaf vir die AES-GCM-algoritme vir enkripsie en verifikasie (stawing) en AES-GMAC vir verifikasie sonder enkripsie van die werklike data, byvoorbeeld wanneer die data nie waardevol is nie, maar jy moet verseker dat dit nie tydens versending gepeuter is en dat dit die korrekte een is wat oorspronklik gestuur is.

Anders as tipiese VPN-protokolle, gebruik PSP enkripsie op die vlak van individuele netwerkverbindings, en nie die hele kommunikasiekanaal nie, d.w.s. PSP gebruik aparte enkripsiesleutels vir verskillende tonnel UDP- en TCP-verbindings. Hierdie benadering maak dit moontlik om strenger isolasie van verkeer van verskillende toepassings en verwerkers te bewerkstellig, wat belangrik is wanneer toepassings en dienste van verskillende gebruikers op dieselfde bediener loop.

Google gebruik die PSP-protokol om sy eie interne kommunikasie te beskerm en om die verkeer van Google Wolk-kliënte te beskerm. Die protokol is aanvanklik ontwerp om doeltreffend in Google-vlak infrastruktuur te werk en moet hardeware versnelling van enkripsie verskaf in die teenwoordigheid van miljoene aktiewe netwerkverbindings en die vestiging van honderdduisende nuwe verbindings per sekonde.

Twee bedryfsmodusse word ondersteun: "staatvol" en "staatloos". In "staatlose" modus word enkripsiesleutels na die netwerkkaart in die pakkiebeskrywer oorgedra, en vir dekripsie word dit uit die SPI (Security Parameter Index)-veld wat in die pakkie teenwoordig is, onttrek met behulp van 'n hoofsleutel (256-bis AES, gestoor in die geheue van die netwerkkaart en elke 24 uur vervang word), wat jou toelaat om netwerkkaartgeheue te stoor en inligting oor die toestand van geënkripteerde verbindings wat aan die toerustingkant gestoor is, te minimaliseer. In "stateful" modus word die sleutels vir elke verbinding op die netwerkkaart in 'n spesiale tabel gestoor, soortgelyk aan hoe hardewareversnelling in IPsec geïmplementeer word.

Google het ontwikkelings ontdek wat verband hou met die PSP-veilige netwerkprotokol

PSP bied 'n unieke kombinasie van TLS- en IPsec/VPN-protokolvermoëns. TLS het Google gepas in terme van per-verbinding-sekuriteit, maar was nie geskik nie weens sy gebrek aan buigsaamheid vir hardewareversnelling en gebrek aan UDP-ondersteuning. IPsec het protokolonafhanklikheid verskaf en hardewareversnelling goed ondersteun, maar het nie sleutelbinding aan individuele verbindings ondersteun nie, is ontwerp vir slegs 'n klein aantal tonnels wat geskep is, en het probleme ondervind om hardewareversnelling te skaal as gevolg van die stoor van die volle enkripsietoestand in tabelle wat in die geheue geleë is. van die netwerkkaart (byvoorbeeld, 10 GB geheue word benodig om 5 miljoen verbindings te hanteer).

In die geval van PSP kan inligting oor die toestand van enkripsie (sleutels, inisialiseringsvektore, volgordenommers, ens.) in die TX-pakkiebeskrywer of in die vorm van 'n wyser na die gasheerstelselgeheue oorgedra word, sonder om netwerkkaartgeheue te beset. Volgens Google is ongeveer 0.7% van rekenaarkrag en 'n groot hoeveelheid geheue voorheen bestee aan die enkripteer van RPC-verkeer in die maatskappy se infrastruktuur. Die bekendstelling van PSP deur die gebruik van hardewareversnelling het dit moontlik gemaak om hierdie syfer tot 0.2% te verminder.

Bron: opennet.ru

Voeg 'n opmerking