如果我为存储在网络共享上的文件生成哈希,整个文件是否会通过网络发送?如果不是,为什么?

如果我为存储在网络共享上的文件生成哈希,整个文件是否会通过网络发送?如果不是,为什么?

场景:我想生成存储在远程服务器上的文件的哈希值。在此示例中,假设我们在客户端和服务器上都使用 Windows 文件共享。我作为客户端在远程文件共享上找到文件。然后,我使用某种实用程序来生成相关文件的哈希值。另外,为了清楚起见,我们正在寻找文件的哈希值,而不是其路径。那么,为了完成任务,是否必须通过网络传输文件的完整副本才能完成哈希任务?

答案1

是的,整个文件都被拉下来了,因为哈希值的计算是在本地系统上进行的。

答案2

我刚刚使用 Powershell Get-FileHashcmdlet 进行了实验,结果表明 davidgo 是正确的。首先,我对托管在远程服务器(具体来说,是 Netapp 文件管理器上的 CIFS 共享)上的 4.5 GB ISO 映像进行哈希处理。我在 2 分 17 秒内得到了结果。然后我将文件复制到本地磁盘。该复制操作本身花费了 1 分 43 秒。然后我再次运行哈希操作,并在 1 分 7 秒内得到了结果。这些数字加起来不太对,但我不知道为什么。无论如何,对本地文件进行哈希处理的速度提高了 50%。

相关内容