图像旋转操作对JPEG数码照片Exif信息的修改
2018-03-01刘涛,杨鸣
刘 涛,杨 鸣
(重庆市公安局物证鉴定中心,重庆 400707)
JPEG格式的数码照片广泛地应用于日常生活和工作中[1–2]。在数码照片拍摄完成后为了便于浏览,有时需要对照片进行旋转操作,最常见的就是横幅照片旋转为竖幅照片。很多相机自身带有照片旋转操作功能,在相机内部即可对照片进行旋转,同时众多的看图软件均具备图像旋转操作功能,在浏览时可对照片进行旋转。直接观察旋转操作前后照片,几乎不会发现明显的差别,但实际上数码照片中的不可见信息特别是Exif(Exchangeable Image File, 可交换图像文件)[1,3]信息很有可能被修改从而导致数码照片失去了其原始性。本文通过分析旋转操作前后JPEG数码照片Exif信息的变化,讨论了旋转操作对JPEG数码照片原始Exif信息以及数码照片原始性的影响,对重要照片如现场勘验、物证、公证等各类照片的保存、浏览等操作提出相关建议。
1 Exif信息
Exif信息提供了照片拍摄时的各类参数,包括相机品牌型号、拍摄参数、拍摄时间、修改时间等各类信息[4],Exif信息是开放型信息,多种图像处理软件的编辑修改均会改变照片中的Exif信息,一些专业处理软件也可以针对照片中特定字段的值进行修改[4–5]。诸如Windows照片查看器、ACDSee、Lightroom等图像浏览软件都可以提取照片的部分Exif信息,也可以利用Ultraedit等文本编辑器,通过分析图像编码获得更为准确、完整的Exif信息。
2 照片的旋转操作
使用佳能5DII单反数码相机拍摄的照片为实验样本,利用佳能5DII单反数码相机自身的旋转功能对照片进行90°和270°旋转操作,选用Windows照片查看器、ACDSee 17(版本:17.1)、光影看图(版本:1.1.1.50)、Picasa 3(版本:3.9.141)、Lightroom5(版本:5.6),这五款常用的看图软件分别在顺时针和逆时针方向上对照片进行90°、180°、270°旋转操作,旋转操作以90°为旋转单位,每点击一次旋转操作,图片旋转90°。对每张照片通过Hash(版本:1.04)软件获得MD5值并进行比较[6–7],利用文本编辑器Ultraedit(版本:21.20.0.1001)显示每张照片的十六进制编码,对相应的Exif信息进行分析和比较。
2.1 佳能5DII单反数码相机内部对照片的旋转
佳能5DII单反数码相机内部只提供了两种旋转方式,顺时针90°和270°旋转操作,如图1所示,原始照片为横幅照片,经过在相机内部旋转90°或270°后成为竖幅照片。表1给出了原始照片和相机内部旋转后照片的尺寸、文件大小和相应的MD5值,从中可以看到这三张照片的尺寸、文件大小相同,但MD5值彼此不相同。MD5值的不同表明旋转操作改变了照片的原始性,利用Ultraedit对三张照片的Exif信息进行分析比较,可以看到这三张照片的Exif信息中仅仅是标签为“0x0112”的目录项所对应的值彼此不相同,如图2所示,“0x0112”对应的标签名为“Orientation”[3]。 佳能5DII单反数码相机内部的旋转操作只改变了照片Exif信息中标签名为“Orientation”一个字节的值,其它部分的信息均没有发生变化,从而照片的大小保持不变,Exif信息中记录照片宽高尺寸的标签“0xa002”(ExifImageWidth)和“0xa003”(ExifImageHeight)对应的值没有变化,尽管照片由原来的横幅照片变为了竖幅照片,但从照片Exif信息中读出的照片宽高数值并没有随着旋转操作而改变,仍为原始照片给出的宽高值,如表1所示。
图1 a. 佳能5DII相机拍摄的原始照片;b. 照片在相机内部顺时针旋转90°;c. 照片在相机内部顺时针旋转270°Fig.1 The original photo shot by a Canon 5D II digital SLR camera (a); The original photo rotated to 90° (b) and 270° (c) clockwise inside the 5DII
表1 佳能5DII单反数码相机顺时针转动90°和270°后的照片部分属性和MD5值Table 1 Changing of MD5 values of the photo rotated to 90° and 270° clockwise inside the Canon 5D II digital SLR camera
图2 部分Exif信息 (a.原始照片;b.顺时针旋转90°;c. 顺时针旋转270°)Fig.2 Partial Exif information (a. the original photo; b. 90° clockwise rotation; c. 270° clockwise rotation)
2.2 Windows照片查看器对照片的旋转
利用Windows照片查看器,在顺时针和逆时针方向上对照片进行90°、180°、270°旋转操作,得到的照片与原始照片MD5值都不相同。以Windows照片查看器顺时针旋转90°为例,旋转后的照片增加了“0xFFE0(APP0)”标签,字节序由原来的“小端字节序”变为“大端字节序”,增加了“0x0131(Software)”标签及其值“Microsoft Windows Photo Viewer 6.1.7600.16385”,代表“修改时间”的标签“0x0132(DateTime)”变成照片旋转操作时的时间(如图3a和图3b所示),旋转后的照片在“0xFFE0(App1)”数据域增加了“XMP”信息(见图3c),以及缩略图等其它数据段的变化。照片按照顺时针90°和逆时针270°旋转后得到的照片效果是相同的,对这两张照片进行比较,发现只在代表“修改时间”的标签“0x0132(DateTime)”的值不同,其它数据段均相同,同样,逆时针90°和顺时针270°、顺时针180°和逆时针180°旋转操作表现出的特点也是一样的。
图3 Windows照片查看器顺时针90°旋转后照片的部分Exif信息Fig.3 Partial Exif information of the photo rotated to 90° clockwise by Microsoft Windows Photo Viewer.
2.3 Acdsee17对照片的旋转
利用Acdsee17的Quick View在顺时针和逆时针方向上对原始照片进行90°、180°、270°旋转操作,按照软件默认的参数设置保存旋转后的照片。旋转后照片增加了 “0xFFE0(APP0)”标签,字节序保持原始照片的“小端字节序”不变,增加了“0x0131(Software)”标签及其值“ACDSee Quick View”,代表“修改时间”的标签“0x0132(DateTime)”修改为照片旋转操作时的时间,标签“0x9290(SubSecTime)”的值也发生了变化,如图4所示。照片按照顺时针90°和逆时针270°、逆时针90°和顺时针270°、顺时针180°和逆时针180°旋转操作后得到的照片只在标签“0x0132(DateTime)”和“0x9290(SubSecTime)”所对应的值不同,其它数据段相同。
2.4 光影看图对照片的旋转
利用光影看图在顺时针和逆时针方向上对原始照片进行90°、180°、270°旋转操作,在旋转后的照片中未发现标签“0x0131(Software)”,标签“0x0132(DateTime)”的值仍为照片拍摄时间,未在照片的Exif信息中发现照片修改时间。同时,旋转后照片Exif信息中代表缩略图数据段的IFD1信息丢失,如图5所示。与原始照片相比,旋转后照片的数据部分要少很多。同时注意到顺时针90°和逆时针270°旋转后的照片MD5相同,逆时针90°和顺时针270°旋转后的照片MD5相同、顺时针180°和逆时针180°旋转后的照片MD5也相同。
2.5 Picasa和Lightroom5对照片的旋转
利用Picasa 3和Lightroom5在浏览图片时对照片进行旋转,操作前后照片的Exif信息未发生变化,照片的MD5值也保持不变。
图4 Acdsee17顺时针90°旋转后照片的部分Exif信息Fig.4 Partial Exif information of the photo rotated to 90° clockwise by Acdsee17
图5 照片缩略图数据段IFD1地址的偏移量(a.原始照片;b.光影看图旋转90°后的照片)Fig.5 Offset of IFD1 of the data of the photo’s abbreviated image(a. The original photo; b. rotated to 90° clockwise by Neoimage)
3 分析与讨论
佳能5DII单反数码相机内部对照片的旋转操作仅改变了Exif信息中标签为“0x0112 (Orientation)”一个字节的数值,尽管只有一个字节的改变,照片的原始性已经发生了变化。Windows照片查看器,ACDSee 17以及光影看图图像浏览软件的旋转操作对照片的Exif信息存在较大的修改,旋转后的照片不再具备原有的原始性,经Windows照片查看器和ACDSee 17旋转的照片,其Exif信息记录了旋转软件的名称、操作时间及其它相关内容,但光影看图的旋转操作并没有给出同样的记录。在通常情况下,ACDSee 17、光影看图等看图软件在对照片进行旋转操作后都会提示是否保存旋转后的照片,但是Windows照片查看器不会给出提示,直接覆盖原图,这就容易在不经意间改变了原始数码照片的Exif信息,造成照片原始性的破坏。在利用Picasa 3和Lightroom5浏览照片时,对照片的旋转操作没有改变照片的MD5值,不会破坏照片的原始性,这主要是因为Picasa 3和Lightroom5此类软件在对照片进行操作时使用额外的文件来记录照片的属性以及操作步骤等[8],并不直接对原始照片进行操作从而避免了对照片原始性的破坏。
4 总结
数码照片是以数字技术为基础,以数字文件的形式反映客观现实的光学成像图像。在司法鉴定和法庭科学领域,需要考虑数码照片的原始性和真实性[9],数码照片作为一种电子文件,很容易因各种操作引起信息特别是Exif信息的改变,尽管一些操作不会使照片所反映的成像规律和客观事实产生本质的改变,但是往往会破坏照片的原始性,容易给司法鉴定和法庭科学相关工作带来消极影响,这就要求在对重要照片如现场勘验照片、物证照片、公证照片等各类照片的保存和浏览时需要特别注意保护此类文件的原始性。建议完成拍摄后在相机内部不要对照片进行旋转操作,导出照片后首先设置照片的属性为“只读”,然后提取照片的MD5值,并对照片和提取的MD5值进行妥善保存和备份。对照片进行浏览要选用不会破坏照片原始性的图像浏览软件,以避免浏览过程中浏览软件对照片信息的修改。
[1] 黄一青. Exif信息在案件侦查中的应用[J]. 刑事技术,2011(3): 57-59.
[2] 赵洁,郭继昌,张艳. 利用块效应特征的JPEG图像盲取证研究进展[J]. 中国图象图形学报,2013(6): 613-620.
[3] Camera & Imaging Products Association. Exchangeable image fi le format for digital still cameras: Exif Version 2.3: CIPA DC-008-Translation-2012[S/OL]. [2014-12-05]. http://www.cipa.jp/std/documents/e/DC-008-2012_E_C.pdf.
[4] 刘猜. 利用Exif信息内容鉴定数码照片[J]. 中国司法鉴定,2010(5): 49-51.
[5] 卢启萌,施少培. Exif信息在数码照片真实性鉴定中的应用[J]. 中国司法鉴定,2012(5): 86-90.
[6] 张裔智,赵毅,汤小斌. MD5算法研究[J]. 计算机科学,2008(7): 295-297.
[7] 易红军,佘名高. MD5算法与数字签名[J]. 计算机与数字工程,2006(5): 44-46.
[8] 秋凉. Lightroom 5高手之道数码摄影后期处理完全手册[M].北京:人民邮电出版社,2013.
[9] 全国刑事技术标准化技术委员会照相检验分技术委员会. 图像真实性鉴别技术规范图像真实性评价:GA/T 916-2010[S]. 北京:中国标准出版社,2010.