Zurück zu den Updates
New releaseSep 22, 2026

libsrtp v2.8.1

Bibliothek für SRTP (Secure Realtime Transport Protocol)

Teilen

CMake Build CMake Release Autotools Build Autotools Build Coverity Scan Build Status OSS-Fuzz Status

Einführung in libSRTP

Dieses Paket bietet eine Implementierung des Secure Real-time Transport Protocol (SRTP), der Universal Security Transform (UST) und eines unterstützenden kryptografischen Kernels. Die SRTP-API ist in include/srtp.h dokumentiert, und die Bibliothek liegt in libsrtp2.a (nach der Kompilierung) vor.

Dieses Dokument beschreibt libSRTP, die Open-Source-Bibliothek für sicheres RTP von Cisco Systems, Inc. RTP ist das Real-time Transport Protocol, ein IETF-Standard für die Übertragung von Echtzeitdaten wie Telefonie, Audio und Video, definiert durch RFC 3550. Secure RTP (SRTP) ist ein RTP-Profil, das Vertraulichkeit für RTP-Daten und Authentifizierung für den RTP-Header und die Nutzdaten bietet. SRTP ist ein IETF-Standard, definiert in RFC 3711, und wurde in der IETF Audio/Video Transport (AVT) Working Group entwickelt. Diese Bibliothek unterstützt alle obligatorischen Funktionen von SRTP, aber nicht alle optionalen Funktionen. Siehe den Abschnitt Unterstützte Funktionen für weitere Informationen.

Dieses Dokument wird auch verwendet, um die Dokumentationsdateien im Ordner /doc/ zu erzeugen, in dem eine detailliertere Referenz zur libSRTP-API und zu verwandten Funktionen erstellt werden kann (erfordert die Installation von doxygen.). Das Referenzmaterial wird automatisch aus Kommentaren erzeugt, die in einige der C-Header-Dateien eingebettet sind. Die Dokumentation ist in Module gegliedert, um ihre Klarheit zu verbessern. Diese Module entsprechen nicht direkt den Dateien. Ein zugrunde liegender kryptografischer Kernel stellt einen Großteil der grundlegenden Funktionalität von libSRTP bereit, ist jedoch weitgehend undokumentiert, weil er seine Arbeit im Hintergrund erledigt.


Kontakt


Inhaltsverzeichnis


Lizenz und Haftungsausschluss

libSRTP wird unter der folgenden Lizenz vertrieben, die in der Quellcode-Distribution enthalten ist. Sie wird im Handbuch wiedergegeben, falls Sie die Bibliothek aus einer anderen Quelle erhalten haben.

Copyright (c) 2001-2017 Cisco Systems, Inc. Alle Rechte vorbehalten.

Die Weiterverbreitung und Verwendung in Quell- und Binärform, mit oder ohne Änderungen, ist gestattet, sofern die folgenden Bedingungen erfüllt sind:

  • Weiterverbreitungen des Quellcodes müssen den obigen Copyright-Hinweis, diese Liste von Bedingungen und den folgenden Haftungsausschluss enthalten.
  • Weiterverbreitungen in Binärform müssen den obigen Copyright-Hinweis, diese Liste von Bedingungen und den folgenden Haftungsausschluss in der Dokumentation und/oder anderen Materialien, die mit der Distribution bereitgestellt werden, wiedergeben.
  • Weder der Name von Cisco Systems, Inc. noch die Namen seiner Mitwirkenden dürfen verwendet werden, um Produkte zu unterstützen oder zu bewerben, die aus dieser Software ohne vorherige ausdrückliche schriftliche Genehmigung abgeleitet wurden.

DIESE SOFTWARE WIRD VON DEN URHEBERRECHTSINHABERN UND MITWIRKENDEN "SO WIE SIE IST" BEREITGESTELLT UND JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNGEN, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE STILLSCHWEIGENDEN GEWÄHRLEISTUNGEN DER MARKTGÄNGIGKEIT UND EIGNUNG FÜR EINEN BESTIMMTEN ZWECK WERDEN ABGELEHNT. IN KEINEM FALL HAFTEN DIE URHEBERRECHTSINHABER ODER MITWIRKENDEN FÜR DIREKTE, INDIREKTE, BEILÄUFIGE, BESONDERE, BEISPIELHAFTE ODER FOLGESCHÄDEN (EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF BESCHAFFUNG VON ERSATZGÜTERN ODER DIENSTLEISTUNGEN; NUTZUNGS-, DATEN- ODER GEWINNVERLUSTE; ODER GESCHÄFTSUNTERBRECHUNGEN) WIE AUCH IMMER VERURSACHT UND UNTER JEDER HAFTUNGSTHEORIE, OB IM VERTRAG, AUS GEFÄHRDUNGSHAFTUNG ODER UNERLAUBTER HANDLUNG (EINSCHLIESSLICH FAHRLÄSSIGKEIT ODER ANDEREM) DIE IN IRGENDEINER WEISE AUS DER NUTZUNG DIESER SOFTWARE ENTSTEHEN, SELBST WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE.


libSRTP-Überblick

libSRTP stellt Funktionen zum Schützen von RTP und RTCP bereit. RTP-Pakete können verschlüsselt und authentifiziert werden (mithilfe der Funktion srtp_protect()), wodurch sie zu SRTP-Paketen werden. Ebenso können SRTP-Pakete entschlüsselt und ihre Authentifizierung verifiziert werden (mithilfe der Funktion srtp_unprotect()), wodurch sie zu RTP-Paketen werden. Ähnliche Funktionen wenden Sicherheit auf RTCP-Pakete an.

Der Typedef srtp_stream_t verweist auf eine Struktur, die den gesamten Zustand eines SRTP-Streams enthält, einschließlich der Schlüssel und Parameter für Chiffrier- und Nachrichtenauthentifizierungsfunktionen sowie der Anti-Replay-Daten. Ein bestimmtes srtp_stream_t enthält die Informationen, die zum Schutz eines bestimmten RTP- und RTCP-Streams erforderlich sind. Dieser Datentyp ist absichtlich undurchsichtig, um die libSRTP-API besser von ihrer Implementierung zu trennen.

Kategorien