Идея не новая, и вполне ломаема при приведенной тобой реализации.
А по теме: практически невозможно создать программу которая была бы защищена от копирования и запуска на другой машине. (разве что от обывателей, но и они с каждым годом становяться умнее или ущут в инете готовые кряки)
О предложенном Akzes -ом методе:
1. Если он шифрует значение переменной(любые постоянные данные системы: предложенный номер винта и т.п.),то соответсвенно он должен где-то брать ключ,и соответсвенно защита нулевая.
2. Еси он берет хеш переменной, тогда другое дело, но никто не мешает немного изменить его программу и перед той строкой, где прога берет хеш переменной, полученный результат изменить на тот который позволит дальше пользоваться программой.