After thinking about it, I'm not sure we actually need this unique identifier.  Instead, isn't it sufficient to just compare text, image, and link for equality?