Avoiding Camera Noise Signatures





Introduction: Avoiding Camera Noise Signatures

If you take enough images with your digital camera, they can all be compared together and a unique signature can be determined. This means that even when you think that you are posting a photo anonymously to the internet, you are actually providing clues for the government to better tell who you are. The larger the sample size of images they have, the easier it is them to track down images coming from the same camera. Once they know all the images are coming from the same camera, all they then have to do is find that camera and take a picture to confirm it beyond a reasonable doubt.

It is important to remove this noise signature so that you cannot be tracked down. I cannot guarantee any of these methods will work beyond the shadow of a doubt because the woman doing research for the government on how to find the signature is very good. Check out her papers if you're really good at dense math, and pass along what you learn. I can only promise that this will make their work more difficult.

Step 1: Remove the Camera Info

When you take an image with a digital camera, the camera itself leaves a data file which automatically identifies itself. This file is called an EXIF and usually has information like the make of the camera, the ISO setting, the date and time, the pixel setting, etc. This needs to be removed. The easiest way to remove this is to open photoshop and save it for web.

When you save, I recommend using a JPG compression with a quality setting of no better than 60%. This will add a lot of ugly noise make it slightly harder to create a noise signature.

The beautiful swiss landscape was found here. It is licensed with a creative commons attribution-share alike 2.5 generic license.

Step 2: Clean the Lens

Clean your camera's lens constantly with a non-scratch cloth that you can get for cleaning camera lenses or eye glasses. This will remove specks of dirt that will show up from image to image and never change. If there are pixels never changing on your camera then it makes it really easy to identify you. This is why it is important to crop the image.

Step 3: Crop and Resize the Image

If you have dirt on year lens, dead pixels or "hot" pixels, then it is really easy to find images from the same camera since they will all have static pixels. This means, from image to image there will always be a handful of pixels that don't change.

The way to get around this is by cropping and resizing the image. This will shift the position static pixels and when images are compared together make them just seem like noise.

This alone will not always remove the noise signature itself, but it is one way to make it harder to identify it.

Step 4: About the Noise Signature

So far I've only told you how to make it hard to tell a picture has come from your camera, but not how to remove the noise signature. The marks made by dirt on the lens and dead pixels is actually different than the noise signature that they use to keep track of what pictures you are taking.

The noise signature itself is actually due to thermal noise (environmental heat) and imperfections on the CCD itself. Professional photographers and astrophysicists have tried to compensate for this by creating cameras that evenly lights a CCD a moment before the image is taken to create a noise reference against the image being taken or by super-cooling the camera itself so that heat can't distort the CCD.

In your store-bought camera, it won't have either of these functions and so you will end up getting a lot of pseudo-random noise mainly on the last 3 bits of every pixel. This noise isn't really noticeable to the naked eye, but with a large enough image sample, they can create a noise profile and match almost with certain accuracy pictures from the same camera. Since the noise is dispersed throughout the image itself and tends to remain constant through certain standard image manipulations, it is hard to remove without destroying the image.

Step 5: Removing the Noise Signature

Ideally, you would remove the noise signature by making the image cleaner. It is noise after all. Although, determining which noise to remove isn't always clear.

It is probably more effective to remove the noise signature by creating more noise. One thing to try is to open Photoshop and save an image as a jpg using bicubic compression, resize it, crop it and then save it for web, again as a jpg (removing the exif) and finally save it for web again as a jpg using a quality of about 50. This should destroy the noise signature beyond recognition, but the image might not look too good.

It wouldn't be good to do this ever time either since you will end up creating a new "signature." The best thing to do is to save each image using a different elaborate method every time. For instance, you might convert something to a flash video, take a screenshot and then save for web as a jpg compressed with a quality of about 50.

It may not work, but you could also try adding a small amount of random noise to the red and green channels. This might actually clean up the image and remove the signature, but I'm not sure.

Step 6: Common Sense

If you're bothering to make your image anonymous, post it anonymously. Use a TOR server and if you have to register for an account to post it, create a new one for every couple of images. Make the images seem like they are coming from as many places as possible.

Step 7: Use a Film Camera

