Encryption 如何查看加密图片

Encryption 如何查看加密图片,encryption,image,image-editor,Encryption,Image,Image Editor,人们如何在维基页面上查看加密图片?是有专门的程序来做这件事,还是有人决定做一些愚蠢的异或,只是为了强调欧洲央行?我不是一个喜欢画图的人,所以如果有可以查看加密图片的程序,它们是什么?加密是在字节流上工作的。也就是说,它接受一个字节数组并输出另一个字节数组。图像也只是一个字节数组。我们将左上方像素的“r”分量分配给第一个字节,“g”分量分配给第二个字节,“b”分量分配给第三个字节。相邻像素的“r”分量是第四个字节,依此类推 所以,要“加密”一个图像,只需获取第一个图像中像素的字节数组,对其进行加密

人们如何在维基页面上查看加密图片?是有专门的程序来做这件事,还是有人决定做一些愚蠢的异或,只是为了强调欧洲央行?我不是一个喜欢画图的人,所以如果有可以查看加密图片的程序,它们是什么?

加密是在字节流上工作的。也就是说,它接受一个字节数组并输出另一个字节数组。图像也只是一个字节数组。我们将左上方像素的“r”分量分配给第一个字节,“g”分量分配给第二个字节,“b”分量分配给第三个字节。相邻像素的“r”分量是第四个字节,依此类推

所以,要“加密”一个图像,只需获取第一个图像中像素的字节数组,对其进行加密(加密通常不会改变字节数-除了填充),然后使用这些加密的字节作为第二个图像的像素数据

请注意,这与加密整个图像文件不同。通常,图像文件具有特定的头(例如JPEG头等)。如果你加密了整个文件,那么头文件也会被包括在内,如果不解密整个文件,你将无法“显示”图像。

这不仅仅是一个愚蠢的异或(他们都可以使用异或),而是,这里要强调的是,任何每次将相同输入转换为相同输出的方案都很容易发现输入中存在的模式。这张图片展示了我们在“加密”输出中发现Tux是多么容易。作者可以使用任何类型的数据,但使用的是图像,因为人眼非常擅长识别模式,所以它是一个很好的例子


正如文章所说,更好的方案是使用前一个块的输出来“随机”下一个块,这样你就看不到输出中的模式(右边的图像)。

要查看加密图像,图像必须是未压缩的图像格式,例如bmp。 PNG、JPEG等都是压缩图像,因此您无法显示这些图像。此外,imgae标头必须解压缩。 如果你想像这样加密图片,只需将其转换成未压缩的格式,用十六进制编辑器打开并保存图片标题。之后,您可以使用AES/ECB对图像进行加密。
最后,您必须插入原始图像标题。现在,您应该能够查看加密图像。

最后一部分不完全正确。由于大多数标题内容都是众所周知或容易猜到的,您可以从头构造一个标题,并将其与图像的其余部分连接起来。好吧,您可以重建一些标题,但我不认为您可以像在wiki页面上“显示”加密图像那样“显示”加密图像。