[asterisk-bugs] [JIRA] (ASTERISK-25642) res_rtp_asterisk: SRTCP broken with DTLS - bad video is one of the consequences
Jacek Konieczny (JIRA)
noreply at issues.asterisk.org
Fri Mar 25 11:02:56 CDT 2016
[ https://issues.asterisk.org/jira/browse/ASTERISK-25642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=230030#comment-230030 ]
Jacek Konieczny commented on ASTERISK-25642:
--------------------------------------------
I have made a patch to fix this: https://gerrit.asterisk.org/2468
It changes rtp_engine API and ABI a bit, I am not sure how much it matters.
> res_rtp_asterisk: SRTCP broken with DTLS - bad video is one of the consequences
> --------------------------------------------------------------------------------
>
> Key: ASTERISK-25642
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-25642
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_rtp_asterisk, Resources/res_srtp
> Affects Versions: 13.5.0
> Environment: fedora20.x86_64 , libsrtp 1.4.4 , chan_sip webrtc peers
> Reporter: Stefan Engström
> Labels: dtls, encryption, rtcp, video
>
> symtoms: When dialing webrtc peers, asterisk gets lots warning logs SRTP unprotect failed with: authentication failure 110 upon receiving rtcp and the webrtc client also gets unprotect failures - in particular when trying to unprotect RTCP FIR which asterisk send on vp8-capable channels. This means bad video.
> When dialing sipml chan_sip chrome webrtc peers, we do not mux rtcp and rtp, so there is a seperate dtls handshake for rtcp and rtp for both audio and video. In res_rtp_asterisk.c we extract keying materials from the rtp-dtls-session (to be used for srtp) when the handshake is complete, but we do nothing with the results of the rtcp->dtls handshake. The extracted key from rtp->dtls is passed to libsrtp in res_srtp.c via the srtp_policy_t struct but from the struct reference for that in http://srtp.sourceforge.net/libsrtp.pdf it looks like it is not possible to supply different keys for rtp and rtcp?
> So, can anyone think of a solution or work-around?
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list