WebRTC使用DTLS对SCTP (数据)进行加密。此外,它还使用DTLS进行SRTP (媒体)的密钥交换。但我不太明白,它是否也使用DTLS来加密SRTP。因此,我的问题是:是只为密钥交换( DTLS )使用DTLS,还是将WebRTC加密到其内部加密机制(至少可以选择)?。
我为什么要问:
RFC 6904和RFC 3711声明SRTP提供对RTP数据包头的身份验证,但不提供加密。因此,只有SRTP的有效载荷是通过设计加密的。
令我困惑的是:
许多消息来源声称WebRTC是完全端到端加密的.
我特别感兴趣的是在gstreamer中实现WebRTC。
发布于 2020-03-08 19:56:24
DTLS用于握手,但随后提取密钥并初始化SRTP上下文。
我不熟悉GStreamer,但在π介子WebRTC中,我们通过DTLS 这里进行连接。WebRTC客户端通过SDP协商哪一方是DTLS,哪一方是DTLS客户端。
当DTLS握手完成之后,您就可以导出键控材料了,您可以看到这里
如果您对SRTP的工作方式感兴趣,可以查看π/srtp。这很简单,只是AES,然后生成一个身份验证标记。你可以看到所有的这里
https://stackoverflow.com/questions/60590470
相似问题