Solved

Sharing an application over the network

Posted on 2013-06-28
3
181 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 12

Accepted Solution

by:
adrian_brooks earned 500 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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
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…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
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…

695 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