3 ms·
Seems like false advertising to even call it a "hash" at this point? If meaningful data can be regained, it ain't a hash.
by jrm4 5y ago
Seems like false advertising to even call it a "hash" at this point? If meaningful data can be regained, it ain't a hash.
- dpark 5y agoIrreversibility is not what defines a general hash function. It’s a critical characteristic for cryptographic hashes, but I serially doubt anyone knowledgeable ever described PhotoDNA as a cryptographic hash function.
- kmeisthax 5y agoYes and no. If you are thinking about cryptographically-secure hashes, then you're correct. However, not all hashes are intended to be cryptographically secure; this particular kind of hash is called a perceptual hash. Perceptual hashes are specifically intended to be able to identify slightly-modified images; and for that purpose we can't have all of the cryptographic security of, say, SHA-256. The third type of hashing is the dirt-simple hashing schemes you see used in hash tables; although even there denial-of-service resistance is still a desired property for public-facing web services.
- konschubert 5y agoYea, a "hash" should be maximally non-continuous: Minimal input changes should change the output as much as big input changes.
- nostoc 5y agoA cryptographic hash definitely should, but there are many more use cases for hashes. You want SHA to be maximally non-continuous, but you certainly want the opposite for ssdeep for instance.