Como proteger meu aplicativo contra pirataria

Duplicar Possível:
Como são geradas as chaves de licença de software?

Eu sou um iniciante em desenvolvimento de software e gostaria de saber como implementar um sistema de proteção no meu aplicativo Java para protegê-lo contra a pirataria. Eu sei que não há solução perfeita. Mas eu só quero saber como protegê-lo. E não me diga para torná-lo código aberto, é impossível no meu caso :).

Obrigado pelo seu tempo e respostas.

Como qualquer solução de imposição de licença pode ser quebrada com um pouco de esforço, sugiro que você não tente implementar a proteção contra cópia. O gerenciamento de licenças é apenas inconveniente para seus usuários.

Se você estiver determinado a implementar proteção contra cópia, poderá usar uma biblioteca de código aberto.

Além disso, você deve ofuscar seu código de byte para dificultar um pouco a engenharia reversa de seu aplicativo.

Eu considerei isso há alguns anos. Por fim, decidi não licenciá-lo; Eu dei de graça, mas acho que minha melhor ideia foi:

Envie-lhes um arquivo de licença contendo uma chave. Nomeie o arquivo com seu nome completo e endereço de e-mail, ou algo igualmente pessoal, e certifique-se de que renomá-lo invalidará a chave. Isso deve ser simples de conseguir. Existem muitas técnicas que você pode usar que não exigem o armazenamento da chave em seu aplicativo.

Como qualquer sistema, isso não é indiscutível, mas, como me foi explicado há muitos anos, a segurança é para manter as pessoas honestas honestas.