【问题标题】:End to end encrypt a socket.io chat application端到端加密 socket.io 聊天应用程序
【发布时间】:2016-10-12 23:25:16
【问题描述】:

我正在构建一个基于 socket.io 的聊天应用程序。

我必须通过哪些选项对文本和数据/文件实施端到端加密?

注意:我需要支持一对一和群聊。

是否有专门为 socket.io 准备使用的开源实现?谷歌搜索但没有运气。

如果没有,那么有什么提示可以实现我自己的东西吗?

【问题讨论】:

  • “端到端”加密是指 SSL 吗? Websockets 有一个安全版本,WSS,可以在协议上提供 SSL。还是您在谈论用户对用户加密(类似于 bleep.me)?
  • @d3l33t :SSL 将根据客户要求实施。从未使用过 bleep.me,但 Whatsapp 端到端加密是我可以给出的一个示例来解释我正在寻找什么加密。
  • 对不起。表示 bleep.pm
  • 签出keybase.io
  • @EJP AFAIK,SSL 适用于“点对点”加密,而不是“端到端”加密。仅使用 SSL,服务器仍然可以在中继到目的地之前查看消息。如果我错了,请纠正我。而且你知道,关于 WhatsApp 端到端加密的所有大惊小怪,每个人都要求以某种方式实现它:)

标签: socket.io public-key-encryption


【解决方案1】:

WhatsApp 和 Facebook Messenger 中使用的端到端加密由 the Signal protocol 提供支持(它们有自己的聊天应用程序),如果您使用带有 Javascript 的 Socket.io,您可以轻松使用 javascript version 的信号协议。只需按照 readme 加密你的数据,然后使用 Socket.io 将它发送到另一只手,然后解密接收到的数据。

Telegram 使用的端到端加密是MTProto,由 Telegram 团队开发。与 Signal 一样,它是开源的,因此您可以在 Github 上找到源代码。

希望这会有所帮助!

【讨论】:

  • 感谢您提供其他应用程序使用的 e2e 加密的非常好的概述。
猜你喜欢
  • 2018-06-23
  • 2011-09-24
  • 2021-05-03
  • 1970-01-01
  • 1970-01-01
  • 2014-08-13
  • 1970-01-01
  • 1970-01-01
  • 2018-09-15
相关资源
最近更新 更多