XMPP 取消订阅/订阅状态泄露隐私

Posted

技术标签:

【中文标题】XMPP 取消订阅/订阅状态泄露隐私【英文标题】:XMPP Unsuscribe/subscription state leaks privacy 【发布时间】:2011-10-25 18:46:59 【问题描述】:

我开始使用 XMPP,其中一件让我印象深刻的事情是,由于订阅只能在一个方向上,因此名册可以与以下订阅状态保持联系:

-无 -到 -从 -两者都

我对这个模型的问题是用户可以判断是否有人“阻止”了他们(取消订阅)、没有批准订阅或没有重新订阅。

从信使风格看,如果您不批准订阅或删除订阅,您会被视为他们已批准订阅,但只是发送离线状态。

同样在删除时,XMPP 声明服务器必须告诉联系人客户端您已取消订阅。我知道大多数客户不会对此采取行动,但这意味着他们可能会弹出类似于“X 联系人已将您从他们的列表中删除”的内容。我认为这是隐私泄露。如果我想阻止/删除人,我希望他们不知道,只是看到我离线。

为什么会这样?有没有官方的解决方法(不暴露订阅状态)?

【问题讨论】:

【参考方案1】:

从某种角度来看,一直都是这样,主要是因为早期的 Jabber 开发人员都认为,当有人要求看到你的存在时,你应该说“不”,除非你确定。

也就是说,您可以使用Privacy Lists 阻止您的传出状态。

【讨论】:

以上是关于XMPP 取消订阅/订阅状态泄露隐私的主要内容,如果未能解决你的问题,请参考以下文章

从 xmpp 中的节点取消订阅选定的订阅者

xmpp ejabberd - 查询用户存在

XMPP之添加好友请求报文

Google App Engine 中未订阅用户的 IM 状态

使用适用于 iOS 的 XMPP 框架:当订阅者可用/不可用时接收状态

iOS XMPP 框架阻止/隐私选项?