Java SFTP客户端 - 概念

问题描述 投票:0回答:2

目前我正在处理我的Java中的概念问题 - SFTP客户端/服务器 - 安装程序。

基本上我有一个客户端将文件发送到远程服务器并将其存储在那里。但是:您通过计算机上的jar文件触发上传,因此任何人都可以解密jar文件并读取清除的java文件并获取我的sftp的凭据。

是否有任何技术可以解决此问题或您可以建议的一些解决方法?

问候和谢谢!

java file encryption sftp credentials
2个回答
-1
投票

如果我正确理解您的问题,那么它的根源在于您的java源包含您的凭据。

首先,我强烈建议使用jSch library来实现SSH2的优秀实现。

关于你的证书,你可以找到你的答案here。简而言之 - 保存您的凭据加密。


2
投票
  1. 将凭证放入公共/共享JAR文件是不可取的。它无法安全地完成,如果您需要让用户更换它们,则需要下载并安装新的JAR。
  2. 您无法将凭据保密。如果您的凭据需要在用户的计算机上使用,那么用户可以以某种方式提取它们。无论你尝试什么。 (假设他们控制他们的机器....)
  3. 保存加密的凭据不会保护用户免受攻击。应用程序需要解密密钥。用户可以找到/解压缩然后恢复凭据。
  4. 最好为每个用户发出不同的上传凭据。这样,如果一个用户丢失或滥用其凭据,您可以使其无效而不会影响其他用户。
© www.soinside.com 2019 - 2024. All rights reserved.