That’s the other possible approach, using the pixels to store data. That will also entirely break if the image is resized or re-encoded so that the quality is lowered.
Edit: the first approach I mentioned here: Release planning for 0.5.9 (and 0.5.8.1) - #16 by hhyyrylainen