我正在创建一个Android应用程序,让设备充当服务器,以便同一子网上的其他客户端可以从中发送/检索文件(目前支持HTTP和SSH(仅通过SCP命令))。
我的优先事项是加密文件传输。显而易见的解决方案是HTTPS传输,但我的普通用户可能因浏览器将连接显示为“不完全安全”而被推迟,因为我的本地托管服务器没有证书。
我的第二个想法是从浏览器中使用本质上安全的SCP,但我发现没有一些插件就没有办法让浏览器打开SSH / SCP连接,我希望我的解决方案需要除了应用程序本身。
我的第三个想法是让一个不安全的频道,但要端到端地加密文件,使得文件只有在加密后接触线路。我将使用Java中的预先存在的库(用于Android服务器)和Javascript(用于基于Web的客户端)。
但我觉得发送许多小文件的解决方案会非常慢,因为在发送之前,您需要完全加密每个文件,而不是加密流。
确保此问题对Stack Overflow来说足够具体:
如何在基于Web浏览器的客户端和本地托管的服务器之间安全地发送文件?