This is too much work for something that doesn't matter.
Everyone will end up with the same resulting puzzle.
In that case, just have a copy of the original image they can save.
That's it.
Or, if the puzzle really is generated dynamically, just save it as a jpg before slicing it up for them.
And, the only other thing you'd need is a script verifying that they have successfully completed the puzzle.
And you're done.
Easy, right?
