R: sha1哈希 - 与在线工具结果不同

4
我需要与两个同事交换大文件。其中一个使用R,另一个使用不同的环境(具体是哪个我不确定)。我在其中使用digest和标准的sha1对长字符串进行哈希处理以节省空间,例如:
library(digest)
sapply("2016_Silverado_1500__CW_LS__Standard_Fragile_Static_US_ENG_v1_160x600.jpg", digest, "sha1")
2016_Silverado_1500__CW_LS__Standard_Fragile_Static_US_ENG_v1_160x600.jpg 
                               "e18f03a6e0949d6149aba07bd8295e7249f3b38d"

同事们会对他们的字符串进行哈希,并在我的文件中搜索相同的哈希值。我们能保证哈希值是相同的吗?我现在很担心,因为在线生成器产生了不同的哈希值:

http://hash.online-convert.com/sha1-generator

十六进制:be5c711f15f874ecdcb5b99e655264afa53170c5


1
a. 这里sapply没有任何作用。 b. 它对名称进行了哈希处理,而不是文件。要做到这一点,您需要向其传递一个R对象。使用类似于jpeg::readJPEG的东西读取文件可能有效,但我不是关于图像是如何存储的专家。 - alistaire
我知道它正在对名称进行哈希处理。我没有传递真实的图像 - Alexey Ferapontov
1个回答

0

解决方案已移动@AlexeyFerapontov的问题帖子。

digest("2016_Silverado_1500__CW_LS__Standard_Fragile_Static_US_ENG_v1_160x600.jpg", algo="sha1", serialize=F)
[1] "be5c711f15f874ecdcb5b99e655264afa53170c5"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接