Hy yamakozz!

I think you should do the following: add the download urls to post meta (if you use wordpress) then create a function, which will show a captcha instead of the download links. If someone writes in the captcha, you set a session/cookie for that user for a few minutes, hours, so he can download the urls without entering the captcha again.
Of course this can work in any system, not just wordpress, the most important thing is to save the download urls in a standalone mysql table/column, so you can hide them easily with a php function.