Google har åbnet for udviklingen af den sikre netværksprotokol PSP

Google har annonceret åbningen af specifikationerne og referenceimplementeringen af PSP-protokollen (PSP Security Protocol), der anvendes til kryptering af trafik mellem datacentre. Protokollen benytter en lignende arkitektur som IPsec ESP (Encapsulating Security Payloads) til inkapsling af trafik over IP, hvilket sikrer kryptering, kryptografisk integritetskontrol og autentifikation af kilden. Koden for implementeringen af PSP er skrevet i C og distribueres under Apache 2.0-licensen.

En særlig egenskab ved PSP er optimeringen af protokollen for at fremskynde beregninger og reducere belastningen på centralprocessoren ved at flytte krypterings- og dekrypteringsoperationer til netværkskortene (offload). For at anvende hardwaraccelerationen kræves der specielle netværkskort, der er kompatible med PSP. For systemer med netværkskort, der ikke understøtter PSP, er der tilbudt en softwareimplementering kaldet SoftPSP.

UDP-protokollen bruges som transport til dataoverførsel. PSP-pakken starter med en IP-header, efterfulgt af en UDP-header og derefter selve PSP-headeren med oplysninger om kryptering og autentifikation. Derefter vedlægges indholdet af den originale TCP/UDP-pakke, som afsluttes med en PSP-blok med en kontrolsum for at bekræfte integriteten. PSP-headeren samt headeren og dataene for den inkapslede pakke er altid autentificerede for at bekræfte pakkens ægthed. Dataene for den inkapslede pakke kan være krypterede, og der er mulighed for selektiv brug af kryptering, hvor en del af TCP-headeren forbliver i almindelig tekst (med bevaring af autentificeringskontrol), f.eks. for at give mulighed for pakkeinspektion på transitnetværksudstyr.

Google har åbnet for udviklingen af den sikre netværksprotokol PSP

PSP knytter sig ikke til en bestemt nøgleudvekslingsprotokol, tilbyder flere muligheder for pakkeformat og understøtter brugen af forskellige kryptoalgoritmer. For eksempel understøttes AES-GCM-algoritmen til kryptering og autentifikation (autentisering) samt AES-GMAC til autentifikation uden kryptering af de umiddelbare data, f.eks. når dataene ikke repræsenterer værdi, men det er nødvendigt at sikre, at de ikke er blevet ændret under overførslen, og at de er de samme som dem, der oprindeligt blev sendt.

I modsætning til typiske VPN-protokoller i PSP anvender kryptering på niveauet for individuelle netværksforbindelser i stedet for hele kommunikationskanalen, det vil sige, at PSP bruger separate krypteringsnøgler til forskellige tunnellerede UDP- og TCP-forbindelser. Denne tilgang muliggør strengere isolering af trafik fra forskellige applikationer og behandlere, hvilket er relevant ved udførelse af en. serveren applikationer og tjenester for forskellige brugere.

I Google anvendes PSP-protokollen både til beskyttelse af interne kommunikationer og til beskyttelse af Google Clouds kundetrafik. Protokollen er oprindeligt designet til effektiv drift i Google-niveau infrastrukturer og skal sikre hardwareacceleration af kryptering under betingelser med millioner af aktive netværksforbindelser og hundredtusinder af nye forbindelser per sekund.

To driftsmåder understøttes - 'stateful' og 'stateless'. I 'stateless'-tilstand overføres nøgler til kryptering til netkortet i pakkeheaderen, og til dekryptering hentes de fra det felt, der er til stede i pakken, kaldet SPI (Security Parameter Index) ved hjælp af en master-nøgle (256-bit AES, gemt i netkortets hukommelse og udskiftet hver 24. time), hvilket sparer netkortets hukommelse og minimerer den information om tilstanden af krypterede forbindelser, der opbevares på udstyret. I 'stateful'-tilstand opbevares nøglerne for hver forbindelse på netkortet i en særlig tabel, ligesom hardwareaccelerationen i IPsec.

Google har åbnet for udviklingen af den sikre netværksprotokol PSP

PSP tilbyder en slags kombination af funktionerne fra TLS- og IPsec/VPN-protokoller. TLS var passende for Google hvad angår beskyttelse på niveauet for individuelle forbindelser, men var ikke tilfredsstillende på grund af manglende fleksibilitet til hardwareacceleration og mangel på UDP-understøttelse. IPsec sikrede uafhængighed fra protokoller og understøttede godt hardwareacceleration, men understøttede ikke koblingen af nøgler til individuelle forbindelser, var kun designet til et begrænset antal tunneloprettelser og havde skalafordele ved hardwareaccelerationen på grund af opbevaring af hele krypteringstilstanden i tabeller, der var placeret i netkortets hukommelse (for eksempel kræves 5 GB hukommelse til behandling af 10 mio. forbindelser).

I tilfælde af PSP kan informationer om krypteringsstatus (nøgler, initialiseringsvektorer, sekvenseringsnumre osv.) sendes i TX-deskriptøren for pakken eller som en indikator for hukommelsen i værtsystemet, uden at besætte hukommelse på netværkskortet. Ifølge Google blev der tidligere brugt cirka 0,7% af den beregningsmæssige kapacitet til kryptering af RPC-trafik i virksomhedens infrastruktur, samt en stor mængde hukommelse. Implementeringen af PSP ved at inddrage hardwareaccelerationsmidler har reduceret dette tal til 0,2%.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster