Impedir programa de rodar em outro computador

Colegas, bom dia!

Estou a terminar um programa DESKTOP e gostaria de saber de vcs se existe alguma forma de impedir o programa de ser instalado ou de rodar em uma máquina diferente da que eu estou instalando.

O que estou querendo impedir é que alguém pegue os arquivos do aplicativo (o .jar com o banco) e leve pra outro computador e rode lá sem a minha permissão.

Se vcs já implementaram algo neste sentido, por favor postem aqui!

(A ideia seria: eu sei que cada computador tem um endereço único, agora como verificá-lo é que ainda não fiz… Pego o endereçamento do computador que estou instalando, salvo no banco na primeira vez que estiver rodando…Dai toda vez que o main rodar ele vai ao banco e consulta pra ver se o endereço único bate. se não bater não roda… se bater roda…)

Vlw!

Como pegar o endereço MAC

Serial do Hard Drive
http://javafree.uol.com.br/artigo/874075/JNI-Utilizando-uma-API-para-recuperar-o-serial-do-Hard-Drive.html

Não é melhor usar autenticação do usuário?

eu lembro de um programa de terceiros aqui na empresa

que fazia isso “escondido” pelo dia…

eu tive que instalar em outra maquina e usei o serial e nao funcionou…voltei a data no dia da primeira instalação e funcionou hahaha

se eu fosse fazer eu faria ativação online… estilo Adobe

o cara entra com Nome de usuario, Empresa, E-mail, outros dados…

seu programa junta tudo isso e cria um serial com base nas informações…e envia online…caso ja tenha sido utilizado este serial, aparece para o usuário o E-mail e telefone do suporte(SandroSoftwares)

ai você fala com eles hehe…

eu lembro de ter visto uma maneira que criava-se um arquivo na pasta windows senão me engano, algo assim… mais nao me recordo agora…

Rapaz . eu penso que voce podeira usar a Ideia de “Certificado Digital” . para sua aplicação , tipo o do OpenVpn, que mesmos depois d formatar a maquina o mesmo Certificado nao Funciona …
fica a ideia

pega o id do processador e do hd, faz algum algoritimo com ele. fica malaco!

Estou implementando um sistema desktop tambem, para solucionar o problema, tentei varias coisas, inclusive o endereço mac, hd, processador. Infelizmente nenhum atendeu a minha expectativa. Entao minha solução foia seguinte.

  • Coloquei dentro do proprio codigo um serial unico para o cliente e um serial para mim.

Para o cliente instalar maquinas “Clientes”, ele precisa apenas do serial dele, porem para instalar em servidor, precisa alem do serial dele, tambem precisa do meu serial, que no meu caso coloquei dentro do pen drive criptografado, quando plugo o pen drive, ele automaticamente reconhece o a sequencia criptografada e autentica no sistema. Com isso, caso o usuario queira instalar o programa como “Servidor” em outra maquina ele vai precisar do meu serial, sendo assim, tera que me comunicar, de quebra, se o cliente tentar instalar e nao souber o meu serial, eu mando o numero do meu telefone, kkkk, Propaganda ne.

  • Essa talvez, nao foi uma solução muito boa, porem, foi a que melhor me atendeu.

vi um post aki msm no guj onde o pessoal discutiu amplamente esse assunto e pelo q sei naum há como impedir, se o malandro quiser mesmo roubar seu programa irá fazê-lo sem vc saber…

isso se o cara for bem experiente, mas na maioria dos casos eh so pra evitar o abelhudo do sobrindo do cara fique copiando.

Gente…

Realmente pelo que vi hoje, não tem como se proteger 100% mas o que pudermos fazer para reduzir essas coisas faremos…

consegui capturar o mac address com o código exposto aqui:

Grato a todos!