UNIVERSAL COUNTER FORENSICS METHODS FOR FIRST ORDER STATISTICS M. Barni, M. Fontani, B. Tondi, G. Di Domenico Dept. of Information Engineering, University of Siena (IT)
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Outline 1. MultiMedia Forensics & Counter-Forensics 2. Universal counter-forensics 3. Proposed approach 1. Application to pixel domain 2. Application to DCT domain 4. Results and discussion
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics MM Forensics & Counter-Forensics MM Forensics: Goal: investigate the history of a MM content Rapidly evolving field, but… Countermeasures are evolving too! Counter-Forensics: Goal: edit a content without leaving traces (fingerprints) project
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Forensics & Counter-Forensics MM Forensics is evolving rapidly… Countermeasures are evolving too! Counter-Forensics goal: allow to alter a content without leaving traces (fingerprints) Counter Forensics Taxonomy [K07] ScopeUniversalTargetedApproachIntegrated Post- processing [K07] M. Kirchner and R. Böhme, “Tamper hiding: Defeating image forensics,” in Information Hiding, ser. Lecture Notes in Computer Science, vol Springer,2007,pp. 326–341.
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics General idea: A. If you know what statistic is used by the analyst B. just adapt the statistic of your forgery to be very close to the statistic of “good” sequences C. Any detector based on that statistic will be fooled! Game Theory: This scenario can be seen as a game [B12] Forensic Analyst vs. Attacker Different games are possible: ① The adversary directly know the statistic of the “untouched sequences” ② The adversary only has a training set of “untouched sequences” [B12] M. Barni. A game theoretic approach to source identification with known statistics. In Proc. of ICASSP 2012, IEEE Int. Conference on Acoustics, Speech, and Signal Processing, 2012.
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Fool a detector = force it to misclassify Approach: make the processed image statistic close to that of (an) untouched image If it’s close enough… the detector must do a false-positive or a false-negative error Assumptions: Analyst’s detector relies only on first order statistics Adversary has a database (DB) of histograms of untouched images So the adversary: Processes the image Searches the DB for the nearest untouched histogram Computes a transformation map from one histogram to the another Applies the transformation, minimizing perceptual distortion Outline of the scheme
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Practical applications We show how the proposed method can be used for two different CF tasks: Hiding traces left by processing operations in the histogram of pixel values Hiding traces left by double JPEG compression in the histogram of quantized DCT coefficients You will notice that switching between different domains do not change the scheme, but just the implementation of each “block”
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Application #1 Conceal traces in the image histogram We propose a method to conceal traces left by any processing operation in the image histogram Many detectors exist based on histogram analysis: Detection of Contrast Enhancement (pixel histogram) [S08] Detection of double JPEG compression (histograms of DCT coefficients) [B12] We make no assumptions on the previous processing [S08] M. C. Stamm and K. J. R. Liu. Blind forensics of contrast enhancement in digital images. In Proc. of ICIP 2008, pages 3112– 3115, [B12] T.Bianchi, A.Piva, "Image Forgery Localization via Block-Grained Analysis of JPEG Artifacts", IEEE Transactions on Information Forensics & Security, Volume: 7, Issue: 3, Page(s):
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Basic notation Y and h Y denote the processed image and its histogram X and h X denote the untouched image and its histogram Z and h Z denote the attacked image and its histogram Γ denotes the set of histograms (in the database) respecting possible constraints imposed by the attacker (e.g: retaining a minimum contrast) With ν * we always denote the normalized version of the h * histogram
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Goal: search a database of untouched image histograms to find h* such that: It has the most similar shape w.r.t. h Y It belongs to Γ We propose to use the Chi-square distance, defined as Therefore, the retrieved histogram is Phase 1: histogram retrieval
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Phase 2: histogram mapping Goal: find the best mapping matrix that turns to number of pixels to be moved from value to A maximum distortion constraint is given, that avoid changes bigger than of the value of a pixel We choose the Kullback-Leibler divergence to measure the statistical dissimilarity between the histograms, and yield the following optimization problem: Convex! Mixed Integer Non Linear Problem
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Phase 3: pixel remapping We have the mapping matrix, but which specific pixels should be changed? Intuition: editing pixels in textured/high-variance regions causes smaller perceptual impact We propose an iterative approach: for each couple (i,j) 1. Evaluate the SSIM map between Z and Y 2. Find pixels having value i, and: a. scan these pixels by decreasing SSIM, change the first n(i j) to j b. mark edited pixels as “unchangeable”, repeat 2. for (i, j+1) 3. If no more pixel of value i have to be remapped, repeat from 1., with (i+1,j) Remarks SSIM map evaluated iteratively, to take into account on-going modifications Obtained image will have, by construction, the desired histogram Pixel Remapping DB
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Advantage of iterative remapping If SSIM map is not iteratively computed, visible artifact are likely to appear… Without iterative update With iterative update
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental validation We use the proposed technique to hide traces left by: Gamma-correction Histogram Stretching Both these operators leave strong traces in image histogram: 14\ Original Gamma Corrected Equalized Original Gamma Corrected Original Equalized
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental validation We use the proposed technique to hide traces left by: Gamma-correction Histogram Stretching (equalization) Both these operators leave strong traces in image histogram Original Gamma Corrected Equalized
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Case study Original Image Processed image (gamma-correction) Resulting histogram Remapped histogram Remapped image Histogram from DB Histogram Database Search Best match
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics DB histogram Before Counter-Forensics After Counter-Forensics D max = 4
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Histogram enhancement detection Stamm’s detector [S08] It detects the peak-and-gap behavior of the histogram This is done by considering the contribution of high-frequencies in the Fourier transform of the histogram OriginalGamma CorrectedEqualized [S08] M. C. Stamm and K. J. R. Liu. Blind forensics of contrast enhancement in digital images. In Proc. of ICIP 2008, pages 3112– 3115, 2008.
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Dataset & Experiment setup Database of untouched histograms from JPEG images (MIRFLICKR dataset). Total weigth: ~10MB Apply gamma-correction and histogram equalization to 1300 images from the UCID dataset Each processed image is “attacked” with the proposed technique, using {2,4,6} as values for the D max constraint We constrain the database search to histograms whose contrast is not smaller than that of the enhanced image (this is our Γ ) We evaluate performance of Stamm detector in distinguishing: Processed vs. untouched images Processed&Attacked vs. untouched images We evaluate the similarity between attacked and processed images using: PSNR (“mathematical” metric) Structural Similarity Index (“perceptual” metric) [W04]
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental results Results in countering detection of gamma-correction Attacked – Processed distance
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental results Results in countering detection of histogram equalization Attacked – Processed distance
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Application #2 Conceal traces in the image histogram Method to conceal traces left by double compression in the histograms of quantized DCT coefficients Huge number of detectors exploit double quantization, e.g.: Estimation of previous compression [P08] Forgery detection [H06] [P08] T. Pevny and J. Fridrich, “Estimation of primary quantization matrix for steganalysis of double-compressed JPEG images,” Proceedings of SPIE, vol. 6819, pp –681911–13, 2008 [H06] J. He, Z. Lin, L. Wang, and X. Tang, “Detecting doctored JPEG images via DCT coefficient analysis,” in Lecture Notes in Computer Science. Springer, 2006, pp. 423–435.
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Double Quantization DQ is a sequence of three steps: 1. quantization with step b 2. de-quantization with step b 3. quantization with step a Characteristic gaps
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics More on DQ… Why is it interesting? Allows forgery detection Tells something about the history of the content (e.g. fake quality problem) NOTICE: Effect is visible when first quantization is stronger than the second The behavior is observed in the histogram of quantized DCT coefficients If JPEG compression has been carried, holes are always present in the histogram of de-quantized coefficients
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics More on DCT histograms… Double JPEG compression leaves the trace in the histogram of each DCT coefficient How is this histogram calculated? Intuition: 8x8 DCT Single blocks Image Block-wise DCT Coeff. Analysis
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Perception in the DCT domain Understand relationship between changes in the DCT domain and effects in the spatial domain Just Noticeable Difference (JND) => minimum amount of change in a coefficient leading to a visible artifact Watson defined JND for the DCT case, taking into account Human Visual System (HVS) properties: More sensitive to low frequencies Luminance masking: brighter blocks can be changed more Contrast masking: more contrast allows more editing
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics What we want to do In this case, traces are left in DCT histograms of quantized coefficients… We must change these histograms, to make them similar to those of an singly-compressed image! We need to revisit the previous application to adapt to the DCT domain More histograms (64 instead of 1) More variables (coefficients vary from to 1016) Less intuitive remapping rules…
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Histogram retrieval… revisited! Need all DCT histograms of singly compressed images Just take some JPEG images and extract them? NO! DCT histograms depends on the undergone quantization Search would be practically dominated by this fact We need to simulate JPEG compressed images: Take DCT histograms of never-compressed images During search, quantize each of them with the same factor of the query histogram Distances may be weighted, to give more importance to low frequency coeffs
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Histogram mapping… revisited! The problem is the very same, repeated 64 times Problem: how to set the perceptual constraint (D max )? Idea: make it depend on JNDs => allow at most the amount of change leading to a JND Here we cannot exploit local information (luminance/contrast) Notice: we’re working on quantized coefficients! Changes will be expanded after de-quantization! => Watson’s matrix must be divided by the quantization step
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Pixel mapping… revisited! We have to move some DCT coefficients from a value to another… how do we choose them? We exploit Watson model again This time, we can exploit local information too Algorithm: 1. Evaluate the JND for all blocks; 2. For each element n(i j ) a. Find coefficients having value i, and: b. scan these coeffs by decreasing JND, change the first n(i j) to j c. mark edited coeffs as “unchangeable”, repeat 2. for (i, j+1) 3. If no more pixel of value i have to be remapped, repeat from 2., with (i+1,j)
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Does it work so smoothly? No, it doesn’t Artifacts show up, probably due to the high number of changed coefficients in high frequencies Possible solutions Consider the joint impact of changes in more than one frequency Anything else? [open question!] However, most detectors usually rely on low-frequency coefficients We made some experiments remapping only the first 16 (in zig-zag ordering) coefficients
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental setup: detector We implement a detector for double compression based on calibration Calibration allows to estimate the original distribution of a quantized signal Basic idea with JPEG: Cut small number of rows/ columns Compute 8x8 DCT and histograms Read from file Estimated
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental setup: method 200 TIFF (never compressed) images Experiment consists in evaluating detector performance before and after counter – attack Compress Run detector Re- Compress Run detector Remove traces Run detector Detector evaluated in these tasks: Discriminate single- vs. double- compressed images Discriminate single- vs. attacked images We do not want to cheat i.e., we do not use threshold values from the first experiment to do classification in the second
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Experimental results Mean SSIM: Mean PSNR: 42.9 dB
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Conclusions Our universal CF methods allow to conceal traces left by any processing in the first-order statistic Evaluation of the effectiveness should probably rely on statistic measures rather than on detectors Future works: Explore connections with Optimal Transportation theory Explore the use on un-quantized DCT coefficients (conceal traces of single compression) Develop an integrated method to re-compress an image without leaving traces Explore the use of different objective function for the histogram mapping problem
MM&SEC 2012 – Coventry, UK Universal Counter-Forensics Thank you Questions? Acknowledgments This work has been supported by the REWIND project