envoyproxy / envoyproxy/envoy

A new transport socket extension for offloading mTLS handshakes to Secure Session Agent (S2A)

Open
#16,110 29 comments 0 reactions 0 assignees View on GitHub
area/tls enhancement no stalebot
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

This issue introduces a new transport socket extension. This extension will offload the functionality of performing mTLS handshakes to the [Secure Session Agent](https://github.com/google/s2a-core/blob/main/ABOUT.md). The Secure Session Agent is a service that enables workloads to offload mTLS handshakes and protects the private key material from exfiltration.

Using this transport socket extension, the Envoy client will create a gRPC connection to the S2A handshaker service. The Envoy client will then relay the handshake messages between the S2A handshaker service and the peer. Once the mTLS handshake is complete, the Envoy client will receive the session key for encrypting/decrypting the record protocol messages.

This extension will provide a similar functionality as the ATLS transport socket extension but for offloading mTLS handshakes.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.