Map protection by traffic type and adjacent hop
TLS can protect one SIP signaling connection. SRTP and SRTCP protect media and media control under a negotiated cryptographic context. Enabling either one does not enable or prove the other. A phone, PBX, SBC and provider can terminate and originate separate signaling and media legs, each with its own trust, certificate, keying and packet path.
Document every termination point and avoid the phrase end-to-end encryption unless the actual participants, keys and intermediary access support it. A browser padlock, SIP TLS registration or endpoint security icon is not evidence for the full call path.
Encryption on one leg is not proof of end-to-end encryption. Review the provider boundary, certificates and media keying method.
Distinguish SDES from DTLS-SRTP key establishment
SRTP does not define its own key-management exchange. RFC 4568 SDES carries crypto suite and inline key parameters in SDP and therefore requires confidentiality and integrity protection for that signaling content. DTLS-SRTP instead uses a DTLS handshake on the media path to derive SRTP keys; SDP fingerprints and setup roles bind the expected certificate and handshake roles.
These modes are not interchangeable labels. Record the offered and selected mechanism, every signaling intermediary that can read or rewrite SDP, the certificate or fingerprint evidence, selected SRTP profile and downgrade policy. Do not expose SDP crypto values or private keys in shared diagnostics.
Verify negotiation, protected packets and decoded media separately
Preserve the offer and answer for each media stream, including transport profile, crypto or fingerprint attributes, setup role, address, port and payload mapping. Then locate the DTLS handshake or SDES selection, subsequent SRTP and SRTCP packets, authentication or replay errors, and bidirectional decoded audio. A completed SIP dialog, one encrypted packet or an unreadable payload cannot stand in for the full sequence.
Repeat the check after hold, transfer, ICE change or direct-media re-INVITE because the media peer or keys can change. Use bounded, authorized captures and retain metadata whenever payload collection is unnecessary.
Keep authorization, recording and maintenance in scope
Encryption does not grant permission to call. Preserve identity, authentication, dialplan authorization, emergency behavior and toll controls independently. If a PBX records, transcodes or mixes media, state where it decrypts and which administrators or services can access media and keys.
Inventory signaling and DTLS certificate consumers separately, test renewal and restart behavior, and record rollback. For an Asterisk deployment, use the PJSIP media-encryption guide to map endpoint policy, call legs, direct media and loaded runtime evidence. No endpoint, PBX, certificate, protected packet path or call was inspected or tested for this guide.
Bind Genesys BYOC TLS evidence to its Voice platform
The Genesys Cloud BYOC record preserves different legacy and Dynamic Cloud Voice certificate roots, addresses and URI suffixes. It also retains the outbound-only transport-setting boundary and Dynamic platform's lack of mutual TLS.
Preserve the Azure-facing certificate and media boundary
The ACS Direct Routing record binds TLS 1.2, public-CA trust, SBC FQDN and the published SRTP suite to the Azure-facing leg without projecting them onto the carrier leg or treating encryption as a completed call.
Apply the signaling-versus-media boundary to Linphone
Linphone exposes SRTP, ZRTP and DTLS media choices independently of signaling transport. The Linphone encryption guide follows configured policy into the selected call state and keeps ZRTP SAS verification separate from encrypted media and SIP TLS.
Trace a LoopUp mutual-TLS and SRTP failure by stage
Use the LoopUp secure-trunk diagnostic to separate DNS, TCP, customer certificate, LoopUp trust, mutual TLS, SIP, SDP security descriptions and SRTP packets.
Protect the intercom call without confusing transport and door authorization
The GDS3712 guide treats SIP signaling, media protection and remote-unlock authorization as separate policies. A protected call does not by itself authorize a relay action or secure the management plane.
Resolve SignalWire profile and credential encryption on the call
The SignalWire guide separates stored project defaults, credential settings, TLS registration, INVITE transport, certificate validation, SRTP negotiation and media outcome.
Keep Telnyx route selection separate from protected media
A Telnyx route or response-code failure is not repaired by weakening certificate, SRTP or codec policy. The Telnyx diagnostic moves to transport and media evidence only after signaling reaches the intended PBX route.
Verify Amazon Chime encryption on the actual selected path
An encryption-enabled Voice Connector uses TLS on 5061 and SRTP, but the selected connector, certificate trust, cipher and SDP still need evidence. The diagnostic keeps routing and negotiation together.
Do not infer PhonerLite protection from a restored profile
After recovering PhonerLite state, verify the selected profile, TLS handshake and media protection on the actual call. A copied sipper.ini or successful REGISTER proves none of those together.
Simwood TLS and SRTP remain separate negotiations
The Simwood guide requires evidence for certificate validation, signaling transport, SDP crypto and each media direction.
Sinch SRTP is coupled to TLS signaling
The Sinch diagnostic requires hostname trust, TLS negotiation, SDP crypto and media evidence separately.
Sources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- RFC 3261 SIP ↗
- RFC 3711 Secure RTP ↗
- RFC 4568 SDP Security Descriptions ↗
- RFC 5763 DTLS-SRTP framework for SDP offer and answer ↗
- RFC 5764 DTLS-SRTP ↗
- Asterisk 22 res_pjsip configuration reference ↗
- About Genesys Cloud BYOC Cloud ↗
- Carrier requirements for BYOC Cloud ↗
- Create a BYOC Cloud trunk ↗
- Configure SIP routing for a BYOC Cloud trunk ↗
- Choose a BYOC Cloud trunk transport ↗
- TLS trunk transport specification for BYOC Cloud ↗
- Dynamic Cloud Voice platform overview and migration guide ↗
- Dynamic Cloud Voice future-default announcement ↗
- SIP provider questionnaire for BYOC trunks ↗
- Genesys Cloud sites overview ↗
- Select an inbound Number Plan Site ↗
- Set up emergency services with BYOC ↗
- Genesys Cloud fair use policy ↗
- BYOC Cloud configuration checklist ↗
- Azure Communication Services retirement and breaking-changes guide ↗
- Provision Azure Communication Services Direct Routing ↗
- Azure Direct Routing infrastructure requirements ↗
- Azure Direct Routing SIP protocol specification ↗
- Monitor Azure Communication Services Direct Routing ↗
- Migrate ACS Direct Routing to Teams Phone ↗
- Azure Communication Services emergency-calling scope ↗
- Azure telephony known limitations ↗
- Certified SBCs for Azure Communication Services Direct Routing ↗
- Azure Communication Services pricing scenarios ↗
- Linphone softphone security architecture ↗
- Liblinphone 5.5 media parameters ↗
- Liblinphone 5.5 call control ↗
- Liblinphone provisioning configuration keys ↗
- RFC 6189 ZRTP ↗
- LoopUp SIP Trunking Setup Guide ↗
- LoopUp SIP Trunking Public Certificate Chain ↗
- LoopUp SIP Trunking Supported Root Certificate Authorities ↗
- LoopUp SIP Trunking Configuration for AudioCodes Mediant SBCs ↗
- LoopUp SIP Trunking Configuration for Ribbon 1000, 2000, and SWe Edge SBCs ↗
- RFC 5246: TLS 1.2 ↗
- RFC 4568: SDP Security Descriptions for Media Streams ↗
- Grandstream GDS3712 product page ↗
- Grandstream GDS3712 datasheet ↗
- Grandstream GDS3710/GDS3712 user manual ↗
- Grandstream GDS3712 quick installation guide ↗
- Grandstream GDS37xx and GRP26xx integration guide ↗
- Grandstream GDS37xx digital input configuration ↗
- Grandstream GDS37xx event logs guide ↗
- SignalWire SIP trunking ↗
- SignalWire SIP credentials ↗
- SignalWire Get SIP credential API ↗
- SignalWire Update SIP profile API ↗
- SignalWire FreePBX integration ↗
- SignalWire caller ID and CNAM ↗
- SignalWire rate limits ↗
- SignalWire E911 ↗
- SignalWire rates ↗
- Telnyx SIP trunking service objects ↗
- Telnyx authentication methods ↗
- Telnyx failover and retries ↗
- Telnyx SIP response codes ↗
- Telnyx Outbound Voice Profiles ↗
- Telnyx round-robin routing ↗
- Telnyx current SIP network information ↗
- Telnyx machine-readable voice network data ↗
- Telnyx configuration-guide boundary ↗
- AWS: Managing Amazon Chime SDK Voice Connectors ↗
- AWS: Editing Voice Connector settings ↗
- AWS: Creating a Voice Connector and encryption scope ↗
- AWS: Managing Voice Connector groups ↗
- AWS: Amazon Chime SDK endpoints and quotas ↗
- AWS: Voice Connector network and bandwidth requirements ↗
- PhonerLite downloads and release history ↗
- PhonerLite profiles, SIP settings and configuration-file locations ↗
- PhonerLite PLP provisioning profiles ↗
- PhonerLite sound devices, active calls and recordings ↗
- PhonerLite logbook and recorded-call linkage ↗
- Simwood Hosted SIP Trunks ↗
- Simwood hosted trunks interop ↗
- Simwood hosted trunk overview ↗
- Simwood Asterisk 16 hosted trunk example ↗
- Simwood hosted TLS/SRTP settings ↗
- Simwood Partner and Direct IP addresses and whitelisting ↗
- Simwood portal overview ↗
- Simwood Carrier Services API v3 ↗
- Sinch Voice API SIP Trunking reference ↗
- Sinch Voice API callback reference ↗
- Sinch Voice API authentication reference ↗
- Sinch Voice API call headers ↗
- Sinch Voice API call detail records ↗
- Sinch Voice API release notes ↗
- Sinch Elastic SIP Trunking product overview ↗
- Sinch BYOC SIP Trunking overview ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.