问题标签 [signal-protocol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
23 浏览

signal-protocol - Libsignal 加密机制

请问在libsignal中从sender到receiver发送消息时,加密机制是如何进行的?

我知道发送消息(文本、贴纸、表情符号)encryptSignalSessionCipher classSessionCipher_EncryptMessage通过Native.class. 在加密模块本身中,它使用一个paddedMessage参数。那么加密机制是怎样的呢?加密是在纯文本上完成的,还是包括现有的填充(所有填充消息)?

如果可能,SessionCipher_EncryptMessage模块的实现在哪里?

谢谢

0 投票
0 回答
39 浏览

signal-protocol - 如何在 Android 应用中实现信号协议

我正在制作 android 聊天应用程序,并想实现端到端加密的信号协议,但不明白该怎么做。虽然存在 java 库但如何使用它

0 投票
0 回答
101 浏览

python - 如何使用信号协议进行加密/解密?

我正在对 WhatsApp 网站进行逆向工程。我在 python 中创建了一个自定义客户端,以使用 websocket 连接到 WhatsApp,生成 QR 码,并将登录凭据保存到文件中。当我尝试使用它时,我意识到 WhatsApp 的端到端加密是真实的。我使用这个python 模块生成了 2 个信号协议密钥:pre_key_pair = curve.KeyPair.generate(),我使用生成的二维码将公钥发送到手机上的 WhatsApp。

我的问题是,如何解密将我发回 WhatsApp 的密文。这是我的客户:

0 投票
0 回答
25 浏览

networking - Signal Protocol Key Length

I am learning about the Signal protocol and eventually hope on implementing it in one of my projects. I haven't been able to find the length of:

  • Identity key IK
  • Signed prekey SPK
  • Prekey signature Sig(IK, Encode(SPK)) -One-time prekeys (OPK1, OPK2, OPK3, ...)

Does anyone know how many bits or bytes each key is?

0 投票
0 回答
62 浏览

android - 在 Kotlin 中使用信号协议实现安全聊天

在我的 android 应用程序的一部分中,我有聊天功能,我想通过使用信号协议、firebase 和 Kotlin 来实现安全聊天。我在互联网上搜索了很多,但我没有找到一个完整的解决方案来解释它的编码。我找到了一些这样的文章:

https://www.qed42.com/insights/coe/javascript/developing-real-time-secure-chat-application-whatsapp-signal-end-end

但我想使用它可以处理实时功能而不是使用网络套接字的firebase。您能否通过介绍一步一步解释所有细节的视频或文章来帮助我。提前谢谢你。

0 投票
0 回答
18 浏览

javascript - 在信号协议中向服务器注册预密钥

我最近正在阅读信号协议的文档。https://github.com/signalapp/libsignal-protocol-javascript。在他们生成预密钥包和其他内容后的文档中,他们说“// 向服务器注册 preKeys 和 signedPreKey”。但是没有提到如何做到这一点。除此之外,任何人都可以帮助我了解如何知道用户收件人 ID 来解密他的消息。密钥也是永久的,或者它们在浏览器关闭时消失。

0 投票
0 回答
17 浏览

cryptography - 信号协议疑点

我正在尝试将聊天应用程序开发为兼职随机项目,并希望使用 Signal 的消息加密协议。然而,在开发过程中,我确实遇到了一些疑问。

1> PreKey 和 SignedpreKey ID 之间有任何关联吗?(关于使用什么 ID 的任何指示也会有所帮助)
2> 每条消息应该有不同的 SignedPreKey?我猜不是因为这只是为了证明用户是谁。如果不是,应该多久更改一次 SignedPreKey?
3> 简要说明 Signal 中的会话是什么。会话是否会延长应用关闭时间?
4> 每条消息是否应该有不同的 PreKeyBundle?还是整个会话只使用一个 PreKeyBundle?
5> PreKeySignalMessage 和 SignalMessage 的区别。什么时候用哪个?

很抱歉用这么多疑问轰炸,但如果有人能抽出时间帮助回答这些问题,那将非常有帮助。谢谢!