问题标签 [qsslsocket]

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 回答
1794 浏览

c++ - 调用 QSslSocket::startServerEncryption,但没有任何反应

我正在尝试使用 Qt 文档中的示例代码来实现 SSL 服务器。

但是在serverSocket->startServerEncryption();被调用之后,什么都没有发生——既encrypted()没有sslErrors()发出信号也没有发出信号(我已经在连接到它们的插槽中放置了断点)。

我通过将 QSslSocket 连接connectToHostEncrypted到我正在监听的端口来测试它。套接字发送数据,但我的服务器没有响应(我正在使用 TCP 嗅探器/代理来查看从客户端发送到服务器以及从服务器发送到客户端的所有数据)。

这是我的服务器代码:

这就是我连接它的方式:

0 投票
1 回答
2820 浏览

c++ - QSslSocket::startServerEncryption 因“PEM_READ_BIO_PRIVATEKEY:bad password read”而失败

我使用 Qt 文档中的示例代码创建了一个 SSL 服务器。然后我使用QSslSocket::connectToHostEncrypted.

但是,服务器失败了,这在QSslSocket::errorString()

我使用以下代码设置证书和私钥:

我在 Ubuntu 上创建cacert.pemprivkey.pem使用了这个命令:

0 投票
1 回答
1492 浏览

c++ - 将现有的 QTcpSocket 变形为 QSslSocket

是否可以创建一个新的 QSslSocket 并让它接管现有的 TCP 连接,并丢弃旧的 QTcpSocket,而不中断或关闭 TCP 连接?

我需要它来在我的 FTP 服务器中实现显式 FTPS,这要求最初连接是未加密的,并且只有在 FTP 客户端的请求(命令AUTH SSLAUTH TLS)时,如果它出现,就会启动 SSL/TLS 握手。

0 投票
1 回答
343 浏览

c++ - 可以在 startServerEncryption() 之后立即使用 QSslSocket 吗?

调用后QSslSocket::startServerEncryption(),是否可以立即将socket当作普通的QTcpSocket使用,从中读写数据,还是需要先调用waitForStartEncrypted()才能使用?

0 投票
2 回答
4575 浏览

c++ - 简单的 QSsl 客户端/服务器:无法在非普通连接上开始握手

我尝试在 QtNetwork 中的客户端和服务器之间创建一个简单的 ssl 连接。

但我有一个问题。首先我运行服务器。然后我运行客户端。当我第一次运行客户端时没有任何反应,但是当我第二次运行它时,我得到了QSslSocket::startServerEncryption: cannot start handshake on non-plain connection. 我不知道如何解决它。

这是服务器:

服务器源文件:

服务器主文件:

这是客户端:

客户端源文件:

客户端主文件:

任何人都可以告诉我缺少什么?

0 投票
1 回答
591 浏览

qt - 通过 QTcpSocket 或 QSslSocket 发送 QDataStream

我想通过 ssl 或 tcp 套接字发送序列化数据。QIODevice::write 不发送 QDataStream,而只发送 char* 和 QByteArray。

有没有办法通过套接字发送序列化数据?或者如何将 QDataStream 转换为 QByteArray?

谢谢

0 投票
2 回答
1400 浏览

qt - Qt找不到openssl

我从 developer.nokia 网站安装了 Qt 4.8,这是一个.run文件。因为它来自诺基亚,所以我假设这些库是用 openssl 编译的……我使用的是 ubuntu 11.10,它已经安装了 openssl。因此,我无法使 QSsl 类正常工作,我做错了什么?

任何人都知道合适的 Qt SDK 4.8 可以正常工作吗?

谢谢!

0 投票
1 回答
816 浏览

qt - QSocketNotifier::activated 和 QIODevice::readyRead 之间的区别

我创建了一个新的 Read QSocketNotifier( QSocketNotifier::Read) 并将其安装在QSslSocket. QSslSocket发出activated信号时发出的信号是什么QSocketNotifier

安装在 a 上的 a发出的信号与a 发出的activated信号之间有什么区别吗?QSocketNotifierQSslSocketQIODevice::readyReadQSslSocket

0 投票
0 回答
202 浏览

facebook - QSSLSocket 停止发送/接收数据的可能原因

谁能给我一个可能的原因,为什么我的 QSSLSocket 会停止发送和接收数据而不触发 stateChanged 或断开信号。

我的应用程序启动一个连接到 Facebook XMPP 服务器的线程,进行身份验证,然后进入一个调用 waitForReadyReady(10000) 的 while 循环,然后如果返回 true,它将读取数据。有时,经过一段时间后,对 waitForReadyReady 的调用将永远不会返回 true,即使应该有一些内容要读取,并且如果我此时尝试发送数据,服务器将不会收到任何内容。

我正在向 XMPP 服务器发送 ping,并且可以在没有收到对我的 ping 的回复后检测到这种情况何时发生,但它并不能真正用作应用程序,直到我弄清楚为什么客户端和服务器之间的通信有时会中断。

有人可以提供任何见解吗?

0 投票
1 回答
233 浏览

ssl-certificate - 尝试访问 QSslSocket 函数时服务器崩溃

所以我正在 QTCreator 中开发一个非常基本的服务器/客户端。当客户端尝试连接时,我应该让服务器将证书发送给客户端。我在服务器中有以下代码:

tcpSocket->setPrivateKey(ssl_Key); 导致崩溃。tcpSocket->setPrivateKey(key); 不会导致崩溃,尽管我认为这是不正确的....与 tcpSocket->setLocalCertificate(); 的处理相同;

有任何想法吗??顺便说一句,在这个位置 tcpSocket->flush() 也会崩溃...谢谢提前