2

I'm running a WebRTC based service and currently investigating the requirements for WebRTC conference chats with approx. 10 users. Therefore I'd like to run a Selective Forwarding Unit (SFU). I know about janus and jitsi videobridge, but am a little bit concerned about data security. Both servers operate like WebRTC endpoints, which means to me that the incoming streams are de- and encoded before they are passed to the users. Even if it happens only in memory and in a split second, it means a lack of confidentiality (which I have to take serious for legal reasons).

This leads me to my question. Are there any SFU (or multicast relay servers that could be used as SFU) that operate at the transport layer (as described in RFC 7201 chapter 2.3.1, citing RFC 5117) and only pass the SRTP encrypted streams to their recipients?

I thought about (re-) using my TURN server for this purpose, but as Oleg pointed out here the TURN specs are designed for P2P communication only. Maybe I'm just wrong with my assumptions about janus and jitsi videobridge, then I would be glad to here that as well.

Thx in advance

Greg

Greg
  • 365
  • 1
  • 3
  • 12

1 Answers1

2

That's not currently possible, I'm afraid. Advanced SFUs may need to check metadata in the RTP stream, such as to identify a video keyframe, hence the need to access the RTP stream.

But there is hope! The IETF PERC working group has published a draft which allows for end-to-end encryption by applyuing SRTP twice, see it here.

Jitsi is working towards having the first PERC implementation: https://www.slideshare.net/alexpiwi5/perc-webrtc-e2e-media-encryption-with-sfu

saghul
  • 1,990
  • 1
  • 13
  • 15
  • Thx for the information. So I will (have to) wait for the PERC standard being implemented into current SFUs. – Greg Mar 13 '17 at 09:56
  • I want to implement a RTP SFU where all participants are connected and assigned unique SSRC, based on request/unmute from each participant via other signalling plane, packets received from set/allowed SSRC's are forwarded to all participants, Is there any library to do this – Chakradhar K Aug 11 '20 at 13:34