**
一.在处理图片隐写题的时候,可能会修改图片原有的宽高,导致图片里面的内容无法正常显示,那么怎么判断它的宽高是否被修改了呢?
**
1.把图片拖进010editor中会发现左下角提示CRC不匹配,这是因为修改了高宽,却没有修改CRC,导致读取报错。
2.在linux中CRC32错误的图片是无法打开的,也可以利用pngcheck检查图片,会提示CRC32校验错误
**
二.既然知道了CRC校验码错误,那么如何修改呢? 首先我们要知道CRC32是有哪些字节构成的
**
PNG文件中总是以固定的八个字节开头
89 50 4E 47 0D 0A 1A 0A
数据块长度13
00 00 00 0D
文件头数据块标示IDCH
49 48 44 52
13位数据块(IHDR)
下面为宽和高
00 00 07 7E 00 00 03 60
这5个字节依次为Bit depth,ColorType,Compression method,Filter method,Interlace method
08 06 00 00 00
接下来的四字节为该png图片的CRC校验码
7D C7 3F 7F
CRC校验码,由IDCH和IHDR共十七位字节进行crc计算得到