当前位置: 首页 > 知识库问答 >
问题:

使用JSCH在远程服务器上获取MD5校验和

羊时铭
2023-03-14

我正在编写一个应用程序,其中要求将文件从远程SFTP服务器传输到本地计算机,反之亦然。在文件传输过程中,我想确保没有数据包在传输过程中丢失和损坏。因此,我们的想法是在传输之前对远程文件(位于sftp服务器中)运行MD5校验和,然后启动传输过程。传输完成后,在本地文件上运行md5并比较两个校验和。

我正在使用JSCH连接到sftp服务器,代码是java。但是我不知道如何在SFTP服务器中的远程文件上运行md5。我的代码必须在传输发生之前在远程文件上执行MD5。关于如何完成此操作的任何想法请。

共有1个答案

杜轩昂
2023-03-14

大多数Unix系统都有一个md5sum命令。您可以在远程服务器上调用它来检索哈希。

$ md5sum /tmp/test
34a27208f62ff3bdae031c9e8a354ac3  /tmp/test

Jsch网站包含一个示例,演示如何在远程服务器上调用命令。这可以很容易地调整为运行md5sum命令。

 类似资料:
  • 问题内容: 我正在寻找使用Java获取文件的MD5校验和。我真的很惊讶,但是我找不到任何能显示如何获取文件的MD5校验和的东西。 怎么做? 问题答案: 有一个输入流装饰器,因此你可以像往常一样在使用输入流的同时计算摘要,而不必对数据进行额外的传递。

  • 我需要登录到unix服务器,执行switch user,执行一些命令,然后将这些命令创建的文件scp到另一台服务器。我能够连接到服务器,执行sudo登录和执行命令,但我无法将文件直接scp到另一个远程服务器。 我用的是Jsch jar。下面是我的代码。 public void executeChannel(会话会话、字符串命令、字符串pwd、列表文件)引发异常{ command=sudo su-p

  • 我正在努力将现有的应用程序与File Picker集成。在我们现有的设置中,我们依赖md5校验和来确保数据完整性。据我所知,文件选择器在响应REST API的上传时没有提供任何md5(也没有使用JavaScript客户端)。 我们使用 S3 进行存储,据我所知,您可以在存储文件时向 S3 提供 md5 校验和,以便在数据似乎错误时 Amazon 可以验证并拒绝存储请求。 为了确保数据不会在网络中损

  • 我正在使用优秀的API使用以下代码连接到远程服务器。 一旦连接,我然后使用下载一些日志文件。这工作得很好。 一旦检索到文件,我会根据日志条目的时间戳在本地查询它们——我在特定的时间窗口内查找条目。 到目前为止,它没有给我带来任何问题,因为我的本地系统时间戳与远程时间戳非常相似。但最近我的测试开始失败,因为我的本地时间戳和远程服务器上的时间戳之间有5分钟的差异。 所以我的问题是,有没有一种简单的方法

  • 我使用JSCH API通过sftp连接到远程服务器。我需要将远程服务器中存在的目录从位置A移动到位置B。看起来channelsftp.put方法(src, est)只允许移动文件而不允许移动目录。 有人能告诉我怎么做吗?

  • 我不是java程序员,对eclipse或web服务了解不多。我需要创建一个web服务,然后在windows服务器上进行设置。因此,我在eclipse juno ee中设置了一个本地主机Glassfish 3.1.2.2并创建了一个web服务。现在它将被转移到vm Windows2008服务器上。 我错过了什么?它似乎没有尝试或接近服务器,一旦按下ping就会出现错误。 如果是防火墙之类的东西,如何