Section outline

  • Labsetup.zip 文件中包含的 pic_original.bmp 是一张简单的图片。我们希望对这张图片进行加密,使没有密钥的人无法知道图片中的内容。请分别使用 ECB (电子密码簿)和 CBC (密码块链接)模式加密文件,然后执行以下操作:
     
    • 我们需要先处理一下加密后的图片,这样可以用图片显示程序来显示图像。bmp 文件的前 54 个字节包含有关图片的信息头,这些信息必须正确,否则没法显示。头部信息虽然也是被加密了,这些信息并不难得到。为了方便起见,我们用原始图片的头部替换加密图片的头部。你可以使用十六进制编辑器来直接修改二进制文件,也可以使用以下命令从 p1.bmp 获取头部数据,从 p2.bmp 获取加密的图片数据(从偏移量 55 到文件末尾),然后将它们组合成一个新文件。
      $ head -c 54 p1.bmp  > header
      $ tail -c +55 p2.bmp > body
      $ cat header body > new.bmp
    • 显示加密的图片。我们在 VM 上安装了一个名为  eog} 的图片显示程序。你能从加密图片中获取有关原始图片的有用信息吗?请解释你观察到的现象。
     
    请你自己选择一张图片,重复上面的实验并报告你观察到的现象。