我正在运行基于 WebRTC 的服务,目前正在调查 WebRTC session 聊天的要求。 10 个用户。因此我想运行一个选择性转发单元(SFU)。我了解 janus 和 jitsi videobridge,但我有点担心数据安全。两台服务器都像 WebRTC 端点一样运行,这对我来说意味着传入的流在传递给用户之前会被解码和编码。即使它只发生在内存中,在一瞬间,也意味着缺乏保密性(出于法律原因我必须认真对待)。
这引出了我的问题。是否有任何 SFU(或可用作 SFU 的多播中继服务器)在传输层运行(如 RFC 7201 第 2.3.1 章中所述,引用 RFC 5117)并且仅将 SRTP 加密流传递给其接收者?
我考虑过(重新)使用我的 TURN 服务器来实现此目的,但正如 Oleg 指出的 here TURN 规范仅针对 P2P 通信而设计。也许我对 janus 和 jitsi videobridge 的假设是错误的,那么我也很高兴在这里。
提前致谢
格雷格
最佳答案
恐怕目前这是不可能的。高级SFU可能需要检查RTP流中的元数据,例如识别视频关键帧,因此需要访问RTP流。
但是还有希望! IETF PERC工作组发布了一份草案,允许通过两次应用 SRTP 进行端到端加密,请参阅 here .
Jitsi 正在努力实现第一个 PERC 实现:https://www.slideshare.net/alexpiwi5/perc-webrtc-e2e-media-encryption-with-sfu
关于WebRTC:是否有运行在传输层的SFU?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42453958/