Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Set Java Application for only one Computer System

I am working on a project and I want my application to be run on only one system!
All I want is that when I deliever my project to one particular and he can not be able to copy my project and can run on any other computer system. I am working on Java 8 IDE(NetBeans).

Thanks

like image 591
Rafi Abro Avatar asked Sep 14 '14 16:09

Rafi Abro


2 Answers

if you need an offline solution you can use any of these features

Get hardware details

but always the best answer is to keep part of the application inside your own server , when installing the application you can complete it only for this particular this machine .

Two Ways

Way No.1

  • build your own Web service which completes your applications functionalities , and when the application uses this web service ,you need to make sure this is the same machine (by the IP , mac address , )

Way No.2

  • when installing collect the hardware information & send it to your server to save it there.
  • then when using any offline feature you need to request from the server the permission to do so , by regenerating the machine information

put in your mind that someone can reverse engineering your code , so I prefer always the first way

like image 114
Ayman Avatar answered Sep 24 '22 05:09

Ayman


You can ask client for his MAC address and include it in your code then using java code obtain the MAC address of the computer the executes it and then compare the same to the client's MAC initially stored in your program. In case of mismatch code for the program termination of your program. You can find the code for retrieving the MAC id from the following example Get MAC Address of System in Java

like image 40
OshoParth Avatar answered Sep 23 '22 05:09

OshoParth