ExifTool Forum

ExifTool => Archives => Topic started by: Archive on May 12, 2010, 08:54:44 AM

Title: how is imageUniqueID generated?
Post by: Archive on May 12, 2010, 08:54:44 AM
[Originally posted by mstenner on 2010-01-12 07:20:09.197385-08]

I realize this is slightly off-topic, but y'all seem like the experts on this.

I need to figure out how the imageUniqueID is generated for Canon cameras.  It seems like the first 4 bytes or so change "rapidly" and the rest change slowly or not at all.  I'd appreciate any information or pointers to other places to look or ask.

I saw the comment in the code which includes the parenthetical "encrypted" and also a reference to "JD".  Is JD a person or a document?  Does "encrypted" really mean encrypted?  Or more like hashed?

Thanks for any help.

-Michael
Title: Re: how is imageUniqueID generated?
Post by: Archive on May 12, 2010, 08:54:44 AM
[Originally posted by exiftool on 2010-01-12 08:23:32.794518-08]

Hi Michael,

JD = Jens Duttke.  He did some investigating which suggests that
the first 6 bytes of Canon's ImageUniqueID is composed of an
encrypted sequence number and date/time.  Encrypted here means
that the binary values have probably been xor-ed with some random
key (which we haven't yet figured out).  Jens also theorized that
the remaining 10 bytes could be the encrypted camera serial number,
which would make sense but this is just a guess.

- Phil