【问题标题】:How do you embed a hash into a file recursively?你如何递归地将哈希嵌入到文件中?
【发布时间】:2010-05-10 03:43:18
【问题描述】:

最简单的情况:你想创建一个文本文件,上面写着“这个文件的 MD5 哈希是 FOOBARHASH”。知道嵌入的hash值和文件的hash是相互关联的,怎么嵌入hash?

例如,思科将哈希值嵌入到他们的 IOS 映像中,可以这样验证:

cisco# 验证 s72033-advipservicesk9_wan-mz.122-33.SXH7.bin

嵌入式哈希 MD5:D2BB0668310392BAC803BE5A0BCD0C6A
计算哈希 MD5:D2BB0668310392BAC803BE5A0BCD0C6A

也许我错了,但试图弄清楚如何做到这一点让我大吃一惊。

最初,我说 Ubuntu ISO 有一个文本文件,其中包含整个 ISO 文件的 MD5 哈希值。这是不正确的:再看一遍,md5sum.txt 文件包含单个文件的哈希值。

【问题讨论】:

标签: hash


【解决方案1】:

你没有。哈希值的计算方法是在签名应该放置的地方放置一个“虚拟”或一个空字符串,对该文档进行哈希处理,然后将签名值插入到文本中。要验证文档的签名,您需要去掉签名,对没有签名的文档进行哈希处理,然后将结果与去掉的签名进行比较。

如果您喜欢这种挑战,请考虑编写一个程序来生成自描述的 pangram:

这个 Pangram 包含四个 as,一个 b,两个 cs,一个 d,30 个 es,6 个 fs,5 个 gs,7 个 hs,11 个 is,1 个 j,1 个 k,2 个 ls,2 个 ms,18 个 ns,15 个 os , 2 个 ps, 1 个 q, 5 个 rs, 27 个 ss, 18 个 ts, 2 个 us, 7 个 vs, 8 个 ws, 2 个 xs, 3 个 ys, & 1 个 z。

玩得开心!

【讨论】:

  • 哼。使用&符号是作弊:P
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-24
  • 1970-01-01
  • 2015-01-02
  • 1970-01-01
  • 2011-09-08
  • 2016-09-21
  • 1970-01-01
相关资源
最近更新 更多