我正在创建一个用于备份用户媒体文件的实用程序。媒体没有被共享等等,它只是一个备份工具。
我正在尝试考虑保护用户免受ISP指控他们使用某种安全连接下载非法媒体文件的最佳方法。
该实用程序是使用Qt lib以C ++编写的,到目前为止,我只能找到QtSslSocket组件以进行安全连接。该域名在未来几年内已拥有有效的SSL证书。
任何人都可以建议从服务器端和客户端实现此方法的最佳方法。即服务器需要具备什么特性,备份实用程序是否需要从客户端实施以确保安全交易?
是否有可用的已知,稳定的sftp或ftps服务器等?
据我所知,Qt不支持安全的FTP传输。 不知道还有什么其他信息。将问题更清楚是有用的,但任何建议或帮助指出我正确的方向将是最受欢迎的。
编辑我也是Java主管,所以Java解决方案也可以正常运行......
答案 0 :(得分:3)
正如马丁所写,你可以包装客户。但如果您不想这样做,可以使用libssh。
答案 1 :(得分: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等。
答案 2 :(得分:2)
最简单的方法就是用Qt前端包裹commandline sftp client。
在服务器上任何ftp服务器都应该开箱即用sftp。
答案 3 :(得分:0)
正如Synthesizerpatel所说,Qt Creator实现了SFTP。所以我已经隔离了包含SSH和SFTP的库,我在Github中创建了一个名为QSsh的新项目(https://github.com/lvklabs/QSsh)。该项目的目的是为任何Qt应用程序提供SSH和SFTP支持。
我已经编写了一个关于如何使用examples/SecureUploader/
我希望它可能会有所帮助