Hello there, how are you? :)
I already did something similar in the past using nginx secure link module, and I have an example PHP script to generate the secure link based on url request + user IP. You can also add a time variable, so the link will expire after X minutes/hours/days.
Leave me a message and I will prepare a testing environment so you can check it working before accepting the bid.