Jump to content

Recommended Posts

Posted

Boas,

Estou nestes dias de volta do controlo de licenças do software que a minha empresa está a comercializar, para substituir o antigo, que era o uso de HASP keys nos pc's com o software. Funcionou muito bem mas é dispendioso.

Que táticas costumam usar?

Posted

Podes usar o sistema "Windows":

O software gera um código a partir de dados da licença e da propria instalação e PC, e fica à espera de um código de validação, que serás tu a criar com uma qualquer chave privada aplicada ao código inicial.

Depois o programa valida se ao desencriptar (com a mesma chave) o resultado é igual ao código que ele proprio gerou.

Em alternativa, podes usar um "ficheiro de licença" que incluirá os dados da empresa que o usa e um código, e o programa depois irá fazer a descodificação e comparar aos restantes dados do ficheiro de licença.

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

Sim, mas normalmente um sistema desses implica que o teu codigo tenha algo como

 
if validaLicença then
//faz isto
Else
// dá erro

E isso é facil de contornar por alguem que aceda ao assembly do exe.

Eu sei que provavelmente nunca ninguem vai tentar isso, mas mesmo assim vou tentar evitar.

Vou trabalhar mais um pouco sobre uma ideia que tenho e depois posto aqui se nao for muito má ^^

Posted

Eu sei que provavelmente nunca ninguem vai tentar isso, mas mesmo assim vou tentar evitar.

É um pensamento feliz 😄

Concordo que tentes evitar o cracking do teu programa pelo melhor sistema possível. Nunca se sabe em que mãos o programa vai passar.

Knowledge is free!

Posted

Isso é verdade, há sempre a possibilidade de alguém ter o conhecimento suficiente para piratear a licença. No entanto convém não esquecer que a solução tem sempre de existir no programa (de outro modo, não vejo como ele poderia validar a licença) pelo que, de forma mais simples ou mais dificil, será sempre possível o acto ilegal.

Posto isto, podemos sempre tentar analisar a melhor maneira de dificultar a vida aos piratas.

Não amadureci as ideias, mas jogo-as para a mesa...

- Licença online (requer internet no servidor do programa)

- Dados da empresa no código da licença (alterando o código, os dados alteravam, fazendo com que o programa trabalhasse mas sob um nome/NIF errado, tornando-o inutil)

- Uma Hash dinâmica que fosse variando conforme a data, por exemplo. (a ideia seria, mesmo que descobrissem a chave, no dia seguinte tinham de a descobrir novamente: não impede que alguém com conhecimento pirateie não a chave, mas o programa, de forma a nem a pedir sequer).

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

Sim mas nao acredito que esses 'grandes' se esforçem realmente para proteger a 100% os softwares... Nao acredito nem por um segundo que a Microsoft queira o Windows 100% seguro, por exemplo... Perdiam o mercado em 3 tempos.

Estive durante o dia a tentar uma soluçao por servidor web assim com umas proteçoes maradas mas acabei por voltar ao mais simples... 😛 Os prazos assim obrigam ^^

A minha ideia inicial era deixar de chamar algumas funçoes pelo método habitual, mas sim guardar o seu nome numa string encriptada que tinha de ser desencriptada pelo WebService.

Tendo o nome da funçao na string, chamava a funçao que lá estava dentro. Não sei se me faço entender 😛 Era complicado crackar já que nem alguem vendo o codigo percebia qual o nome da funçao que tinha de ser chamada naquela momento...

Posted

É uma maneira... Tens tempo para isso? 😉

Mas e o que fazias se, por exemplo, não houvesse net?

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

lol tá boa

Mas aí tens outro problema. Se o nome da função é dada por webservice, para poderes ter o trial de 5 dias tens de poder, de alguma forma, saber dentro do programa qual a função a chamar.

Mas para isso, o nome tem de lá estar! Como farias isso?

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

Já sabia que ias reparar nisso ^^ Podia guardar o que veio do ultimo WS com sucesso enquanto nao se retomasse a ligaçao

Numa fábrica com computadores ligados à internet se aquilo falhar de certeza que o resolvem em menos tempo que 5 dias...

Posted

heheheh Mania que os tecnicos/programadores têm de procurar os problemas, antes de começarem a procurar as soluções... Ou serei só eu? hehehe

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

🙂 Imaginei que sim...

Conheço uma pessoa que diz que os tecnicos em vez de procurarem soluções, procuram defeitos.

Mas como procurar uma solução a sério sem antes identificar todos os defeitos? :|

Como é que vais variando o nome da função? Data?

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Posted

Hehehe sem duvida

"Vou crackar isto...

Yesss! Mais um!"

Um dia depois...

"Olha, não trabalha.

Tem graça, tinha a ideia de já ter crackado isto, mas parece que não.

Mãos à obra...

Já está! Eu sou bom!"

Um dia depois...

"Aaarrggghhhhhh"

E assim, a pouco e pouco, se resolve o problema da pirataria...

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.