0

我在 webrtc 调用中使用 libsrtp 进行 srtp 加密。

准备好 RTP 数据包后,我调用 srtp_protect 对其进行加密。它对数据部分进行加密并保持 RTP 标头不变。到目前为止,这在仅音频呼叫的情况下运行良好。

现在我支持VP8。根据 RFC 7741(RTP VP8 打包),RTP 数据包就像 RTP 标头 + VP8 打包数据 + 有效负载。

因此,当我将整个缓冲区提供给 srtp_protect 时,它正在加密 VP8 打包部分和有效负载。我的理解是RTP标头,VP8打包部分不应该加密。只有有效载荷应该被加密。

我的理解正确吗?

在 RTP VP8 数据包化的情况下,如何使用 srtp_protect?

任何提示高度赞赏。

4

1 回答 1

1

最近我从事 VoIP 方面的工作。我发现我的代码 RTP 数据包准备妥当,它包含 RTP 标头 VP8 打包数据和 VP8 实际有效负载。之后,将整个数据包交给 SRTP 库进行加密,然后将此加密数据包发送到另一端。

最后,我还收到了加密数据包。我首先使用 SRTP 库解密数据包,然后我可以提取其余数据,如 RTP 标头、vp8 打包数据和实际编码的 vp8 有效负载。

希望你能澄清你的疑问。

于 2018-05-02T05:37:48.427 回答