Not sure if this is kosher but seems to work, file size is the same from one on disk uploaded to CMS and then downloaded again this way. Only tested on FF3.5/OSX. Would be interested in improvements. Use at your own risk.

Rough idea, it's late.

function PhotoDownload() {
$id = Director::urlParam('ID');
if ($id) {

//INSERT SECURITY CODE HERE SO THEY CAN'T HACK THE URL ID FOR DIFFERENT FILES