По опыту работы с сайтами предлагаю использовать "связку данных закрытого ключа" своеобразная защита, если в скрипте будет авторизация и на одном ПК будут юзать 2 профиля, все равно будет у каждого свой ключ.
Суть: берешь набор разных данных, связываешь как тебе угодно, хоть по порядку, и это твоя уникальность.
Пример: серийник ПК + собираешь 5-6 позиций курсора + размер дисплея + мак адаптера и т.п.
Собираешь все это в одну (или несколько) переменную - уникальность.
Авторизация, классическая, в скрипте не обязательно, хотя не понимаю почему бы и нет...
P.S. Не настаиваю что ответ верный, может вам не для этого нужна привязка скрипта, но если работать с запросами в бд, это лучший, как по мне, способ защиты