Existe un scripts que haga lo siguiente o algo similar.
Lo explico con un ejemplo en plan broma.
Señor A:

Señor B:

Desarrollo:
El señor A Quiere dominar el mundo y el manual que necestia se lo ofrece el señor B en su pagina web.
El señor A se quiere descargar el manual en formato pdf de la pagina del señor A para poder imprimirlo.
El señor A cuando accede a la zona de descarga de la pagina web del señor B no se puede descargar el manual, le sale el siguiente mensaje "Para poder descargarte el manual de como conquistar el mundo debes introducir un numero de descarga valido, para obtener un numero de descarga valido debes visitar la pagina obtener numero de descarga valido y pulsar el boton que pone (Obtener numero valido de Descarga)".
El señor A visita la pagina obtener numero de descarga valido, y pulsa el boton, seguidamente le facilita el numero de descarga valido, por ejemplo el numero 765678.
El señor A accede de nuevo a la zona de descarga y introduce el numero de descarga 765678, una vez introducido se procede a la descarga del manual.
Mas o menos esta es la idea.
1.- Script que genere un codigo de descarga valido, ese codigo que se ha generado que lo almacene en una base de Datos, cuando se introduzca el codigo para obtener la descarga, el script debe de comprobar que el numero que se ha introducido coincide con el numero que esta en la base de datos, si el numero coincide que se produzca la descarga, por el contrario si no existe que no se produzca la descarga.
Un saludo, muchas gracias.