Umm... If I don't use the correct phrases here I apologise. If your PCs are obtaining an IP address from a DHCP server and the leases are set to last 24hours, then you could in theory use the IP address. That would kind of rely on the PC being restarted on a regular basis so wouldn't be much good if you want to run from a server-side application. The question does beg to be asked, why not the date?
Depends how much change you can tolerate - will the original data be checked after they code is generated to ensure it's the same PC? The Microsoft approach is to check many variables but allow a couple of changes. (Network cards can die after all, and any competent IT admin will have a stack of spares. They can fix the hardware in minutes but is it going to take them days to extract a new software key from you when the MAC address changes?)
Number of processors, CPU speed and vendor ID, memory size, hard disk size and vendor ID, vendor ID and product ID from all installed PCI cards, OS version... IP address as well as MAC for non-DHCP machines.
Verifying PC identity is hard, and tends to compromise end-users' disaster recovery plans.
If you want timed expiry, how do you cope with users setting the clock back? (Solutions tend to involve storing usage and expiry status in hidden files in obscure places. Easily hackable but provides an extra hurdle which may stop non-experts.)
no subject
Date: 2003-09-23 04:04 am (UTC)If your PCs are obtaining an IP address from a DHCP server and the leases are set to last 24hours, then you could in theory use the IP address. That would kind of rely on the PC being restarted on a regular basis so wouldn't be much good if you want to run from a server-side application.
The question does beg to be asked, why not the date?
no subject
Date: 2003-09-23 04:08 am (UTC)Number of processors, CPU speed and vendor ID, memory size, hard disk size and vendor ID, vendor ID and product ID from all installed PCI cards, OS version... IP address as well as MAC for non-DHCP machines.
Verifying PC identity is hard, and tends to compromise end-users' disaster recovery plans.
If you want timed expiry, how do you cope with users setting the clock back? (Solutions tend to involve storing usage and expiry status in hidden files in obscure places. Easily hackable but provides an extra hurdle which may stop non-experts.)
no subject
Date: 2003-09-23 04:14 am (UTC)