If you are really that concerned, use a film camera and scan your images using multiple scanners at multiple different corporate copy shops. The only downfall to this is that you actually have to go somewhere to scan the images and store employees or video cameras could maybe identify you. If you wait a few days before posting things online, it will make it harder for them to connect it with you.



    • Science of Cooking

      Science of Cooking
    • Pro Tips Challenge

      Pro Tips Challenge
    • Paper Contest 2018

      Paper Contest 2018

    We have a be nice policy.
    Please be positive and constructive.




    From reading the .PDF file from your source there, she mentioned that image analysis has been performed on analog (film) cameras long before digital image analysis. Therefore, step 7 really won't give you a lot of options.

    This is going to be a bit technical, though can be written in a short python script using Python Imagimg Library:

    You can add random noise using some good pseudo-random generator, like Mersenne Twister (seed with something random) - choose random number of pixels at random positions and brighten/darken them a bit (or mess with both chroma and luma channels).

    Then use either nearest-neighbor or lanczos interpolation to resize image (instead of bicubic), they modify the frequency spectrum and histogram characteristics much more.

    The reason jpeg compression does the described degradation of noise is because jpeg quantization tables used for lower qualities used after discrete cosine transform basically remove highest frequencies ("the noise").

    I suggest either nearest neighbour or lanczos interpolation when scaling images. Lanczos is based on "ideal" sinc filter and can be configured as low-pass filter that removes noise (the statistical signature).

    For example, using lanczos interpolation when scaling image in GIMP, it screws up higher frequencies (the visible noise) quite considerably (measured with power spectral density and correlated to original image).

    See attached example measurement (shows PSD and correlation of frequencies spectrum after Fourier transform).


    If the government is going to go through this much work to prove you took a bunch of pictures, you're either a terrorist, a spy, or a kiddie pornographer.

    What this instructable lacks is a demonstration. A fairly simple one would be to take 4n pictures, where n is a big number, say 1,000 or 100,000, with the same camera in randomly different situations. Do not process the pictures. Create four composite images, summing the pixels of n pictures together (stacking them).

    Now process them. Subtract the mean value of each stack from that stack. Compute the standard deviation of all the pixels in a stack and divide the pixel values by the standard deviation.

    If the four processed stacks look similar, there is a strong signature in the image. If not, look for a more subtle signature. Calculate a spatial power spectrum from each processed stack. Similar power spectra MAY indicate a signature.

    Do a spatial correlation between each of the four stacked images. Similar correlations can also indicate a signature.

    If you find a "signature," reduce n by a factor of two and compare the 8 stacks. See how many images it takes to create a signature. Figure the government needs fewer pictures than you do, but probably not a lot fewer.

    How many of your pictures would they have to suspect to be from the same camera in order to get a signature?

    Just for kicks, do the same thing with a friend's camera of a different model and make. If it has a similar signature ...

    The "government" does not have to do anything on such a large scale as ElderBear says. (No insult intended to you ElderBear!)

    GOOGLE already has the processing power to do this kind of comparison; and they have the photographic database to test it with. Just as a phone number can be found in many cases via THE GOOGLE, photographs can be examined as well. It is all just data of one kind or another. Data is messy and leaves a trail of one kind or another for someone or something with a trained eye for it.

    w1n5t0n: Thank you for writing such a clear Instructable. Your style of presentation was very neat and well presented.

    "If the government is going to go through this much work to prove you took a bunch of pictures, you're either a terrorist, a spy, or a kiddie pornographer."

    Not everyone has the same faith in government that you do. Many don't find an appeal to safety argument to be a convincing one. I certainly don't.

    Tell me how being able to identify the noise pattern on a camera wouldn't also allow forged images? That is one potential abuse of this technology (which, given how useful it would be for law enforcement, and how trivial it would be to automate, will certainly end up being used in the courts). I don't think it is difficult to think of scenarios where this kind of identification could be problematic.

    In terms of the practical demonstration you mention, I would suggest that it would be better to take your sample images with the lens cap on (so only noise, and no real image data). Additionally, it would probably be wise to re-run the tests several times in a range of (operating) temperatures (given the effect on CCDs it has).

    As for the number of images required for identification, that number drops drastically with a CCD noise database at point of manufacture, or with deliberately modified CCDs (or camera firmware) - both techniques would be simple to implement and significantly reduce the samples required to identify.

    This isn't actually pseudo random noise. It is random noise that MAY be biased by process variation between elements of the CCD.

    There's nothing wrong with knowing how to do this. (As MahavishnuMan pointed out, information has no intent.) There's nothing wrong with the Instructable. I'm probably taking all this way too seriously. But the paranoia that often fuels this sort of thing can be more dangerous than the perceived threat.

    Let's say someone gets shot. The cops look at two guns, both of which match the bullet found in the corpse. Both owners claim innocence. The first gun is unaltered, with the owner's fingerprints where you'd expect them. The second is wiped clean of prints, and the serial number is filed off. Guess who's getting arrested.

    The same goes for computers. Say you've got a picture on your hard drive of this amazingly huge sparkler bomb your friend made for the fourth of july. Airport security sees fit to search your hard drive, and they find it. They ask you about it. You cooperate, answer their questions, and assure them that it was all on the level. I'm not saying they'll compliment your friend's bomb making skills and send you on your way, but the point is, they won't have sufficient grounds to suspect you of plotting an attack.

    If, however, the file is hidden, sanitized, distorted, and downloaded through a proxy server, and when asked about it you lie, or clam up and demand to see a lawyer, you've just earned yourself an FBI file and a body cavity search. That kind of forethought indicates that you were deliberately hiding something, and that's the sort of thing that law enforcement and airport security focus on. The more sophisticated your methods, the more interested they'll be (if, of course, your concealment efforts fail). Sure, they're wasting their time on you, but they wouldn't be doing their jobs if they didn't investigate someone who is clearly hiding something.

    I'm not saying that we shouldn't have some degree of privacy. I don't want to take the airport security guys on a guided tour of my hard drive any more than I want to install a breathalyzer ignition lockout in my car, or put a tracking chip in my arm. My point is that in all but the most exceptional circumstances, this kind of tampering is more trouble than it's worth. Unless we have something to hide, being paranoid only makes others paranoid about us. We cannot live in fear of one another.

    Personally, I make a point to not put anything online that I wouldn't put my name on. If "they" (the fearful entity I've heard so much about) do in fact come for me, well, I'll deal with it. Better to die on your feet than live on your knees, right?

    Bit narrow minded of some members who seem to think that the US is the beginning and end of the entire world when it comes to things like rights and that any system different to yours must be somehow flawed.

    It isn't.

    I think that the "Right of free speech' needs to be put into context here . You may have a right to free speech in the USA but in Australia and most of the rest of the western world you do not have this 'right'. You instead are not stopped from voicing your opinion as there is no legal means of stopping you from voicing your opnion. There is a difference.

    We have compulsory electrol registration and voting for all citizens aged 18 and over who are not in jail for longer than 6 months or classified as mentaly incompetent to vote etc.  It is also legal to drink alcohol, get married, own property, sign contracts, be called for jury duty at 18 etc as well.