Generated by GPT-5-mini| libsrtp | |
|---|---|
| Name | libsrtp |
| Developer | OpenSSL Project, Cisco Systems, contributors |
| Released | 2001 |
| License | BSD-style |
libsrtp
libsrtp is a portable C library that implements the Secure Real-time Transport Protocol (SRTP) for providing confidentiality, message authentication, and replay protection to real-time audio and video streams. It is used to secure media in applications that interface with protocols and projects such as Session Initiation Protocol, Real-time Transport Protocol, WebRTC, SIP, and XMPP. The library is employed across client and server software developed by organizations like Cisco Systems, Mozilla Foundation, Google, Microsoft, and in projects associated with Linux Foundation initiatives.
The library implements SRTP profiles designed to interoperate with standards from the Internet Engineering Task Force and cryptographic primitives from projects such as OpenSSL and BoringSSL. Features include counter-based sequence number handling, anti-replay windows, and support for cipher suites that map to algorithms standardized by the National Institute of Standards and Technology and industry consensus. The design accommodates multiple crypto policies, modular cipher and authentication backends, and extensions to support authenticated encryption modes used by implementations influenced by Advanced Encryption Standard developments and guidance from working groups like the IETF Crypto Forum Research Group.
libsrtp exposes a C API intended for embedding in multimedia stacks and signaling implementations used by products from Polycom, Asterisk (PBX), and FreeSWITCH. Typical usage patterns show integration with media engines present in GStreamer, FFmpeg, or proprietary stacks created by vendors such as Avaya and Ericsson. The API supports session creation, key lifecycle management, packet protection and unprotection hooks compatible with event-driven frameworks employed by Node.js bindings, mobile SDKs for Android (operating system) and iOS, and native integrations for Windows and macOS.
Cryptographic choices in libsrtp map to cipher suites that reference algorithms with histories involving organizations such as National Security Agency, NIST, and research published at conferences like CRYPTO and Eurocrypt. The library supports AES-based counter mode, HMAC-SHA1 authentication historically specified in IETF documents, and more modern approaches aligning with authenticated encryption recommendations promulgated by researchers associated with ACM and IEEE. Security engineering practices for the project have been influenced by disclosure processes used by entities like CERT Coordination Center and coordinated vulnerability response mechanisms employed by GitHub and Bugzilla-tracked communities.
libsrtp has been integrated into VoIP and conferencing solutions developed by companies including Zoom Video Communications, Skype Technologies, and open projects like Jitsi and Asterisk (PBX). Media frameworks such as GStreamer and multimedia toolchains including FFmpeg often include wrappers or bindings. The library is embedded in platform stacks used by vendors like Samsung Electronics, service providers like AT&T, and open-source operating systems including distributions under the Debian Project and Ubuntu (operating system).
Origins of the library trace to engineering efforts by contributors at academic institutions and industry labs focusing on secure multimedia after standards activity in the IETF SRTP working group. Major contributions and maintenance have involved organizations such as Cisco Systems and volunteer contributors who coordinate via platforms like GitHub and mailing lists similar to those used by Apache Software Foundation projects. Releases and revisions have followed public review cycles and security advisories similar to processes used by OpenSSL and other foundational infrastructure projects.
libsrtp is distributed under a permissive BSD-style license, facilitating adoption by commercial vendors and open-source initiatives alike. This licensing model has enabled inclusion in projects governed by entities such as the Free Software Foundation-aligned communities and corporate ecosystems run by firms like Google LLC and Microsoft Corporation. Widespread adoption has been driven by interoperability requirements in standards-led environments involving the IETF, telephony providers, and multimedia platform developers.
Category:Cryptographic libraries Category:Networking software