1

我正在创建一个实用程序来备份用户的媒体文件。媒体没有被共享等它只是一个备份实用程序。

我试图想出最好的方法来保护用户免受 ISP 指责他们通过使用某种安全连接来下载非法媒体文件。

该实用程序是使用 Qt lib 用 C++ 编写的,到目前为止,我只能找到用于安全连接的 QtSslSocket 组件。该域已经拥有未来几年的有效 SSL 证书。

任何人都可以建议从服务器端和客户端实现这一点的最佳方法。即,服务器需要具备什么?备份实用程序是否需要从客户端实施以确保安全交易?

是否有任何已知的、稳定的 sftp 或 ftps 服务器可用等?

据我所知,Qt 不支持安全的 FTP 传输。不知道还有什么其他信息。将有助于使问题更清晰,但任何建议或帮助指出我正确的方向都将受到欢迎。

编辑我也能胜任 Java,所以 Java 解决方案也能正常工作......

4

4 回答 4

3

我为此搜索了几天的某种解决方案,然后忘记了这个问题。然后今天我在 Qt-Creator 源代码Utils::ssh中偶然发现了这个小宝石,包括对 SFTP、普通 SSH 和各种好东西的支持。

从 Qt-Creator 中分​​离出来的东西可能会很痛苦,但是经历了这个过程之后,它就相当于获取了 Botan(QT-Creator 中的其他库之一)+ Utils。

下雨天倾盆大雨,我在一个小时内找到了两个解决这个问题的方法 - http://nullget.sourceforge.net/(需要中文翻译),但来自他们的总结:

NullGet是用Qt编写的,运行在多平台,多线程多协议HTTP下载软件的GUI界面。使用NullGet可以轻松下载多种网络协议数据流,下载速度更快,支持HTTP,目前支持的协议有:HTTP、HTTPS、FTP、MMS、RTSP。它可以运行在当前最流行的操作系统上,包括Windows、Linux、FreeBSD等。

于 2011-07-07T07:13:08.567 回答
3

正如马丁所写,您可以包装客户端。但如果你不想这样做,你可以使用libssh

于 2011-02-04T19:18:43.137 回答
2

最简单的方法是使用 Qt 前端包装命令行 sftp 客户端。

在服务器上,任何 ftp 服务器都应该开箱即用地执行 sftp。

于 2011-02-04T19:05:13.250 回答
0

正如 Synthesizerpatel 所说,Qt Creator 实现了 SFTP。所以我隔离了包含 SSH 和 SFTP 的库,并在 Github (https://github.com/lvklabs/QSsh) 中创建了一个名为QSsh的新项目。该项目的目的是为任何 Qt 应用程序提供 SSH 和 SFTP 支持。

我写了一个关于如何使用 SFTP 上传文件的示例examples/SecureUploader/

我希望它可能会有所帮助

于 2012-11-23T19:02:52.790 回答