?
Solved

Sharing an application over the network

Posted on 2013-06-28
3
Medium Priority
?
190 Views
Last Modified: 2013-10-08
Hi Everyone,

Please I have an application that require a dongle license to work. Now i want someone else from the same organisation that sit in a seperate building to have access to the application without having full access to the system desktop. So that when the application is launched from the remote client, it connect to the server resources (license etc)
0
Comment
Question by:charlojede
3 Comments
 
LVL 12

Accepted Solution

by:
Richard Davis earned 1500 total points
ID: 39284367
Unless the software was developed to support being used in an application server environment, you are not likely to be able to achieve this. The main reason is that the dongle is a physical piece of hardware that the software uses to validate usage of the package. Of which, any execution of that software over network resources would imply that the client system also contains that dongle as the software is most likely programmed to look ONLY on the localhost for the existence of that dongle.

~AB
0
 
LVL 35

Expert Comment

by:gr8gonzo
ID: 39284568
I agree with AB - it's very unlikely to work. The entire idea behind a license is to ensure that a single entity is -licensed-  to do something, and dongles are an even more secure way to ensure this.

That said, there's (usually) no harm in checking. Some dongles operate differently. PHP is likely the wrong language to determine or work with this, though. A dongle is usually either based on USB or a COM port (RS-232), and a language like C++ or .NET would be more likely to have a chance at interacting with the device.

Many dongle devices work by having the software look at a snapshot of the local machine's physical attributes (hard drive serial numbers, for example), creating a "challenge" and sending the challenge to an API located on the dongle device itself. The dongle knows how to respond to the challenge, so it creates the proper response and sends it back to the software. The software validates the response against the current machine specs and says, "OK, it looks like the dongle is plugged into the current machine, so you're licensed to use the software."

So the only way to really work around that design is to create a virtual USB device (a program, not a piece of hardware) that pretends to have the API of the real dongle. It needs to mimic the dongle in every way so that the software knows where to send the challenge. Once the virtual USB device receives the challenge, it passes the data over the network to a receiver application which passes the challenge onto the real dongle, then captures the response, passes it BACK to the virtual device, which can pass it back to the software.

You can probably guess that while this might be technically feasible, it's a monstrous effort. At that point, you have to ask yourself, "Is it really worth the time and money investment versus just purchasing another dongle?"
0
 
LVL 21
ID: 39285581
The point of a dongle is to prevent what you are trying to do.

Usually when you have a dingle, you can install the software on multiple computers. You can run the software on the machine with the dongle plugged in to make it work.  When the other person need to use it, you would give them the dongle.

If you find you are having to swap the dongle between users a lot then it is probably time to purchase another one.

If I were going to attempt what you ask, I would ask the software vendor if it is even possible. I would also be  sure it would not violate your license agreement.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.   (CODE) (CODE) Then you just need to pass your date to the function. If i…
There are times when I have encountered the need to decompress a response from a PHP request. This is how it's done, but you must have control of the request and you can set the Accept-Encoding header.
The viewer will learn how to count occurrences of each item in an array.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
Suggested Courses
Course of the Month17 days, 4 hours left to enroll

862 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question