Yes, this is another challenge that I ran into which I consider well suited for an interview.
- It is short
- It doesn't require specific knowledge
- There are a lot of ways of solving that
- I can give the develop access to Google and the test is still valid
The test itself is very simple:
- Detect if another instance of the application is running on the network which is registered to the same user
- It doesn't have to be hack proof, and it doesn't have to be 100% complete. The purpose it to stop casual copying, not serious hackers.
- A great example of the feature in action is R# detecting that two users are using the same license at the same time.
Oh, and for real world scenarios, use a licensing framework instead of rolling your own.