Serial do HD
Queria saber o seguinte tenho um codigo que me fornece o serial do HD, mais como devo procedor pra criar um sistema de desbloqquio baseado nisso, tipo.
O comprador executa o meu sistema ele funcionara x vezes, quando chegar na ultima execução ele abrira um form onde terá o seu cadastro e o botão enviar, quando eu receber o cadastro tb receberei junto o serial do hd, dai como fazer pra eu mandar um outro serial, que quando ele colocar num edit fara a verificação que este meu serial vou gerado atraves do serial do HD dele e libere o sistema pra sempre.
Se puderem me ajudar ficarei agradecido.
O comprador executa o meu sistema ele funcionara x vezes, quando chegar na ultima execução ele abrira um form onde terá o seu cadastro e o botão enviar, quando eu receber o cadastro tb receberei junto o serial do hd, dai como fazer pra eu mandar um outro serial, que quando ele colocar num edit fara a verificação que este meu serial vou gerado atraves do serial do HD dele e libere o sistema pra sempre.
Se puderem me ajudar ficarei agradecido.
Uoquisala
Curtidas 0
Respostas
Faelcavalcanti
23/03/2005
Cara. Também gostaria de poder participar de um debate sobre ´Chave de Hardware´ e poder ir bastante adentro sobre o assunto. Mas cara sempre dou uma olhada neste tópico, [b:e03c337b04][url=http://forum.clubedelphi.net/viewtopic.php?t=23765&highlight=hacker]Não quero ser crackeado[/url][/b:e03c337b04], até faiz um tempinho já, mais tipow, só uma dica o seu programa é que é o intermediário, a partir dele você informará valores em que o comprador o confirmará, mas sobre uma coisa nada sofisticada e simples, você poderia colocar um código padrão no sistema para sempre realizar transações como as deles, ou que ele sempre utilize o sistema por exemplo a partir de uma determinada data de expiração o código de ativação sempre mudará e só você sabe o código do seu sistema e ele sempre pedirá a você, quando expirar. Seria bom utilizar criptografia, neste caso.
Falow!
Falow!
GOSTEI 0
Paullsoftware
23/03/2005
Eu uso um recurso muito bom para hablitar minhas copias de sistemas que vendo para meus clientes...
mais uso componentes para criptografia que peguei aqui no forum em um tópico só não lembro qual!
mais, tipo asim, pego o serial do HD, pego a data atual e misturo tudo fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]4CE52A3D41E0263CB2[/b:89ac3be90e][/color:89ac3be90e]
usando o serial de um dos meus HD´s, dai o cliente liga pra mim ou manda um e-mail solicitando que eu vá até a casa dele e em seguida uso essa ´senha´ que ele mandou coloco no programa que fiz para reverter a ´senha´ criptografada e ela me da a chave para destravar o sistema do cliente fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]8553BE2E[/b:89ac3be90e][/color:89ac3be90e]...
até agora tem funcionado, comigo uso a bastante tempo!!!
qq coisa entra em contato comigo pelo meu msn...! :wink:, mais em breve estarei postando o exemplo aqui no forum!
mais uso componentes para criptografia que peguei aqui no forum em um tópico só não lembro qual!
mais, tipo asim, pego o serial do HD, pego a data atual e misturo tudo fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]4CE52A3D41E0263CB2[/b:89ac3be90e][/color:89ac3be90e]
usando o serial de um dos meus HD´s, dai o cliente liga pra mim ou manda um e-mail solicitando que eu vá até a casa dele e em seguida uso essa ´senha´ que ele mandou coloco no programa que fiz para reverter a ´senha´ criptografada e ela me da a chave para destravar o sistema do cliente fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]8553BE2E[/b:89ac3be90e][/color:89ac3be90e]...
até agora tem funcionado, comigo uso a bastante tempo!!!
qq coisa entra em contato comigo pelo meu msn...! :wink:, mais em breve estarei postando o exemplo aqui no forum!
GOSTEI 0
Uoquisala
23/03/2005
Realmente gostei, mais como sou inexperientepreciso deum exemplo para implementar isso sacou.
Tipo Codigos, ou Codigos comentados ou so o exemplo feito mesmo dai me viro.
Agradeço mesmo
Tipo Codigos, ou Codigos comentados ou so o exemplo feito mesmo dai me viro.
Agradeço mesmo
Eu uso um recurso muito bom para hablitar minhas copias de sistemas que vendo para meus clientes...
mais uso componentes para criptografia que peguei aqui no forum em um tópico só não lembro qual!
mais, tipo asim, pego o serial do HD, pego a data atual e misturo tudo fica mais ou menos assim:::
[color=blue:69b249c1bb][b:69b249c1bb]4CE52A3D41E0263CB2[/b:69b249c1bb][/color:69b249c1bb]
usando o serial de um dos meus HD´s, dai o cliente liga pra mim ou manda um e-mail solicitando que eu vá até a casa dele e em seguida uso essa ´senha´ que ele mandou coloco no programa que fiz para reverter a ´senha´ criptografada e ela me da a chave para destravar o sistema do cliente fica mais ou menos assim:::
[color=blue:69b249c1bb][b:69b249c1bb]8553BE2E[/b:69b249c1bb][/color:69b249c1bb]...
até agora tem funcionado, comigo uso a bastante tempo!!!
qq coisa entra em contato comigo pelo meu msn...! :wink:, mais em breve estarei postando o exemplo aqui no forum!
GOSTEI 0
Jose Almeida
23/03/2005
{Pega o nr de série do HD}
function SerialNum(FDrive:string) :string;
var
Serial:DWord;
DirLen,Flags: DWord;
DLabel : array[0..11] of Char;
begin
try
GetVolumeInformation(PChar(FDrive+´:\´),dLabel,12,@Serial,DirLen,Flags,nil,0);
Result := IntToHex(Serial,8 );
except Result :=´´;
end;
end;
{Gera um código alfanumérico a partir de um string}
function GeraCod(Cad: string):string;
const
Chave:string = ´j5Klmljk2hUV4A´;
var
Cod:string;
Pdt,Sm,x,y,w:integer;
Psc: array[1..100] of integer;
begin
for x:=1 to 26 do Cod:=Cod+Chr(64+x)+Chr(123-x);
Cad:=Chave+Cad;
Cod:=Cod+Cad;
for y:=1 to Length(Cad) do
begin
x:=0;
repeat x:=x+1;
until Cad[y]=Cod[x];
Psc[y]:=x;
end;
Sm:=0;
Result:=´´;
y:=Length(Cad);
Cod:=´69ADGJMPSVYX147BEHKNQOTWZ258CF0ILRU3´;
for x:=1 to 4 do
begin
for w:=1 to y do
begin
Pdt:=Psc[w]*(y-w+2);
Sm:=Sm+Pdt;
end;
Sm:=(Sm mod 36)+1;
Result:=Result+Cod[Sm];
y:=y+1;
Psc[y]:=Sm;
Sm:=0;
end;
end;
function GeraSenha(Str: string): string;
begin
Result:=GeraCod(Str);
Result:=Result+´-´+GeraCod(Result);
Result:=Result+´-´+GeraCod(Result);
end;
end.
{Teste do código}
procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.Text:=(GeraCod(SerialNum(´C´)));
Label1.caption:=´Chave: ´+GeraSenha(Edit1.Text);
end;
{Para testar , digite a Chave no Edit2}
procedure TForm1.Button1Click(Sender: TObject);
begin
if Edit2.Text=GeraSenha(Edit1.Text)then
ShowMessage(´Chave Confere´)else
ShowMessage(´Chave Não Confere´);
end;
function SerialNum(FDrive:string) :string;
var
Serial:DWord;
DirLen,Flags: DWord;
DLabel : array[0..11] of Char;
begin
try
GetVolumeInformation(PChar(FDrive+´:\´),dLabel,12,@Serial,DirLen,Flags,nil,0);
Result := IntToHex(Serial,8 );
except Result :=´´;
end;
end;
{Gera um código alfanumérico a partir de um string}
function GeraCod(Cad: string):string;
const
Chave:string = ´j5Klmljk2hUV4A´;
var
Cod:string;
Pdt,Sm,x,y,w:integer;
Psc: array[1..100] of integer;
begin
for x:=1 to 26 do Cod:=Cod+Chr(64+x)+Chr(123-x);
Cad:=Chave+Cad;
Cod:=Cod+Cad;
for y:=1 to Length(Cad) do
begin
x:=0;
repeat x:=x+1;
until Cad[y]=Cod[x];
Psc[y]:=x;
end;
Sm:=0;
Result:=´´;
y:=Length(Cad);
Cod:=´69ADGJMPSVYX147BEHKNQOTWZ258CF0ILRU3´;
for x:=1 to 4 do
begin
for w:=1 to y do
begin
Pdt:=Psc[w]*(y-w+2);
Sm:=Sm+Pdt;
end;
Sm:=(Sm mod 36)+1;
Result:=Result+Cod[Sm];
y:=y+1;
Psc[y]:=Sm;
Sm:=0;
end;
end;
function GeraSenha(Str: string): string;
begin
Result:=GeraCod(Str);
Result:=Result+´-´+GeraCod(Result);
Result:=Result+´-´+GeraCod(Result);
end;
end.
{Teste do código}
procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.Text:=(GeraCod(SerialNum(´C´)));
Label1.caption:=´Chave: ´+GeraSenha(Edit1.Text);
end;
{Para testar , digite a Chave no Edit2}
procedure TForm1.Button1Click(Sender: TObject);
begin
if Edit2.Text=GeraSenha(Edit1.Text)then
ShowMessage(´Chave Confere´)else
ShowMessage(´Chave Não Confere´);
end;
GOSTEI 0
Luiz Abreu
23/03/2005
VC poderia me ajudar
GOSTEI 0
Alex Bahiano
23/03/2005
Bom, se vc precisa de uma rotina pra proteção do seu programa, uma rotina só com o numero de hd e data, em um minuto é retirada se algum estudante de engenharia achar ele na net, seria bom se vc pudesse usar além disso, componentes como o
Rd acesso
ou até mesmo o do Elivaldo
Bom! ambos, sozinho, não fazem muito efeito para um estudante de engenharia, além deles coloque o
ENIGMA PROTECTOR no seu executável final
Assim a dificuldade aumenta a 100%, claro que qualquer tipo de protect na maioria das vezes é irreversível.
Espero ter ajudado.
Rd acesso
http://www.deltress.com.br/rdacesso3/rdacesso.htm#Como%20funciona
ou até mesmo o do Elivaldo
http://elivaldo.com.br/
Bom! ambos, sozinho, não fazem muito efeito para um estudante de engenharia, além deles coloque o
ENIGMA PROTECTOR no seu executável final
http://www.enigmaprotector.com/en/screenshots.html
Assim a dificuldade aumenta a 100%, claro que qualquer tipo de protect na maioria das vezes é irreversível.
Espero ter ajudado.
GOSTEI 0
Luiz Abreu
23/03/2005
Obrigado , na verdade nao sou conhecedor da linguagem delphi ,faço alguma coisa no flash e uso muito um programa
muito antigo VKIT5 ele e um wizard com engine do foxpro, estou querendo fazer faculdade de informatica , pq
na verdade estou na area desde o MSX ,mas como um simples usuario leigo, nao como profissional. Bem na verdade
queria um programa que fizesse o seguinte: Numa clonagem de HD , posterior ele identificasse o HD pelo serial fisico
e ativasse qualquer proteção ou até mesmo um format para destruir os dados. Estou montado um Toten interativo
onde muitos dos ´programas paguei muito caro e facil clonar o HD e usar em outra maquina, por isso preciso de um programa para fazer essa autenticação , ja procurei na net mas sem sucesso , vou tentar criar um em Delphi preciso
de ajuda .... muito obrigado de coração
GOSTEI 0