views:

96

answers:

2

Hi all

I'm looking for a way to detect multiple usages of a piece of desktop software, without them necessarily being online at the time. An online solution could be to log the IP/MAC address and licence key on each start up and detect changes to the IP/MAC address.

But if the users of the software are on a local intranet that's not necessarily online, does anyone have any suggestions? I remember sharing a Dreamweaver licence many years ago and it detecting other users on the local network upon start up; something similar would be great.

Cheers, Marc

+1  A: 

One way would be to broadcast a "report usage of this license number XYZ back to me please", on the network which would have your app, running on other machines, report back that "hey, I'm using that license as well".

Easily circumventable though by just making your app not able to get data through the local firewall, but should be effective enough.

Lasse V. Karlsen
Can you give me some google terms to search for? Would it be a netsend type broadcast message?I understand the limitations of course - removing the network cable when starting up the software would skip the check.
Marc
Well, not "netsend", but a similar broadcast message, sure. UDP would be handy here, just dump a UDP broadcast packet on your network and count the number of replies.
Lasse V. Karlsen
Thanks so much, looks just right.
Marc
A: 

I have an idea.

A software with Id, say, 1039, "calls home" and "says":
"I know a magic number: 9, give me the next one".
The server replies:
"Good. Next one is -7".

On the next occasion when the software calls home, the server already knows that the magic number is going to be -7.

In case you have two copies of the same software, second copy won't know the magic number given to the previous one. So, you can decide on some actions.

I do not know whether is it legal to do so, however (... privacy laws)

modosansreves
Although a good idea, alas my software in particular is only occasionally connected to the internet, so it's not always able to call home.We can always get around privacy laws through the EULA, since they've already granted permission to send usage statistics as part of the EULA.
Marc
For this solution is it ok to be rarely connected. The matter is there is one Magic number per Id on the server. Two copies will always get different Magic numbers; obviously, even when the second copy connects a month later than the first one.
modosansreves