Asymetrical encryption may be your friend here, ie PGP or it's ilk.
On first run the script generates the key pair, possibly using system information.
The public key is sent to you and you encrypt a file with it and send that file back to user.
The user then installs that file. The code sees the file and attempts to decrypt it with the private key gen'd on first run. If it can read the file then all is well and run continues.
I think that keys can also be given expiry dates in some mechanisms.