Google je objavil raziskave, povezane z varnim omrežnim protokolom PSP

Družba Google je napovedala odprtje specifikacij in referenčne implementacije protokola PSP (PSP Security Protocol), ki se uporablja za šifriranje prometa med podatkovnimi centri. Protokol uporablja arhitekturo za encapsulacijo prometa, podobno IPsec ESP (Encapsulating Security Payloads), ki zagotavlja šifriranje, kriptografsko preverjanje celovitosti in avtentikacijo izvora. Koda za implementacijo PSP je napisana v jeziku C in je na voljo pod licenco Apache 2.0.

Značilnost PSP je optimizacija protokola za pospešitev izračunov in zmanjšanje obremenitve centralne enote s prenosom operacij šifriranja in dešifriranja na strani omrežnih kartic (offload). Za uporabo strojnega pospeševanja je potrebno imeti specializirane omrežne kartice, združljive s PSP. Za sisteme z omrežnimi karticami, ki ne podpirajo PSP, je na voljo programska implementacija SoftPSP.

Za prenos podatkov se uporablja protokol UDP. Paket PSP se začne z IP glavo, za katero sledi UDP glava in nato lastna PSP glava z informacijami o šifriranju in avtentikaciji. Nato se pripne vsebina izvornega TCP/UDP paketa, ki se konča s končnim blokom PSP s preverjanjem vsote za potrditev celovitosti. PSP glava, kot tudi glava in podatki incapsuliranega paketa so vedno avtentificirani za potrditev avtentičnosti paketa. Podatki incapsuliranega paketa so lahko šifrirani, pri čemer je dovoljena možnost izbirne uporabe šifriranja z pustitvijo dela TCP glave v odprti obliki (ob ohranitvi preverjanja avtentičnosti), na primer, za omogočanje inšpekcije paketov na tranzitni omrežni opremi.

Google je objavil raziskave, povezane z varnim omrežnim protokolom PSP

PSP se ne vezuje za određeni protokol razmene ključeva, već nudi nekoliko opcija formata paketa i podržava korišćenje različitih kriptografskih algoritama. Na primer, podržava algoritam AES-GCM za enkripciju i autentifikaciju, kao i AES-GMAC za autentifikaciju bez enkripcije direktnih podataka, na primer kada podaci nemaju vrednost, ali je potrebna garancija da nisu izmenjeni tokom prenosa i da su zaista oni koji su prvobitno poslati.

Za razliku od tipičnih VPN-protokola, PSP primenjuje enkripciju na nivou pojedinačnih mrežnih konekcija, a ne celog komunikacionog kanala, tj. PSP koristi posebne ključeve enkripcije za različite tunelovane UDP i TCP konekcije. Ovakav pristup omogućava strožu izolaciju saobraćaja između različitih aplikacija i procesora, što je relevantno kada se na jednom strežnikom aplikacijama i servisima nalaze različiti korisnici.

U Google-u, protokol PSP se koristi kako za zaštitu sopstvenih internih komunikacija, tako i za zaštitu saobraćaja klijenata Google Cloud-a. Protokol je prvobitno dizajniran za efikasan rad u infrastrukturnim uslovima na nivou Google-a i treba da obezbedi hardversko ubrzanje enkripcije u okruženju sa milionima aktivnih mrežnih konekcija i postavljanjem stotina hiljada novih konekcija svake sekunde.

Podržavaju se dva režima rada — «stateful» i «stateless». U režimu «stateless» ključevi za enkripciju se šalju mrežnoj kartici u deskriptoru paketa, a za dekripciju se izvlače iz prisutnog u paketu polja SPI (Security Parameter Index) pomoću master ključa (256-bit AES, čuva se u memoriji mrežne kartice i menja svake 24 sata), što omogućava uštedu memorije mrežne kartice i minimizuje informacije o stanju enkripcija konekcija koje se čuvaju na strani uređaja. U režimu «stateful» ključevi za svaku konekciju se čuvaju na mrežnoj kartici u posebnoj tabeli, na sličan način kao što je realizovano hardversko ubrzanje u IPsec-u.

Google je objavil raziskave, povezane z varnim omrežnim protokolom PSP

PSP ponuja edinstveno kombinacijo možnosti protokolov TLS in IPsec/VPN. TLS je bil primeren za Google z vidika zaščite na ravni posameznih povezav, a ni zadovoljil zaradi pomanjkanja prilagodljivosti za strojno pospeševanje in pomanjkanja podpore za UDP. IPsec je zagotavljal neodvisnost od protokolov in dobro podpiral strojno pospeševanje, vendar ni podpiral vezave ključev na posamezne povezave, bil je zasnovan le za omejeno število ustvarjenih tunelov, njegovo skaliranje strojnega pospeševanja pa je imelo težave zaradi shranjevanja celotnega stanja šifriranja v tabelah, ki so gostovale v pomnilniku mrežne kartice (na primer, za obdelavo 10 milijonov povezav je potrebno 5 GB pomnilnika).

V primeru PSP se informacije o stanju šifriranja (ključev, vektorskih inicializacij, zaporednih številk itd.) lahko prenašajo v TX-deskriptorju paketa ali v obliki kazalca na pomnilnik gostiteljske sistema, ne da bi zasedale pomnilnik mrežne kartice. Po podatkih Googla se je prej za šifriranje RPC-prometa v infrastrukturi podjetja porabilo približno 0.7% računalniške moči in obsežno količino pomnilnika. Uvedba PSP z vključitvijo strojnega pospeševanja je omogočila zmanjšanje tega deleža na 0.2%.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster