21
\$\begingroup\$

Beyond the metadata/EXIF/IPTC (which can be easily altered), is it possible to prove that an image is authentic? If this is not possible, how does a photojournalist prove the authenticity of an original image?

Can digital cameras sign images to prove authenticity? How does this work, and what cameras can do it?

\$\endgroup\$
6
  • \$\begingroup\$ Inspired by @Itai's comment on photo.stackexchange.com/questions/15305/… \$\endgroup\$
    – dpollitt
    Aug 31, 2011 at 13:35
  • \$\begingroup\$ @mattdm - I disagree with you adding the tag "ethics"! \$\endgroup\$
    – dpollitt
    Aug 31, 2011 at 13:54
  • \$\begingroup\$ I was looking through the existing tags for ones that might apply, and it seems that issues of veracity have an ethical aspect. Given that we're limited to five tags, though, maybe something like digital-signatures would be more useful. \$\endgroup\$
    – mattdm
    Aug 31, 2011 at 13:59
  • \$\begingroup\$ Most (if not all) Canon EOS cameras has an option to include a hash of the unaltered image in its metadata. Unfortunately the metadata can still be stripped from the file, or even faked since the algorithm was cracked in '10 (source: vizworld.com/2010/11/… ) \$\endgroup\$
    – Tzarium
    Aug 31, 2011 at 14:00
  • 1
    \$\begingroup\$ @Tzarium - Can you add that in an answer instead of a comment? The comments are not really meant for this, and I'd like to vote you up! \$\endgroup\$
    – dpollitt
    Aug 31, 2011 at 14:02

8 Answers 8

15
\$\begingroup\$

Yes, this capability exists to some extent, but not through "signing" the image in the normal sense. It's based on the sensor noise patterns. Jan Lukáš, Jessica Fridrich, and Miroslav Golja (and a few others) at SUNY Binghamton have done work relating to two fields - identification of digital cameras using sensor noise patterns and identification of digital image forgeries using sensor noise patterns.

Something like this paper probably discusses what you are looking for. By detecting interruptions and inconsistencies in the noise pattern produced by the sensors that capture an image, it is possible to detect what parts of a digital image may have been manipulated. It's not a trivial process by any means, but research has been done on using the characteristics of the hardware to perform this type of task.

The last time I did work in this field was about 5 years ago, so I'm a bit out of touch with the latest and greatest, but I do know that law enforcement and the press are both interested in this capability (or at least were 5 years ago). You might have to do some digging to see if/how this has advanced, but it seems to be the best bet at proving authenticity. I just don't see it as something an individual would have on their own.

\$\endgroup\$
6
  • 1
    \$\begingroup\$ There IS also a signature method too. IIRC, the patent belongs to NASA. \$\endgroup\$
    – Itai
    Aug 31, 2011 at 15:29
  • 1
    \$\begingroup\$ @Itai A signature other than the sensor noise pattern? I know a few patents have come out of a few universities (SUNY Binghamton being one) sponsored by US Government funding. That's the work that I'm most familiar with, since I was sitting on the DoD side around the time it was happening. The problem with most signatures, though, is that they can be broken or manipulated. The technique relies on the characteristics of CCDs and the other electrical components of the camera to generate noise, which can't easily be modified consistently. \$\endgroup\$ Aug 31, 2011 at 15:42
  • \$\begingroup\$ @Thomas Owens - You sound like our resident expert on this topic! Thank you for sharing. I would be interested to know how this has progressed along with noise improvements and in camera removal of noise. \$\endgroup\$
    – dpollitt
    Aug 31, 2011 at 15:52
  • \$\begingroup\$ @dpollitt I was more knowledgable a few years ago, when I was doing some work supporting the R&D in this topic area, but more from a camera identification rather than a forgery detection point of view. Unfortunately, it's been several years since I've worked on anything like this, so my knowledge is very out of date on the latest available. \$\endgroup\$ Aug 31, 2011 at 16:17
  • \$\begingroup\$ patents.com/us-5499294.html - The author's biography claims this is the one used in Canon and Nikon digital cameras. It creates a hash from a key in the camera apparently. \$\endgroup\$
    – Itai
    Aug 31, 2011 at 18:19
12
\$\begingroup\$

Yes, they can sign images.

This should prove authenticity although a team claims to have cracked Canon's implementation. Another team did the same for Nikon.

So this is like most digital security issues, it will prove authenticity or monumental effort to circumvent it ;)

\$\endgroup\$
6
  • 4
    \$\begingroup\$ Direct link to technical details on the Canon crack: elcomsoft.com/presentations/… \$\endgroup\$
    – mattdm
    Aug 31, 2011 at 14:15
  • 3
    \$\begingroup\$ And for Nikon, although with less detail: blog.crackpassword.com/2011/04/… \$\endgroup\$
    – mattdm
    Aug 31, 2011 at 14:18
  • \$\begingroup\$ It actually appears to be the same team in both cases. \$\endgroup\$
    – mattdm
    Aug 31, 2011 at 14:18
  • \$\begingroup\$ And in both cases the main problem is insufficient protection of the signing key on the camera. \$\endgroup\$
    – mattdm
    Aug 31, 2011 at 14:19
  • 2
    \$\begingroup\$ I don't think your conclusion is correct. The cracks are real, meaning that no, digital signing is not all that effective. From the Nikon bit: "The private signing key has been compromised, which automatically invalidates digital signatures placed by all current models manufactured by Nikon." Crypto signing in this context is extremely difficult to get right, and Nikon at least has not done so and does not appear (according to the blog post) to have much interest in doing so. I would not trust the signing and shudder to think a judge might. \$\endgroup\$
    – Reid
    Sep 2, 2011 at 18:23
3
\$\begingroup\$

Based on the mix of tags applied to this question, I think there is an important distinction to be made. While there may be technologies which prove an image is unaltered at a digital level, that does not extend to the content as it might be applied with respect to the photojournalism tag. Suppose I take a lemon and paint it the appropriate shade of green. I then take a picture. I may be able to prove to you the picture is unaltered, but it is still a picture of a lemon and not a lime. Ethics aside, I'm not sure you can apply the same analysis to the journalism as to the image.

\$\endgroup\$
3
\$\begingroup\$

is it possible to prove that an image is authentic?

I've been told that Japanese police are using cameras with "tamper-proof storage". As far as I can tell, they are ordinary off-the-shelf digital cameras, with special write-once read-many (WORM) storage cards.

\$\endgroup\$
1
  • \$\begingroup\$ It sounds to me like the worm cards prevent the data being altered after the fact, but that doesn't mean they verify where it came from in the first place. \$\endgroup\$ May 18, 2021 at 3:45
2
\$\begingroup\$

The Canon image authentication kit can do this. As with anything related to security, there are technical and physical aspects. Others have pointed out the technical aspects have been called into question, but they still apply assuming you have good physical security. The kit includes an sd card, and it is important to verify where the card has been, and in whose possession at all times. Only then, along with the software kit, can you be assured of authenticity.

http://www.canon.co.jp/imaging/osk/index.html

\$\endgroup\$
1
\$\begingroup\$

The inherent problem here is that if you have physical access to the device that can sign/decrypt the data, you can always break the security. So it is fundamentally impossible, while you can make it harder by using various tricks.

\$\endgroup\$
1
\$\begingroup\$

In general the software on most cameras does not support this, but in theory it is definitely possible. The camera could directly encrypt the image with a public key and since it can only be decrypted with the private key, that could be held only by whoever needs to verify the images. For more details on what is meant by public and private keys, look up RSA Encryption and/or read https://en.wikipedia.org/wiki/Public-key_cryptography for a general overview.

People that hacked the NX300 firmware were able to get very close to this (only downside was that the image was still being written to the card once before being encrypted and deleted, a deeper knowledge of the firmware could change avoid the initial write).
https://sites.google.com/site/nxcryptophotography/

