4 ms·
Pretty neat idea! Being able to highlight exactly which areas of a photo were modified is much better than an image-wide "pass/fail." Sadly the "doesn't surviv
by nemo1618 6y ago
Pretty neat idea! Being able to highlight exactly which areas of a photo were modified is much better than an image-wide "pass/fail."
Sadly the "doesn't survive compression/re-encoding" problem is kind of a show-stopper. I think steganography still has some important usecases, like covertly sending messages, but I don't think it's practical for "watermarking" images that are expected to be widely distributed.
btw, I noticed that the Merkle tree package you're using doesn't use a distinguisher bit in its node hashes: https://github.com/cbergoon/merkletree/blob/master/merkle_tree.go#L74 https://github.com/cbergoon/merkletree/blob/master/merkle_tr...
This can be a security issue in some contexts, since it means you can construct a leaf and a pair of nodes that have the same hash.
- dennis-tra 6y agoThanks for your comment! > Sadly the "doesn't survive compression/re-encoding" problem is kind of a show-stopper Indeed, that’s true - fortunately there are already ways to at least limit the problem. There is some research under the umbrella of “robust JPEG steganography” which aims to persist the covert message among compression. But I don’t know how well this actually works. LSB steganography was just the most straight forward way for me to implement. Thanks for pointing out the security issue - I certainly wouldn’t have noticed it!