go-livepeer binary is a routing and payment engine. It does not authenticate users, meter usage, or route premium customers to different Orchestrators.
Those concerns belong to a middleware layer sitting between clients and the Gateway process.
Responsibilities
The middleware handles the customer-facing interface. The Gateway handles the network interface.Architecture
Three deployment patterns cover most middleware use cases.Authentication
API keys
API keys
The simplest approach. Issue each customer a unique API key, validate it on every request, and store it hashed in a database.API keys are easy to rotate without requiring customers to re-authenticate. They are appropriate for server-to-server integrations where the key is stored securely on the client side.
JWT tokens
JWT tokens
For consumer-facing applications where users authenticate via OAuth (Google, GitHub, etc.), issue short-lived JWT access tokens after authentication. Validate the JWT signature on every request without a database lookup.JWTs are appropriate for Gateways that serve end-users directly through a web or mobile application.
Live AI webhook auth
Live AI webhook auth
For Live AI (video-to-video) workloads, go-livepeer supports webhook-based RTMP authentication. The Gateway calls the webhook when an RTMP stream connects, and the webhook returns allow or deny.The webhook receives the stream key and can validate it against a customer database before allowing the stream through.