Google descubriu desenvolvementos relacionados co protocolo de rede segura PSP

Google anunciou a apertura de especificacións e unha implementación de referencia do PSP (PSP Security Protocol), utilizado para cifrar o tráfico entre centros de datos. O protocolo usa unha arquitectura de encapsulación de tráfico similar a IPsec ESP (Encapsulating Security Payloads) sobre IP, proporcionando cifrado, control da integridade criptográfica e autenticación da fonte. O código de implementación de PSP está escrito en C e distribúese baixo a licenza Apache 2.0.

Unha característica de PSP é a optimización do protocolo para acelerar os cálculos e reducir a carga do procesador central movendo as operacións de cifrado e descifrado ao lado das tarxetas de rede (descarga). A aceleración de hardware require tarxetas de rede especiais compatibles con PSP. Para sistemas con tarxetas de rede que non admiten PSP, proponse unha implementación de software de SoftPSP.

O protocolo UDP úsase como transporte para a transferencia de datos. Un paquete PSP comeza cunha cabeceira IP, seguida dunha cabeceira UDP e despois a súa propia cabeceira PSP con información de cifrado e autenticación. A continuación, engádense o contido do paquete TCP/UDP orixinal, rematando cun bloque PSP final cunha suma de verificación para confirmar a integridade. A cabeceira PSP, así como a cabeceira e os datos do paquete encapsulado, sempre se autentican para confirmar a identidade do paquete. Os datos do paquete encapsulado pódense cifrar, mentres que é posible aplicar o cifrado de forma selectiva deixando clara parte da cabeceira TCP (mentres se mantén o control da autenticidade), por exemplo, para proporcionar a capacidade de inspeccionar paquetes nos equipos da rede de tránsito.

Google descubriu desenvolvementos relacionados co protocolo de rede segura PSP

PSP non está vinculado a ningún protocolo específico de intercambio de claves, ofrece varias opcións de formato de paquetes e admite o uso de diferentes algoritmos criptográficos. Por exemplo, ofrécese soporte para o algoritmo AES-GCM para cifrado e autenticación (autenticación) e AES-GMAC para a autenticación sen cifrar os datos reais, por exemplo cando os datos non son valiosos, pero cómpre asegurarse de que non se foi manipulado durante a transmisión e que é o correcto.que foron enviados orixinalmente.

A diferenza dos protocolos VPN típicos, PSP usa o cifrado a nivel de conexións de rede individuais, e non de toda a canle de comunicación, é dicir. PSP usa claves de cifrado separadas para diferentes conexións UDP e TCP tuneladas. Este enfoque permite lograr un illamento máis estrito do tráfico de diferentes aplicacións e procesadores, o que é importante cando se executan no mesmo servidor aplicacións e servizos de diferentes usuarios.

Google usa o protocolo PSP tanto para protexer as súas propias comunicacións internas como para protexer o tráfico dos clientes de Google Cloud. O protocolo está deseñado inicialmente para funcionar de forma eficaz en infraestruturas de nivel de Google e debería proporcionar unha aceleración de hardware do cifrado ante a presenza de millóns de conexións de rede activas e o establecemento de centos de miles de conexións novas por segundo.

Admítense dous modos de funcionamento: "con estado" e "sen estado". No modo "sen estado", as claves de cifrado transmítense á tarxeta de rede no descritor de paquetes, e para o descifrado extráense do campo SPI (índice de parámetros de seguridade) presente no paquete mediante unha chave mestra (AES de 256 bits, almacenada en a memoria da tarxeta de rede e substitúese cada 24 horas), o que lle permite gardar a memoria da tarxeta de rede e minimizar a información sobre o estado das conexións cifradas almacenadas no lado do equipo. No modo "con estado", as claves de cada conexión gárdanse na tarxeta de rede nunha táboa especial, de forma similar a como se implementa a aceleración de hardware en IPsec.

Google descubriu desenvolvementos relacionados co protocolo de rede segura PSP

PSP ofrece unha combinación única de capacidades de protocolo TLS e IPsec/VPN. TLS axeitaba a Google en termos de seguridade por conexión, pero non era adecuado debido á súa falta de flexibilidade para a aceleración de hardware e a falta de compatibilidade con UDP. IPsec proporcionou a independencia do protocolo e admitiu ben a aceleración de hardware, pero non admitiu a vinculación de claves a conexións individuais, foi deseñado só para un pequeno número de túneles creados e tivo problemas para escalar a aceleración de hardware debido ao almacenamento do estado de cifrado completo en táboas situadas na memoria. da tarxeta de rede (por exemplo, son necesarios 10 GB de memoria para xestionar 5 millóns de conexións).

No caso de PSP, a información sobre o estado do cifrado (claves, vectores de inicialización, números de secuencia, etc.) pódese transmitir no descritor de paquetes TX ou en forma de punteiro á memoria do sistema host, sen ocupar a memoria da tarxeta de rede. Segundo Google, aproximadamente o 0.7% da potencia de cómputo e unha gran cantidade de memoria foron gastados anteriormente en cifrar o tráfico RPC na infraestrutura da empresa. A introdución de PSP mediante o uso da aceleración de hardware permitiu reducir esta cifra ata o 0.2%.

Fonte: opennet.ru

Engadir un comentario