2011-02-04 59 views
1

我正在创建一个实用程序来备份用户的媒体文件。媒体不被共享等,它只是一个备份工具。用Qt安全文件上传

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

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

任何人都可以提出从服务器和客户端实现这一点的最佳方式。即服务器需要具备哪些功能,特别是备份实用程序需要从客户端实施以确保安全交易?

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

据我所知,Qt不支持安全的FTP传输。 不确定其他信息。对于使这个问题变得更清楚是有用的,但任何建议或帮助指引我朝着正确的方向将是最受欢迎的。

编辑我也是Java的主管这样一个Java解决方案将很好的工作...

回答

2

最简单的方法是只包一个commandline sftp client用Qt的前端。

在服务器上,任何ftp服务器都应该在服务器上执行sftp。

+0

你可能想用QProcess中调用它,而不是调用外壳什么的。更安全,更便携。 http://doc.qt.nokia.com/latest/qprocess.html – spraff 2011-07-07 08:02:14

3

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

3

我搜索了几天的解决方案,然后忘记了这个问题。然后,今天我偶然发现了Qt-Creator源代码Utils::ssh中的这个小宝石,它包含了对SFTP,普通的SSH和各种好东西的支持。从Qt-Creator解开东西可能是一个痛苦,但经历了这个过程,它相当于抓住Botan(QT-Creator中的其他库之一)+ Utils。

当下雨时,它倒,我发现两个解决这个问题在一小时 - http://nullget.sourceforge.net/(需要中国译),但是从他们的总结:

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

0

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

我已经写了关于如何上传使用SFTP文件中examples/SecureUploader/

一个例子,我希望它可能是有益

+0

哪里是代码或代码的链接? – toxicate20 2012-11-23 19:23:35