哈希大文件块

时间:2018-03-31 11:25:55

标签: bash hash

我有一个很大的音频文件(2小时)foo.mp3。我想让第三方P验证其创建日期。然而,P只能查看(听到)foo.mp3的某些小部分。在创建之日,不清楚将向P提供哪些部分。

所以我的计划是将foo.mp3拆分成小块,散列这些块并在网上的某处发布哈希值,以便以后验证。

bash脚本如何分割foo.mp3并创建哈希?

2 个答案:

答案 0 :(得分:2)

您不必将文件拆分为块。现在只需发布整个文件的SHA256,当对方访问该文件时,他们将能够看到它与您之前发布的SHA256总和相同。 (我建议至少使用SHA256作为哈希算法。)

现在,如果您仍然因某种原因决定必须这样做,我建议您使用split(1)然后运行sha256sum

split -b8192 foo split/
sha256sum split/*

这会在split/目录中创建文件拆分为8KB块并打印SHA256哈希值。

答案 1 :(得分:1)

1。将文件拆分为多个块

mp3splt -a -t 0.01 -o foo-@n -d outputDir foo.mp3

2。创建哈希

sha256sum outputDir/* > hashes.sha

3。在网络上记录结果

使用sha256哈希和/或sha256哈希大sha256哈希文件的已发布文件的结果可能如下所示:)

5b2718841d2f610ce264191760383dca309fd5a6f8c745e7466aa6c157e0b279 Files1.sha 0b568a4e802e9bc29740e8904c09f361c844dc4bd11d8855a188e81672f453ba Files2.sha d8fec62a53228cf372ce81f4e3fd220b2df7bb5d5f8b144c8ffa4e41a4aeaad4 Camera.zip ac0e59caa3f91f49824540fa452e285b9e47843f24dda309955a5287db4c89b5 Camerasmall.zip e1f9b37f15eed99a8814f066021e6d370fd4e346b2779fc6494ee685b9e02467 SoundsSmall.zip d054a2ac8adf069c2051659c68e38a7b6e26172afb2a6c377f7d067c666f9f6e Sounds.zip

相关问题