问题标签 [off-the-record-messaging]

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 投票
2 回答
1939 浏览

cryptography - 社会主义百万富翁协议与 CHAP 等简单的挑战-响应协议有何不同?

这是一个毫无头绪的问题,但是社会主义百万富翁协议(通常与 OTR-Messaging 结合使用)是 CHAP 等“传统”挑战-响应机制无法做到的?

http://en.wikipedia.org/wiki/Socialist_millionaire

http://en.wikipedia.org/wiki/Challenge-handshake_authentication_protocol

PS:有人可以考虑添加标签“OTR”吗?

0 投票
1 回答
2028 浏览

java - 我应该选择哪个 Java OTR 库?

我想将OTR(非记录)消息添加到我的(XMPP)聊天应用程序中,该应用程序是用 java 编写的。快速谷歌搜索显示至少两个可能的库:

  • java-otr:http ://www.cypherpunks.ca/otr/index.php#downloads 是 gibberbot 使用的,最后一次更改是 2009 年 10 月
  • otr4j:http ://code.google.com/p/otr4j/ - 上次更改 2010 年 8 月

简短的问题:我应该选择哪一个?

长问题:库当然应该提供相当程度的互操作性,以便 OTR 消息传递与现有的各种 XMPP 客户端一起工作。您建议的图书馆的一些优点/缺点也会很好。基本上所有对我来说可能很有趣的东西。:)

0 投票
1 回答
288 浏览

digital-signature - 为什么非公开消息传递提供否认,而 RSA 不提供?

在 OTR 消息中,加密密钥是在接收者读取加密消息后发布的,因此显然不存在不可否认性。在 RSA 中,私钥显然没有公开,但没有人能证明它在过去没有被泄露。因此,Alice 总是可以否认发送并签署了特定消息。

我不明白为什么 RSA 可以合法地证明谁发送了消息,但 OTR 阻止了这一点。

0 投票
0 回答
367 浏览

objective-c - Xcode ios 中的 Otrkit 示例

我想使用 OTR 加密,所以我使用来自 github 的模块

https://github.com/ChatSecure/OTRKit

我跟着那个读我的文件,但我无法完成加密,

是否有人使用来自 github 的模块“OTRKit”,生成在 xcode 中使用 OTRKit 的简单示例,例如加密消息“Hello”和 Decryot,(在警报框中显示文本就足够了)。

我希望有人能帮助我

感谢你...

0 投票
1 回答
1686 浏览

security - 如何在 Openfire 上配置 OTR?

我正在开发一个 XMPP 客户端,我想使用 Openfire 作为服务器。我想使用 OTR 协议。

如何在 Openfire 服务器上配置此协议?我如何只允许使用此协议的连接?

我已经搜索了其他问题,并且我已经阅读了有关内容过滤器插件的文档,但我找不到如何配置它。

我认为使用使用此协议的完整客户端(如 Pidgin 或 Chatsecure)在我的服务器上测试此功能可能是一个好主意。

任何人都可以帮助我进行此配置吗?

谢谢!!

0 投票
0 回答
40 浏览

ios - iOS AppStore 审核规则和 libotr.a + libcrypt.a

我计划构建安全的聊天应用程序。为此,我计划使用 libotr.a 和 libcrypt.a 库。但我觉得使用这个库与 AppStore 的规则相矛盾(链接)。

你能证实或反驳我的担忧吗?

0 投票
0 回答
223 浏览

python - Python + OTR 使用 otrxmppchannel,无法发送消息

谁能帮我用 Python 发送 OTR 加密的消息?

我已经尝试过这里的说明,但没有成功。

到目前为止,我的程序是:

文件 mykey.otrprivkey 是一个包含私钥的文件,其格式如下:

作为密钥文件,我尝试了以下形式的文件:

但这不起作用。

0 投票
0 回答
571 浏览

android - 带有 otr 聊天服务器和客户端的 xmpp

我有一个课堂实验室,我想实现一个实现 otr 的聊天应用程序。有很多教程展示了如何添加 otr 插件以提供当前聊天客户端 otr 功能。但是,我想尽可能多地从头开始创建它。我想使用树莓派作为 xmpp 服务器并将客户端连接到该服务器。我将使用像 JSQMessagesViewController(iOS) 或 Applozic-Android-SDK(android) 这样的库来创建聊天框架。但我希望能够使用 otr 进行加密和身份验证。
实现这一点的最佳方法是什么?有人可以指出我正确的方向。
谢谢

0 投票
0 回答
23 浏览

javascript - 如何在 OTR 中获取 STATUS_AKE_SUCCESS

我正在尝试在 Javascript 中使用 OTR。为此,我使用arlolra 的 Github Javascript OTR

我有一个工作原型来交换未加密的消息,默认情况下 OTR 是关闭加密的。由此,我假设我没有正确交换密钥,因此此后无法交换加密消息。

switch/case 函数OTR.CONST.STATUS_SEND_QUERY // 0在发送方和OTR.CONST.STATUS_AKE_INIT // 1接收方返回。

但状态永远不会变为OTR.CONST.STATUS_AKE_SUCCESS

之后如何正确切换到OTR.CONST.STATUS_AKE_SUCCESS并发送加密消息?

在发送方:为 OTR 加密创建初始化消息

通过客户端将消息发送到另一端

在接收方:

通过第三方提供的监听器获取消息。

处理消息的 OTR 客户端

跟踪密钥交换状态的功能:

打开 OTR 加密后发送消息的功能。