5

在关于块密码模式的维基百科文章中,他们有一个未加密图像的简洁小图,使用 ECB 模式加密的同一图像和使用另一种方法加密的同一图像的另一个版本。

未加密 欧洲央行模式 CBC模式

在大学里,我开发了自己的 DES 实现(你可以在这里找到),我们必须在演示文稿中演示我们的实现。

我想使用我们的实现显示一个如上所示的类似示例。然而,大多数图像文件都有与之关联的头块,当使用我们的实现加密文件时,它们也会被加密。因此,当您在图像查看器中打开它们时,会假定它们已损坏并且无法查看。

我想知道是否有人新的简单的无标题图像格式可以用来显示这些?或者,如果有人对上述图像的原始创建者如何实现上述结果有任何想法?

任何帮助,将不胜感激,

谢谢

注意:我意识到滚动你自己的密码库是愚蠢的,并且 DES 被认为是坏的,ECB 模式对于任何有用的密码都非常有缺陷,这纯粹是学校的学术练习。所以拜托,不要讲课,我知道演习。

4

2 回答 2

3

如果您使用的是高级语言,如 Java、python 等,您可以做的一件事是加载图像并将像素数据读入内存中的数组。然后对这些原始字节执行加密,完成后保存图像。让所有标题数据由您使用的任何语言的库处理。换句话说,不要将文件视为原始字节序列。希望有帮助。

于 2010-05-02T21:34:52.990 回答
3

只需在加密之前切断标题(将它们保存在某处)。然后只加密其余部分。然后在结果前面添加标题。

这对于Netpbm格式特别容易,因为您只需要知道要切断多少行。数据存储为十进制数字,因此您可能应该在加密时考虑到这一点(首先将它们转换为二进制)。

于 2010-05-02T21:37:05.877 回答