SRTP的WebRTC加密机制

问题描述 投票:0回答:1

WebRTC使用DTLS对SCTP(数据)进行加密。此外,它使用DTLS进行SRTP(媒体)的密钥交换。但是我不太了解它是否还使用DTLS加密SRTP。所以我的问题是:WebRTC是仅将DTLS用于密钥交换(DTLS-SRTP)还是在其内部加密机制之外(至少可选)对SRTP进行了加密?

]

为什么我要问:RFC 6904RFC 3711状态表明SRTP提供RTP数据包头的身份验证,但不提供加密。因此,只有SRTP的有效负载才经过设计加密。

什么使我感到困惑:许多消息来源声称WebRTC已完全端到端加密。

我对在gstreamer中实现WebRTC特别感兴趣。

webrtc gstreamer rtp
1个回答
0
投票

DTLS用于握手,但随后提取密钥并初始化SRTP上下文。

我不熟悉GStreamer,但在Pion WebRTC中,我们通过DTLS here连接。 WebRTC客户端通过SDP协商哪一方是DTLS服务器,哪一方是DTLS客户端。

DTLS握手完成后,您导出密钥资料,您会看到here

如果您有兴趣了解SRTP的工作原理,可以查看pion/srtp。但是,这非常简单,它只是AES,然后生成一个身份验证标签。您可以全部看到here

© www.soinside.com 2019 - 2024. All rights reserved.