DLL PARA AVALIACAO, LIMITANDO O PERIODO DE USO...
é um metodo muito interessante tmb...
é q vejo alguns programas q tem um metodo muito ninja, tipo os q sao so demonstracao mesmo, vc instala, nao poe serial qq, usa o periodo, nao adianta desinstalar, e instalar novamente, q as informacoes anteriores estao enraizadas em algum lugar, q a desinstalacao do programa nao resolve...
pensei em algo parecido com isso, mas sem muita internet, até mesmo armazenar a data de instalacao e validade sem qq criptografia, mas se eu gerar um hash dessas datas e algumas pecas do hardware, basta em toda execucao comparar o hash existente, com um teste de hash entre hardware e as data, se for diferente o pilantrinha tentou modificar....
seria muito funcional e util, mas o detalhe, onde armazenar essas infos pra o cara simplesmente nao apagar o arquivo e enganar o programa como se fosse a primeira execucao do programa? é o mesmo caso q enfrento hj como esta, o cara pode apagar a chave do registro, e simplesmente parece ser a primeira execucao do programa....
a solucao é o armazenamento de qq informacao dessas na net, nao tem como escapar mesmo.....
nao seria simples, mas a troca de alguma peca, gera um novo identificador, seria uma nova instalacao....to reunindo as informacoes vendo os pos e contras....
to vendo q nao tem como escapar de informacoes na net
é q vejo alguns programas q tem um metodo muito ninja, tipo os q sao so demonstracao mesmo, vc instala, nao poe serial qq, usa o periodo, nao adianta desinstalar, e instalar novamente, q as informacoes anteriores estao enraizadas em algum lugar, q a desinstalacao do programa nao resolve...
pensei em algo parecido com isso, mas sem muita internet, até mesmo armazenar a data de instalacao e validade sem qq criptografia, mas se eu gerar um hash dessas datas e algumas pecas do hardware, basta em toda execucao comparar o hash existente, com um teste de hash entre hardware e as data, se for diferente o pilantrinha tentou modificar....
seria muito funcional e util, mas o detalhe, onde armazenar essas infos pra o cara simplesmente nao apagar o arquivo e enganar o programa como se fosse a primeira execucao do programa? é o mesmo caso q enfrento hj como esta, o cara pode apagar a chave do registro, e simplesmente parece ser a primeira execucao do programa....
a solucao é o armazenamento de qq informacao dessas na net, nao tem como escapar mesmo.....
nao seria simples, mas a troca de alguma peca, gera um novo identificador, seria uma nova instalacao....to reunindo as informacoes vendo os pos e contras....
to vendo q nao tem como escapar de informacoes na net
Amigo, fiz assim uma vez....
Tinha um banco Online, e criei uma DLL que fazia a validação do sistema. Na tabela Online tinha os campos.
Data_Limite – A data até onde o sistema ia funcionar
Data_LimiteReserva – A Data até onde se fosse necessário da contra-senha, assim ficava mais fácil eu definir quando tempo eu ia liberar para o cliente com a contra-senha
Senha1 – Utilizada para fazer validação Local
Contra-Senha – Utilizada para fazer validação Local
Status - Quando a senha esta disponÃvel ele fica com o Status de “Liberadaâ€, quando ele já tiver sido utilizada ela fica com o Status de “Ativadaâ€
CPU – Assim que eu instalo para o cliente eu crio um cadastro online, nesse cadastro eu coloco o Numero do Processador do servidor, assim fica mais fácil fazer a verificação. A ID da CPU não fica cadastrada no banco, para não ter perigo de ninguém for lá e altera-lá, ela é pegada do processador no momento da validação.
CNPJ – CNPJ do cliente
No próprio sistema ele buscava no banco Online qual senha estava disponÃvel, apos verificar se tiver alguma com Status de Liberado mas fazendo o seguinte SELECT
“Select * from tb_validacao where CNPJ = ‘0000’ and CPU = ‘0000’ and status =’Liberada’
Caso não retornar nenhum valor é porque não tem nenhuma chave para aquele cliente, disponÃvel. Todas as informações que são gravadas no banco local é tudo criptografado, se caso alguém for lá e alterar alguma letra, o meu sistema vai acusar que foi violado e não abre.
No banco local tinha os campos
Data_Limite = Data Ate onde o sistema vai funcionar
Data_LImiteReserva = Até a data que a liberação local vai funcionar
Status = Assim que acontece a primeira tentativa do sistema de acessar e caso a licença esteja vencida ele atualiza o status da licença para “Expiradaâ€. E outro detalhe é que fazendo a validação pela internet, o cliente não precisava digitar nada, era só clicar em validar e pronto.
Bom agora vem o outro caso da internet, eu sempre cadastrava todo mês uma Senha e Contra-Senha, A que eu quisesse ou poderia até mesmo utilizar um sistema para gerar números randômicos, ai fica a seu critério, para calcular a senha e contra senha eu fazia assim, até por telefone o cliente me passava a senha e contra senha e eu com uma calculadora, calculava a senha:
1 * 1015 + 2140 * 2012 = 4306695
Onde.:
1 = Mês
1015 = Senha
2140 = Contra-Senha
2012 = Ano
Só para se ter idéia, olha como ficaria o mês seguinte, basta mudar pouca coisa na senha e contra senha, que terá uma chave totalmente randômica
2 * 1401 + 1950 * 2012 = 3926202
Bom não sei se deu para entender mas fica aà a dica.
Claro que se seu cliente descobrir a formula já era....
Abraços....
Tinha um banco Online, e criei uma DLL que fazia a validação do sistema. Na tabela Online tinha os campos.
Data_Limite – A data até onde o sistema ia funcionar
Data_LimiteReserva – A Data até onde se fosse necessário da contra-senha, assim ficava mais fácil eu definir quando tempo eu ia liberar para o cliente com a contra-senha
Senha1 – Utilizada para fazer validação Local
Contra-Senha – Utilizada para fazer validação Local
Status - Quando a senha esta disponÃvel ele fica com o Status de “Liberadaâ€, quando ele já tiver sido utilizada ela fica com o Status de “Ativadaâ€
CPU – Assim que eu instalo para o cliente eu crio um cadastro online, nesse cadastro eu coloco o Numero do Processador do servidor, assim fica mais fácil fazer a verificação. A ID da CPU não fica cadastrada no banco, para não ter perigo de ninguém for lá e altera-lá, ela é pegada do processador no momento da validação.
CNPJ – CNPJ do cliente
No próprio sistema ele buscava no banco Online qual senha estava disponÃvel, apos verificar se tiver alguma com Status de Liberado mas fazendo o seguinte SELECT
“Select * from tb_validacao where CNPJ = ‘0000’ and CPU = ‘0000’ and status =’Liberada’
Caso não retornar nenhum valor é porque não tem nenhuma chave para aquele cliente, disponÃvel. Todas as informações que são gravadas no banco local é tudo criptografado, se caso alguém for lá e alterar alguma letra, o meu sistema vai acusar que foi violado e não abre.
No banco local tinha os campos
Data_Limite = Data Ate onde o sistema vai funcionar
Data_LImiteReserva = Até a data que a liberação local vai funcionar
Status = Assim que acontece a primeira tentativa do sistema de acessar e caso a licença esteja vencida ele atualiza o status da licença para “Expiradaâ€. E outro detalhe é que fazendo a validação pela internet, o cliente não precisava digitar nada, era só clicar em validar e pronto.
Bom agora vem o outro caso da internet, eu sempre cadastrava todo mês uma Senha e Contra-Senha, A que eu quisesse ou poderia até mesmo utilizar um sistema para gerar números randômicos, ai fica a seu critério, para calcular a senha e contra senha eu fazia assim, até por telefone o cliente me passava a senha e contra senha e eu com uma calculadora, calculava a senha:
1 * 1015 + 2140 * 2012 = 4306695
Onde.:
1 = Mês
1015 = Senha
2140 = Contra-Senha
2012 = Ano
Só para se ter idéia, olha como ficaria o mês seguinte, basta mudar pouca coisa na senha e contra senha, que terá uma chave totalmente randômica
2 * 1401 + 1950 * 2012 = 3926202
Bom não sei se deu para entender mas fica aà a dica.
Claro que se seu cliente descobrir a formula já era....
Abraços....
Seguinte ,
Internet hoje em dia é item básico, se faz necessário em qualquer empresa.
Como eu disse no meu sistema é necessário ao menos uma conexão com a internet no mes.
Caso seja feito essa UNICA conexão o sistema irá trabalhar normalmente até o quinto dia útil do mes seguinte.
Caso o cliente tenha internet disponÃvel o tempo todo, em todos os acessos ao sistema é feito verificações de atualizações do sistema,
juntamente com isso é feito a verificação da liberação de uso do sistema.
No meu sistema, se mudarem a data do computador, o sistema irá identificar. Se regrediu a data o sistema será bloqueado, pois o serial é por perÃodo, ou seja, no serial está incluso o perÃodo de uso, e não é o usuário quem coloca o serial, o sistema próprio faz isso.
Se o cliente avançar a data, poderá avançar até o quinto dia util apenas, não sendo possÃvel utilizar o sistema após isso.
Eu desenvolvi essa tecnologia com base na minha necessidade, sendo assim , atende perfeitamente os meus anseios.
Internet hoje em dia é item básico, se faz necessário em qualquer empresa.
Como eu disse no meu sistema é necessário ao menos uma conexão com a internet no mes.
Caso seja feito essa UNICA conexão o sistema irá trabalhar normalmente até o quinto dia útil do mes seguinte.
Caso o cliente tenha internet disponÃvel o tempo todo, em todos os acessos ao sistema é feito verificações de atualizações do sistema,
juntamente com isso é feito a verificação da liberação de uso do sistema.
No meu sistema, se mudarem a data do computador, o sistema irá identificar. Se regrediu a data o sistema será bloqueado, pois o serial é por perÃodo, ou seja, no serial está incluso o perÃodo de uso, e não é o usuário quem coloca o serial, o sistema próprio faz isso.
Se o cliente avançar a data, poderá avançar até o quinto dia util apenas, não sendo possÃvel utilizar o sistema após isso.
Eu desenvolvi essa tecnologia com base na minha necessidade, sendo assim , atende perfeitamente os meus anseios.
to adorando e to comecando a fazer um mesclado das ideias aki......
a minha ideia era fazer uma dll generica q pudesse ser usada por qq programador em qq linguagem sem uso da internet, mas vejo q a seguranca fica muito limitada dessa forma, acredito q assim, por usar uma conta de email ou um BD online pra armazenar qq tipo de info, fica impraticavel essa ideia de uma dll generica a todos....
continuo reunindo ideias, e to vendo q a saida é armazenar infos na net mesmo, e com essa reuniao de informacoes, to bolando algo na minha cabeca sobre uma conta de email, o minimo de digitacao possivel do cliente, uma chave com periodo de validade....
a minha ideia era fazer uma dll generica q pudesse ser usada por qq programador em qq linguagem sem uso da internet, mas vejo q a seguranca fica muito limitada dessa forma, acredito q assim, por usar uma conta de email ou um BD online pra armazenar qq tipo de info, fica impraticavel essa ideia de uma dll generica a todos....
continuo reunindo ideias, e to vendo q a saida é armazenar infos na net mesmo, e com essa reuniao de informacoes, to bolando algo na minha cabeca sobre uma conta de email, o minimo de digitacao possivel do cliente, uma chave com periodo de validade....
O caminho é mais ou menos isso mesmo, hoje para se ter uma segurança maior tem que ter algum tipo de validação que você tenha controle sobre ele, já và muitos casos que a pessoa desenvolve um soft e pensa que ficar gerando um serial mensal e passando só número vai resolver, ai é que a pessoa [Ô]dança[Ô], só com validação local fica bem mais fácil de burlar. A dica do Fox, na minha opnião é a bem mais prática, um dos motivos que à acho mais prática é que vc pode criar uma conta de e-mail gratuita e utiliza-lá para realizar a sua validação, caso vc não tenha site, ou uma base que fica online.
realmente, nao vai ter keygen q resolva, ainda mais se nao tem o q digitar
mas to fazendo um bom mesclado das ideias....
so fiquei triste, pq o plano era desenvolver algo q pudesse ser distribuido pra qq programador incluir no projeto, passar alguns parametros e estaria funcionando um sistema legal e seguro
mas to fazendo um bom mesclado das ideias....
so fiquei triste, pq o plano era desenvolver algo q pudesse ser distribuido pra qq programador incluir no projeto, passar alguns parametros e estaria funcionando um sistema legal e seguro
Nickosoft - cara, já parou pra pensar que todo mundo só pensa no [ô]raio do registro[ô] cara...se pensarmos bem essas informações seja lá o que for pode ser colocada em qualquer lugar...ou em qualquer tipo..por exemplo...se a instalação for feita em modo adminsitrador..[ô]claro[ô] crie um arquivo em %SystemRoot% ou em um outro lugar...e crie o codigo nele para ser verificado e alterado......por exemplo..é possivel até criar tipo de acesso de acordo com o codigo..por exemplo..
a versão pode se tornar full..de acordo com o codigo a ser alterado...cara..tô viajando aki..mais é algo que creio que já exista,
é um pouco complexo eu sei..mais..tem muita ideia boa aqui...todas as sugestões são otimas...TENSOOO !!!!
a versão pode se tornar full..de acordo com o codigo a ser alterado...cara..tô viajando aki..mais é algo que creio que já exista,
é um pouco complexo eu sei..mais..tem muita ideia boa aqui...todas as sugestões são otimas...TENSOOO !!!!
myname andei pensando nisso, e realmente armazenar qq informacao no pc local, é furada, se o cara apaga o arquivo, vai parecer q acabou de instalar o programa....ai o periodo de avaliacao seria iniciado novamente....
realmente nao tem como escapar do eskema via web pra isso....
realmente nao tem como escapar do eskema via web pra isso....
Citação::
Nickosoft - cara, já parou pra pensar que todo mundo só pensa no [ô]raio do registro[ô] cara...se pensarmos bem essas informações seja lá o que for pode ser colocada em qualquer lugar...ou em qualquer tipo..por exemplo...se a instalação for feita em modo adminsitrador..[ô]claro[ô] crie um arquivo em %SystemRoot% ou em um outro lugar...e crie o codigo nele para ser verificado e alterado......por exemplo..é possivel até criar tipo de acesso de acordo com o codigo..por exemplo..
a versão pode se tornar full..de acordo com o codigo a ser alterado...cara..tô viajando aki..mais é algo que creio que já exista,
é um pouco complexo eu sei..mais..tem muita ideia boa aqui...todas as sugestões são otimas...TENSOOO !!!!
Rodolfo, entendo a sua colocação, mas não acredito que seja a melhor solução.
Tenha em mente o seguite :
Cliente formata pc
Pc queima hd
Etc...etc....
Se fizer uma verificação on line é possÃvel vc controlar completamente o software, no meu caso eu libero ou bloqueio o menu que eu desejar. Como padrão, se o cara não pagar até o quinto dia útil é liberado apenas alguns itens do sistema, entre eles o botão LIBERAR SISTEMA.
Eu não tenho versão DEMO, mas da maneira que desenvolvi o sistema basta você inserir no serial que o sistema é demo e o mesmo terá ESTE ou AQUELE menu liberado, OU PRAZO DETERMINADO.
Cada dia, mais e mais empresas estão na obrigatoriedade de ter internet, sendo assim acho que nós programadores temos que acompanhar essa evolução e fazer uso dessa facilidade.
Quando o sistema é autonomo neste quisito, fica praticamente impossivel decifrar um serial e colocar o sistema para rodar sem autorização.
Vou lançar o desafio e quero que alguém decifre o serial abaixo. Se alguém conseguir, pode ter certeza é O CARA da engenharia computacional.
NÃO é IMPOSSÃVEL....MAS é PRATICAMENTE....
OD/0BinzQpBPgrNWUePUVp1Aa93I+uHo7xXrFf43aA0rdES0wq/+E5scZMZJ5hSbt2ciVVTU4hpmCYWu3g9DPxyjpsThBgDgjU0Yza5eBxA=
Alguém se HABILITA...Com excessão do ALTAIR , para quem passei um exemplo do sistema.
Não sou O CARA!
Tópico encerrado , respostas não são mais permitidas