是否有必要使用 https 保护与本地 wifi 的连接?

Is it necessary to secure a connection to a local wifi with https?

我目前正在编写一个计划控制机器的应用程序。该机器由 Raspberry Pi 控制,它为本地 wifi 提供 API(通过烧瓶)。另一方面,该应用程序也连接到同一个 wifi 并访问 API。 为了确保不是每个下载应用程序并连接到 wifi 的人都可以控制机器,我设置了一些基本的身份验证。

我的下一步实际上是使用自签名证书切换到 https。但是机器(/raspberry pi)和app需要在同一个wifi下才能通信。所以在通信中实际上没有中介。这又让我想知道是否存在中间人攻击的可能性以及我是否真的需要 https 通信。

所以我的问题是:这里需要 https 吗?

主观回答。首先你必须决定如果 someone/thing 控制了你的机器会有什么风险。对于大多数消费类应用,在家庭内部的风险可能很低(也许不是——灌溉控制器或加热器怎么样?)。那么为什么以及有多大概率有人想要入侵(也许如果你的机器是全球最畅销的它可能是一个有趣的目标)。 您可能会对普通家庭 wifi 上有多少台设备感到惊讶 - 至少有几十台。此外 - 虽然大多数消费设备不依赖入站访问(大多数使用网站反弹 control/commands 通过),但通过防火墙打开的入站(来自互联网)端口可能比你想象的要多得多。

所以 - 我确实认为普通家庭 wifi 中有很多 MITM 机会。这是否会成为早期产品开发中的一个问题 - 这取决于您。

这个 SO 答案:Is it possible to prevent man-in-the-middle attack when using self-signed certificates? 在实际实施时可能会有用。