Zen Cart is another half decent cart for downloads, however I think http://www.e-junkie.com/ is excellent value for money which has the advantage of only having a few steps to purchase the downloads. Brew
I don't know of any free ones, and I've never coded one, but I have coded "Secure" images. The full size image sent to a browser was automatically watermarked and displayed via a php script. The image itself was in a higher directory than my www directory, so the raw images were unavailable via urlk. For example: \apache\mypics\ <-Pic folder \apache\www\ <-web folder <img src="showpic.php?pid=123456" /> Code (markup): This script would then go up a level in the directory path and grab the image for watermarking before serving it to the web browser. You could fairly easily create a script that would be the return path for a paypal button, and that script would validate the token and serve up a the file.