【问题标题】:How to validate WebRTC connection signals when peers can't trust each other?当对等方无法相互信任时,如何验证 WebRTC 连接信号?
【发布时间】:2016-04-21 21:36:55
【问题描述】:

我正在构建一个 WebRTC 应用程序,其中随机选择两个用户,然后相互连接以聊天。两个客户端都保持一个开放的 WebSocket 连接,我打算用它来交换他们的提议/答案以表示连接。我试图解释的情况是当有一个对等点故意发送错误的配置信息时,以及当对等点可能在信令交换过程中自发断开连接时。

我对第一种情况的解决方案是让服务器保持交换的状态,所以当第一次建立连接时,我希望用户 A 提供一个报价,而用户 B 有一个答案。这合适吗?还是应该专门在客户端实施?

我对第二个问题的解决方案对我来说就像一个 hack。我想要做的是通知用户已经进行了匹配,然后用户将设置一个超时时间,比如 20 秒,如果在这段时间内没有建立连接,那么它应该继续......

这些是合适的解决方案吗?当任何一个对等点都不可信时,如何可靠地建立 WebRTC?信令服务器是否应该关心交换的状态?

【问题讨论】:

  • 我不明白你在担心什么。即使是坏演员也想建立联系。

标签: webrtc


【解决方案1】:

听起来您更关心呼叫设置错误,而不是能够信任远程对等方的身份。这是两个截然不同的问题。

假设这是您担心的调用设置错误,您不应该试图避免它们,您应该尝试确保您的应用程序可以处理它们。网络连接问题总是会出现并需要处理。

设置一个计时器以完成 WebRTC 调用的建立是一个合乎逻辑的解决方案。向用户显示时间限制即将到来的警告似乎也是一个好主意。 SIP 是一种信令协议,它为事务的完成定义了超时时间,如果在该时间内未完成,它将生成错误响应。您可以使用相同的方法。

【讨论】:

    猜你喜欢
    • 2021-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-03
    • 1970-01-01
    相关资源
    最近更新 更多