XMPP-Openfire SSL加密-从哪里开始

本文关键字:开始 SSL 加密 XMPP-Openfire | 更新日期: 2023-09-27 17:57:50

我正试图在通过Openfire Server交换xmpp数据的两个C#桌面客户端之间实现xmpp聊天/协作。。问题是,我必须通过HTTPS保护这些客户端和服务器之间的通信。是否有一个特定的库或策略可以最好地用于实现这一点。老实说,我很难在这里找到一个起点。

编辑*确实只需要通过SSL或其他适当形式的加密来保护通信,而不使用HTTPS协议进行通信。

这里真正的任务是尝试使用SSL将我的客户端连接到Openfire。虽然网上到处都有论坛帖子,特别是Ignite Realtime的网站上,但我还没有找到关于如何正确配置openfire服务器和客户端以确保连接安全的明确解释。

XMPP-Openfire SSL加密-从哪里开始

您应该看看Jingle和libjingle。我没有使用过这些,但我知道你需要使用Jingle来进行对等连接(XMPP通常使用服务器进行聊天)。libjingle库是C++,但可以使用P/Invoke从C#代码中调用。

根据您对Openfire的评论,您应该查看C#/.NET的库列表,网址为http://xmpp.org/xmpp-software/libraries/,在http://www.ag-software.de/agsxmpp-sdk/.这些是符合标准的库,其中包括显示如何连接到任何XMPP服务器的示例。除非您想使用XMPP服务器提供的特殊扩展,否则您应该能够开始使用这些扩展。如果你还在挣扎,那就看看奥关于XMPP和Jabber的书(一位同事写的)

你有没有考虑过使用WCF,或者你被限制使用XMPP?有几个聊天示例可用。

这是JabberNet的相关代码,它使用system.Net.security.SslStream:

m_stream = m_sslStream = new SslStream(m_stream, 
                                       false,
                                       ValidateServerCertificate, 
                                       ChooseClientCertificate);