I am not aware of any commercial camera supporting a feature like this from the factory.

If the image is still meant to be viewable, then invisible sorts of signatures can be used (look up "steganography"), but in general these can still be manipulated. Some forms might be altered by manipulation, so there is some potential to detect inauthentic versions.

Itai's answer does mention an attempt at verification that Canon and Nikon made, but doesn't go into the details, and neither did the links. In the case of Nikon:

"ElcomSoft research shows that image metadata and image data are processed independently with a SHA-1 hash function. There are two 160-bit hash values produced, which are later encrypted with a secret (private) key by using an asymmetric RSA-1024 algorithm to create a digital signature. Two 1024-bit (128-byte) signatures are stored in EXIF MakerNote tag 0x0097 (Color Balance).

During validation, Nikon Image Authentication Software calculates two SHA-1 hashes from the same data, and uses the public key to verify the signature by decrypting stored values and comparing the result with newly calculated hash values.

The ultimate vulnerability is that the private (should-be-secret) cryptographic key is handled inappropriately, and can be extracted from camera. After obtaining the private key, it is possible to generate a digital signature value for any image, thus forging the Image Authentication System." -- https://blog.elcomsoft.com/2011/04/nikon-image-authentication-system-compromised/

So they commit the cardinal sin of cryptography, the private key really should not be on the camera, or if it is, it needs to itself be encrypted in a way that prevents extraction. This is of course quite difficult, and the private keys should probably be created/distributed by a channel completely independent of the camera. The method above for the NX300 would only require the public key to be on the camera, but has it's own downsides, like not having previews on camera (the image is encrypted and with no private key it can't be decrypted on the camera). Of course the camera could keep both the encrypted and never-encrypted version, in which case the never-encrypted one can be considered a sort of preview of the official authentic image, which is strictly speaking never seen until authenticated by decryption with the private key.

In the court case scenario this would mean that these private keys would need to be held by the courts, not be those taking the photos or that might deal with them along the way. In the case of photojournalism the private keys could be held by the editors or by independent regulatory bodies. From a marketing standpoint these are a bit difficult to set up, since these individuals and institutions would need to learn how to create private/public key pairs and to distribute the public keys and how people are meant to load the public key to their camera, and people would need to be storing a bunch of encrypted photos they're never going to see as 'just in case' evidence. In the IT space this sort of thing is common enough though, e.g. there are many tutorials on setting up these kinds of keys for SSH.

Edit1: Changed to not say the private key is used on the camera, I think it is not but is just stored there.
Edit2: The hashing approach they use is space saving, but even without the private key it may be possible to make edits to the photo that conform with the hashes in some constrained way.

\$\endgroup\$
1
  • \$\begingroup\$ To add to your point, people have added digital signing to Canon cameras running CDHK/Magic Lantern. However, because those Canon cameras don't have crypto hardware, the functionality is purely a software implementation, so the signing is quite slow. But then the problem is managing the private key, which has to reside on the SD card (where the CHDK software also resides). So the camera shooter must be very careful not to share the memory card, else they are also sharing the signing key. Moral of the story... crypto is hard, and even harder to bolt on to a system that had no thoughts given it. \$\endgroup\$
    – scottbb
    May 18, 2021 at 21:24
0
\$\begingroup\$

If the camera signs the image, then you can prove that the image hasn't been altered since it was taken by that particular camera.

In many cases, we apply some post processing. And just using another RAW converter, such as Adobe Camera Raw or Capture One is also post processing in that respect. The file you distribute did not originate from the camera.

Another problem is that each camera would need it's own unique digital signature for this, a process that would make production more complex.

So a much more practical application is to sign it with a digital signature belonging to the photographer. Then anybody can verify that the picture originates from that photographer, and has not been tampered with.

Although I have a good knowledge on cryptographic signatures in general, I am not an expert in how to apply this to photographs, and standards that could apply. This paper however touches on that subject: http://people.csail.mit.edu/kimo/publications/jpeg/tifs11a.pdf

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.