linphone-sdk/ekt-server
2025-09-15 13:02:01 +02:00
..
src Fix: EKT not re-sent when participant loses network and restarts core 2025-08-05 16:53:02 +00:00
.clang-format Server EKT manager 2024-03-14 15:56:52 +01:00
CMakeLists.txt Server EKT manager 2024-03-14 15:56:52 +01:00
config.h.cmake Initial commit of ekt encryption plugin. 2023-05-26 17:00:21 +02:00
README.md Write ekt-server's README.md. Improve API documentation related to LinphonePayloadType management and LinphoneNatPolicy. 2025-09-15 13:02:01 +02:00

ekt-server

Description

A liblinphone plugin to manage EKT key dispatching accross a server-managed conference. The EKT (Encrypted Key Transport) is defined in RFC8870 - Encrypted Key Transport for DTLS and Secure RTP. The EKT key secures the transport of SRTP inner keys and thus takes the role of the conference's master key, allowing each participant to encode and decode sRTP streams.

In linphone-sdk implementation, the EKT key is not setup through DTLS, but dispatched with end-to-end encryption accross all participants thanks to a SIP PUBLISH/SUBSCRIBE/NOTIFY event package system.

Usage

This plugin is automatically by liblinphone and connects with Conference objects, in order to provide EKT events to conference's participants. It is used by Flexisip conference server.

Compilation

This module cannot be compiled standalone. It is as a part of the whole linphone-sdk project. It is compiled when -DENABLE_EKT_SERVER_PLUGIN=ON cmake option is provided. It is built over liblinphone's C++ wrapper.

RFCs

RFC8870 - Encrypted Key Transport for DTLS and Secure RTP RFC8723 - Double Encryption Procedures for the Secure Real-Time Transport Protocol (SRTP)

Licence

GNU Affeiro GPLv3.