Patchwork Algorithm
Works on the assumption that the given image has 255 levels of
grayness.
Assumes that all brighness levels are equally likely.
Watermark insertion uses a secret key to seed a pseudo-random
process that choses pairs of pixels.
For each pair of pixels, the brighness level of one of them is
subtracted by a small constant, say k, while this is added to the
brighness level of the other pixel. This is done a number of times
(typically around 10000).
Watermark extraction requires the same secret key used in insertion.