如何在 Flutter 聊天应用中进行端到端加密?

kan*_*raj 8 chat server flutter end-to-end-encryption

我使用 flutter 和我自己的服务器作为数据库后端制作了一个聊天应用程序。
我想添加端到端加密,类似于 WhatsApp 等其他聊天应用程序,但我对此并不完全了解。
所以我想问的是:

  1. 端到端加密工作必须在客户端还是后端完成?
  2. 如何才能实现这一目标
  3. 有没有第三方提供商提供这样的东西,与flutter兼容
  4. 在没有第三方提供商的情况下,如何才能拥有自己的产品呢?

Ali*_*han 5

此链接提供了一个包:Encrypt

它允许您使用四种加密算法来加密文本

  1. AES
  2. RSA
  3. 莎莎20
  4. 费内特


Ita*_*cia 4

  1. 对两者都有效。端到端加密(E2EE)意味着发送者和接收者只能知道消息的真实内容。消息存储在服务器上还是用户设备上并不重要。

  2. 您可以创建自己的 E2EE 算法或使用其他可用的库,例如: https: //medium.com/@mr.jyotirmoy.paul/building-an-private-room-chat-application-using-flutter-d11306a0623c

  3. 是的,有几个可用的软件包,例如: https://github.com/cardoso/virgil-e3kit-flutter

  4. 您需要阅读密码学并创建自己的算法