Abstract: Sensor fingerprint is a unique noise-like pattern caused by slightly varying pixel dimensions and inhomogeneity of the silicon wafer from which the sensor is made. The fingerprint can be used to prove that an image came from a specific digital camera. The presence of a camera fingerprint in an image is usually established using a detector that evaluates cross-correlation between the fingerprint and image noise. The complexity of the detector is thus proportional to the number of pixels in the image. Although computing the detector statistic for a few megapixel image takes several seconds on a single-processor PC, the processing time becomes impractically large if a sizeable database of camera fingerprints needs to be searched through. In this paper, we present a fast searching algorithm that utilizes special "fingerprint digests" and sparse data structures to address several tasks that forensic analysts will find useful when deploying camera identification from fingerprints in practice. In particular, we develop fast algorithms for a) finding if a given fingerprint already resides in the database, b) determining whether a given image was taken by a camera whose fingerprint is in the database, c) finding fingerprints among N fingerprints that correspond to the same camera.

@inproceedings{gojan-fridrich-filler-spie10,
  url          = {http://www.ws.binghamton.edu/fridrich/Research/EI7541-8.pdf},
  booktitle    = {SPIE Conference on Media Forensics and Security},
  author       = {Miroslav Goljan and Jessica Fridrich and Tom\'{a}\v{s} Filler},
  location     = {San Jose, CA},
  year         = {2010},
  title        = {Managing a large database of camera fingerprints},
}