Fórum [Vamos debater] Não quero ser crackeado... #186858
07/10/2003
0
Bom. Venho recorrer a este tópico para debatermos um assunto muito interessante: Qual seria a melhor maneira de fazer um sistema Trial?
No programa ue estou fazendo, eu já faço algumas verificações para saber se já se passaram 30 dias de uso do mesmo. Depois disso devosalvar em algum lugar uma informação para saber se o programa já expirou ou não. É aí que tá o problema. Como fazer algo que não possa ser desvendado?
Por registro não posso. Pois com um simples monitorador do registro eu posso saber qual chave o programa está acessando. Por arquivo é a mesma coisa. Agora eu pergunto: Como faze-lo então?
Nildo
Curtir tópico
+ 0Posts
07/10/2003
Machado
Gostei + 0
07/10/2003
Moonlight
Gostei + 0
07/10/2003
Nildo
Mas mesmo assim. Se o cara deletar o arquivo aí ferra tudo
Gostei + 0
07/10/2003
Moonlight
Uai.. mas se o prog usa BD e ele deletar o BD... aí que ele não usa mais o prog mesmo hehehe...
Gostei + 0
07/10/2003
Nildo
Mas se ele reinstalasse o sistema, poderia continuar usando o programa.
Mas de qualquer maneira, meu programa nao usa BDs
Gostei + 0
07/10/2003
Mmtoor
Executo duas verificações para minhas versões trial.
1º = Continuo partidário em limitar o número de registros a serem gravados nas tabelas do BD, sempre projetando um número suficiente para que toda a funcionalidade do sistema seja verificada. Após o número limite de registros as tabelas passam a ser somente leitura;
2º = Por outro lado, uma segunda verificação também se torna necessária, pois, se o cliente demorar muito para analisar o sistema o mesmo vai expirar.
Na primeira execução o sistema verifica a existência de um determinado arquivo .DAT. Se não existir ele o cria no diretório especificado em projeto e grava a data da execução mais a diferença da data atual menos a data da primeira execução de forma encriptada.
Sempre que o sistema é aberto, ele lê o arquivo criado, lê a data atual, deduz uma da outra e acrescenta a diferença à data anteriormente gravada.
Quando esta diferença for superior a 30 (correspondente a 30 dias; por exemplo: 2710200331 = 27/10/2003 dif=31) as tabelas também se tornam somente leitura para a gravação de registros.
Não me refiro a propriedade somente leitura de arquivos, mas sim para a gravação de registros.
Este tem sido o procedimento que tenho utilizado. Ainda não quebraram.
Gostei + 0
07/10/2003
Nildo
Gostei + 0
07/10/2003
Mmtoor
vc se apegou ao arquivo dat e a limitação de 30 dias, mas, e a limitação de registros, vc nada falou?
de outra forma, você é um desenvolvedor. vai habilitar seu sistema para usuários, certo?
se quiserem deletar o dat, e dai, mais que X registros no BD não gravarão.
OBS: vi em uma colocação sua neste forum que é um expert em delphi. como expert o que sugere então??
MMTOOR2003
Gostei + 0
07/10/2003
Nildo
Ps.: Não estou tentando sugerir nada. stou tentando habilitar uma discussão sobre o assunto pois também estou interessado em sugestões. Como é uma discussão, todos temos o direito de contrariar algumas idéias. Estou atraz de sugestões, e não tentando passar as minhas.
Gostei + 0
07/10/2003
Carnette
O dia que eu fizer um programa e os caras começarem a piratear...
UUUUUUúúúúú........Isto quer dizer que o meu programa é sencacional..
Por tanto, vou continuar criando meus programas com alguns BUG´s...Pois, assim, somente os usuários registrados poderão atualizar..
Ou será que á Microsoft faz coisa diferente ????
:lol:
Gostei + 0
07/10/2003
Beppe
É simplesmente sobre-humano criar algo infalível, [in]felizmente! :!:
Ataliba.
Gostei + 0
07/10/2003
Marconi
Outra é determinar via programa a data limite. Assim não gravamos em lugar nenhum. O cara pode utilizar mas vai ter que ficar voltando a data do computador.
Assim a validade não se refere a quantidade de utilização mas a uma data no futuro.
A solução do registro via email também é boa. Ninguem vai perder tempo craqueando um programa da gente.
Voce pode mandar o programa de vez-em-quando te mandar um email utilizando o smtp disponível, com o nome do usuário e a data de utilização. Assim vai saber se existe algum uso indevido.
Tem programas que somente rodam quando enxergam o seu site na internet. Mas estes são difíceis de vender.
Na verdade o negócio é liberar a cópia. Quanto mais gente utilizar melhor para vender as novas versões.
Este negócio de proteger muito acabou com a LOTUS.
Marconi
Gostei + 0
07/10/2003
Beppe
Só fazer um launcher para o programa: ele volta para uma data X e roda seu programa.
Gostei + 0
07/10/2003
Beppe
Eu sei que esta não é uma questão de patente, mas os princípios são os mesmos. Além do mais, copyrights são respeitados.
Ataliba.
Gostei + 0
07/10/2003
Ulbj05
Eu concordo com o que foi dito por todos. Mas tenho uma reflexão a fazer. Será que existe algo seguro de verdade? O nildo está rebatendo todas as idéias dos colegas dizendo que pode usar um monitorador de registro e um monitorador de arquivos, etc. Vc nem parou para pensar numa coisa. Se vc sabe fazer ( a trava ) outro tb vai sabe desfazer. É uma coisa lógica. Se vc é programador e sabe que caminhos tomar para criar uam trava, outro programador tb sabera como percorrer o caminho inverso.
Pelo que já vi em programação, o que realmente funciona é vc está sempre mudando a forma de verificação. Se vc usa o registro, não fique preocupado se alguem vai usar um monitorador de registro. Quantos usuários vc acha que têm o conhecimento e a ferramenta e vão saber monitorar direito e encontrar a chave do registro? Poucos usuários saberiam fazer. Alguns administradores de sistema e programadores vão saber como procurar e vão encontrar. Quando encontrarem, é hora de vc por exemplo, usar trava de arquivos ( pode deixar a primeira trava só para confundir ). Se descobrirem a trava de arquivos, crie outra. Esta é a forma ideal para ninguem usar seu programa sem autorização. Melhor ainda seria se vc conseguisse que cada trava adicionada, não atrapalhas-se a outra e todas pudessem co-existir juntas. Se não for possivel, retire algumas antigas e substitua por outras mais eficientes.
Espero ter ajudado.
Um abraço.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)