How to identify a PC running Windows?
-
Hello, I'm about to sell my first Software at the end of the year. I created a licence file I give away for each customer. But how do I prevent them to use the licence on different computers. I thought about some routines for activating. But how do I get if the software is running on different machines? How do I identify a PC running Windows (2000 up). SID? see NewSID and many PCs have the same SID because they were installed with the same image Hostname? NT-Server, NTServer, Server, Server01 looks like a frequently used Hostname for Servers Local IP: 192.168.0.5 looks like a frequently used ip for Servers external IP: if dynamic.... MAC-Adress: can be easy changed Hardware Serial: must use WMI and DCOM and I have seen CPUs and Boards with a dummy Serial (1234567) Hardware Serial is my favorite. Or better get all and create a checksum for it What if somebody creates a virtual PC, installs the software and lets this VM run on severall PCs? Do you have something better to suggest? Thanks in advance Stefan
-
Hello, I'm about to sell my first Software at the end of the year. I created a licence file I give away for each customer. But how do I prevent them to use the licence on different computers. I thought about some routines for activating. But how do I get if the software is running on different machines? How do I identify a PC running Windows (2000 up). SID? see NewSID and many PCs have the same SID because they were installed with the same image Hostname? NT-Server, NTServer, Server, Server01 looks like a frequently used Hostname for Servers Local IP: 192.168.0.5 looks like a frequently used ip for Servers external IP: if dynamic.... MAC-Adress: can be easy changed Hardware Serial: must use WMI and DCOM and I have seen CPUs and Boards with a dummy Serial (1234567) Hardware Serial is my favorite. Or better get all and create a checksum for it What if somebody creates a virtual PC, installs the software and lets this VM run on severall PCs? Do you have something better to suggest? Thanks in advance Stefan
The answer to the question you ask isn't a simple one; from experience, I have found that there isn't really a way to completely protect yourself from people who pirate software. Sure, you can use activation codes, check OS's used, identify hostnames or whatever you like, but people who really want to pirate software will somehow get around it - think about commercial software from leading software developers such as Photoshop or Windows. People who want to get a pirated version of the software can get around it, for example by using keygens or reverse engineering the software so they can use it without paying for it. And if your pirated software protection methods mean that a genuine license holder can't use the legitimate software they've paid for, it can be rather annoying! My advice is to protect your software to an extent so it is not easily pirate-able, for example using activation codes, but don't go overboard about it - it will just make your valid customers more irritated. Regards, --Perspx
"The Blue Screen of Death, also known as The Blue Screen of Doom, the "Blue Screen of Fun", "Phatul Exception: The WRECKening" and "Windows Vista", is a multi award-winning game first developed in 1995 by Microsoft" - Uncyclopedia Introduction to Object-Oriented JavaScript
-
Hello, I'm about to sell my first Software at the end of the year. I created a licence file I give away for each customer. But how do I prevent them to use the licence on different computers. I thought about some routines for activating. But how do I get if the software is running on different machines? How do I identify a PC running Windows (2000 up). SID? see NewSID and many PCs have the same SID because they were installed with the same image Hostname? NT-Server, NTServer, Server, Server01 looks like a frequently used Hostname for Servers Local IP: 192.168.0.5 looks like a frequently used ip for Servers external IP: if dynamic.... MAC-Adress: can be easy changed Hardware Serial: must use WMI and DCOM and I have seen CPUs and Boards with a dummy Serial (1234567) Hardware Serial is my favorite. Or better get all and create a checksum for it What if somebody creates a virtual PC, installs the software and lets this VM run on severall PCs? Do you have something better to suggest? Thanks in advance Stefan
First, if they own it, who cares how many computers they use it on? Second, there is no reliable way to identify a given computer based on the installed hardware/software. I just went through the same discovery process. For what it's worth, running in a virtual machine simply exposes the guest OS. It does not change the underlying hardware signatures (I don't think). If your users buy the software, simply give them a registration key, and let them run it on any machine they want to. Less hassle for you, and less hassle for your users.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
The answer to the question you ask isn't a simple one; from experience, I have found that there isn't really a way to completely protect yourself from people who pirate software. Sure, you can use activation codes, check OS's used, identify hostnames or whatever you like, but people who really want to pirate software will somehow get around it - think about commercial software from leading software developers such as Photoshop or Windows. People who want to get a pirated version of the software can get around it, for example by using keygens or reverse engineering the software so they can use it without paying for it. And if your pirated software protection methods mean that a genuine license holder can't use the legitimate software they've paid for, it can be rather annoying! My advice is to protect your software to an extent so it is not easily pirate-able, for example using activation codes, but don't go overboard about it - it will just make your valid customers more irritated. Regards, --Perspx
"The Blue Screen of Death, also known as The Blue Screen of Doom, the "Blue Screen of Fun", "Phatul Exception: The WRECKening" and "Windows Vista", is a multi award-winning game first developed in 1995 by Microsoft" - Uncyclopedia Introduction to Object-Oriented JavaScript
Hi there, I came to the same result. I'll use a mixture from hostname and SID. If its easy I'll use CPU and Mainboard serial. If not... not :-) Thanks Stefan
-
First, if they own it, who cares how many computers they use it on? Second, there is no reliable way to identify a given computer based on the installed hardware/software. I just went through the same discovery process. For what it's worth, running in a virtual machine simply exposes the guest OS. It does not change the underlying hardware signatures (I don't think). If your users buy the software, simply give them a registration key, and let them run it on any machine they want to. Less hassle for you, and less hassle for your users.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001Hi there, I came to the same result. I'll use a mixture from hostname and SID. If its easy I'll use CPU and Mainboard serial. If not... not :-) >If your users buy the software, simply give them a registration key, and let them run it on any machine they want to. Less hassle for you, and less hassle for your users. the licence depends on the number of users and servers. So I would like to get the extra money. Thanks Stefan
-
Hi there, I came to the same result. I'll use a mixture from hostname and SID. If its easy I'll use CPU and Mainboard serial. If not... not :-) >If your users buy the software, simply give them a registration key, and let them run it on any machine they want to. Less hassle for you, and less hassle for your users. the licence depends on the number of users and servers. So I would like to get the extra money. Thanks Stefan
StefanKittel wrote:
I'll use a mixture from hostname and SID.
The hostname can be changed without rebooting the system. I don't know what an SID is, or how it's obtained. There's no such thing as a CPU serial number, and the CPU ID is nothing more than a list of features expressed in a hex string. Two machines with the same CPU would give you back the same CPU ID. Not all motherboards expose a serial number. Further, not all BIOS's expose one either, especially if they've been updated. Believe me - you're wasting your time.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001