Como validar meu software na máquina do cliente?

22 respostas
T

Olá pessoal, estou iniciando uma startup de desenvolvimento de software e já tenho um cliente, até aí tudo bem. Tenho uma boa equipe e somos capazes de desenvolver facilmente esse sistema.
Porém, gostaria de saber como validar meu software na máquina do cliente? Como expirar a licença de utilização de uma forma segura, que o cliente não possa burlar (ou o mais próximo disso)?
Já pensei em várias formas, desde utilizar a data da máquina (a mais fácil de se burlar), até realizar uma autenticação online, porém, gostaria de permitir também o uso do sistema de forma offline, o que me sugerem?

22 Respostas

A

Acho que você deveria criar no seu banco de dados uma especie de log ou seja ao logar no sistema ele salva no bd o usuario que logou a data e a hora ai se voce ver la uma data estranha foi burlado e vc mostra e converssa com seu cliente sobre… afinal que não é burlado atualmente… fika a dica se burlarem pelo menos você vai saber hehe …

T

@Alancarloscesar Opa, obrigado pela resposta, mas é bem mais complexo que isso. Como meu software funciona offline, essa questão de pegar qual foi o usuário não faz muito sentido pois não terei acesso ao banco, é offline.

M

Depende o que o sistema faz, se tiver emissão de notas etc… pode manter o com a data, pois se eles voltarem a data tudo sera cadastrado/gerado com data errada… assim mesmo que ele não pague ele pode continuar usando para pesquisar etc…(já que os dados são de direito dele). Com isso evita a confusão também, de o sistema ter sido “bloqueado”, o que se não estiver bem especificado pode dar problemas e eles falarem mal de sua startup para outros possíveis futuros clientes.

T

Não, meu sistema não tem emissão de notas. Foi mal pela demora, fiquei meio incomunicável esses dias. Cara, não gostaria de validar meu software baseado no princípio que caso seja burlado o sistema faça algo errado.

T

@montero Tive inclusive, uma ideia de validação esses dias. Vejamos se há uma falha nela, pois se há, eu ainda não identifiquei. Validaria meu sistema utilizando a data (sim, a data) da máquina do cliente e salvaria ela (a data da instalação - que será feita pessoalmente por mim, assim posso verificar a autenticidade da data) em meu DB que é totalmente criptografado. Passado determinado período de tempo (o que o sistema iria saber verificando a data atual) seria necessário uma serial key somente fornecida por mim, para que o sistema tornasse a funcionar, o que acham? (quanto a questão de isso ser chato para o cliente, isso não importa, pelo menos com esse cliente).

M

E o que aconteceria se ele voltar a data do windows?

T

Todo dia o sistema pega a data do SO, e, caso ela seja menor que a última armazenada, o sistema não iniciará. Então, voltar a data não seria uma opção muito boa.

P

Um dia que por algum motivo ele altere a data para o futuro, nem que seja por engano o teu sistema deixa de funcionar se ele repuser a data correta.

M

O problema é que o cliente tem direito a consultar os dados dele, mesmo que ele não possa mais utilizar o sistema, acho que a saida que te dei seria a melhor. porem se teu sistema não depende de data fica complicado…

M

Desculpa o mencionamento, errei ao mencionar kkkk

T

@pmlm, Na verdade não. Caso ele altere a data para o futuro, estará apenas perdendo dias de licença, já que o sistema tem uma data de validade. O meu sistema simplesmente terá um intervalo de datas em que permitirá ser utilizado, isso dentro do meu BD, caso a data atual não esteja entre o início e o fim, já era. Ah, e eu também faço validação na minha empresa, para que, caso o usuário altere a data para depois de um período válido e tente retornar, isso seja possível entrando em contato com o suporte da empresa. Até aqui minha validação continua inquebrável (a não ser que o usuário consiga alterar o BD, mas, desconsideremos essa hipótese, porquê se ele realmente conseguir, ele merece).

T

@montero, Quanto a isso, não há com que se preocupar. O meu sistema irá iniciar normalmente, mas com uma mensagem pedindo para contatar o suporte e com todas as operações de adição, geração de novos arquivos, e demais, travadas. O cliente poderá ver o que tem cadastrado, mas não poderá cadastrar.

P

Ou seja, a maneira de burlar o teu sistema é nunca sair do intervalo de datas definido.

T

@pmlm Meu sistema não permitirá que a data seja igual ou inferior a última data de acesso, caso seja, apresentará a mensagem pedindo pra contatar o suporte. Sendo assim, o usuário só poderá avançar no tempo, e, quando o intervalo de datas acabar, já era.

P

Se isso é um produto para vender para vários clientes, tens de ter uma boa equipa de suporte para resolver o problema, já que vai acontecer muitas vezes. E como resolves? Dás instruções de como fazer (e para a próxima eles já sabem) ou tens de te deslocar ao local (impensavel com os custos que vai trazer)?

Se é um software à medida para um cliente nem sequer faz sentido pensar em licenciamente, o cliente paga para ter uma solução “vitalícia”, pagando depois melhorias ou alterações de funcionalidades.

T

É um software desenvolvido especificamente para um cliente. Não, o cliente não paga por uma licença vitalícia, o modelo contratual definido não foi esse, caso fosse, o valor seria bem maior do que o acertado. Isso foi uma preferência do cliente né, enfim…A questão da validação é para que o software não se espalhe tlgd? Não quero que quem não pagou venha a usar. Embora seja um software desenvolvido “sob medida”, ele é bem genérico nas manipulações financeiras, o que poderia despertar o interesse de outros.

M

E se o cliente simplesmente, deslogar e logar novamente no mesmo dia, coisa do tipo reiniciou o computador? Simplesmente não pode mais usar o sistema pela data ser igual a do ultimo acesso?

T

Poderá sim, quando digo data, falo na verdade data, hora e minuto…

I

Tá certo que poucos trabalham entre as 23h e 0h, mas caso seja, com esse algoritimo, pode bugar na troca de horário de verão

T

Ele tem uma margem de tolerância de variação de até 2 horas, para mais ou para menos.

E

Faz assim. Se não é para ser copiados por outros gera uma chave criptografada de preferencia levando em conta o hardware da maquina, serial de HD, MAC, etc… Se o cliente trocar de máquina ele entra em contato com a empresa e pede outra chave.

T

Não dá muito certo, cara. Todos esses endereços podem ser alterados facilmente, esse tipo de validação já é o que a galera não recomenda nos fóruns, mas valeu!

Criado 10 de março de 2016
Ultima resposta 24 de mar. de 2016
Respostas 22
Participantes 6