Legal, fiz uns testes aqui  e realmente é show, apaguei apenas um espaço no 
código fonte em uma ShowMessage, ele mudou o CRC32.

DEUS É PAI.
[]'s
Allan
msn [EMAIL PROTECTED]
Skype allan_gabriel
  ----- Original Message ----- 
  From: Elazar Dornelles Ceza 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, July 31, 2006 9:17 AM
  Subject: RES: [delphi-br] CRC de arquivos.


  Walter; 

  Eu concordo;

  Pelo que sei o calculo do CRC, ta prontinho...tem a Unit 'crc32.pas';
  É so usar (bolar algum metodo...)...e acho que é isto que é o mais
  complicadinho....


  Atenc;

  Elazar


  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  Em nome de Walter Alves Chagas Junior
  Enviada em: segunda-feira, 31 de julho de 2006 09:03
  Para: 'delphi-br@yahoogrupos.com.br'
  Assunto: RES: [delphi-br] CRC de arquivos.


  Não. Não há ideia alguma a respeito de fazer um projeto comunitário via
  WEB,
  até mesmo porque, minha larga experiência em listas de discussão a
  aproximadamente 10 anos, constatarem que isto não funciona e não passa
  de
  mero fogo de palha. A ideia mesmo é discutirmos o assunto. Criarmos um
  debate interessante.


  []s

  Walter Alves Chagas Junior
  Projeto e desenvolvimento de sistemas
  Telemont Engenharia de telecomunicações S/A
  Belo Horizonte - MG - Brasil
  [EMAIL PROTECTED]
  Fone: (31) 3389-8215 Fax: (31) 3389-8200

  Parabens Telemont - Somos a 8ª maior empresa do Brasil no segmento de
  construção!!


  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  nome de .:: Elazar Dornelles Ceza ::.
  Enviada em: segunda-feira, 31 de julho de 2006 08:23
  Para: delphi-br@yahoogrupos.com.br
  Assunto: RES: [delphi-br] CRC de arquivos.


  Walter; 

  Filippe Nagatto, 
  Allan, 
  Felipe Henrique, 
  Ricardo, Hayalon!

  é isso ai meu caro jovem...

  Deixe me ver. A ídéia é a gente criar um projeto? Dll? Componente?
  Funcao? Pra usar nos projetos e garantir a integridade dos nossos
  sistemas?

  Atenc;

  Elazar


  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  Em nome de Walter Alves Chagas Junior
  Enviada em: sexta-feira, 28 de julho de 2006 19:12
  Para: 'delphi-br@yahoogrupos.com.br'
  Assunto: RES: [delphi-br] CRC de arquivos.


  Elazar,

  Semana retrazada eu tentei ascender este assunto lá na lista-delphi, a
  respeito do CRC. Postei até o link do Delphi About que tratava do
  assunto:

  http://delphi.about.com/od/fullcodeprojects/ss/crc_filecheck.htm

  A ideia minha era abrir uma thread a respeito do assunto, mas poucos lá
  interessaram. O resto ou fez algum breve comentário ou não entendeu bem
  o
  que era. Uns achavam se tratar de mais algum método anticópia de um
  programa
  e outros associaram o assunto com crack. Quando na verdade não é nada
  disso.

  Este interessante recurso visa assegurar mais ainda seu executável
  contra a
  mão maldita do usuário fução: O número serial CRC (Cyclic Redundance
  Code).
  Primeiramente isto daí não tem absolutamente nada haver com chave de
  ativação de programa ou de senha pois este número serial não está em
  lugar
  nenhum no programa, LUGAR nenhum. Nenhum. Portanto não tem um lugar
  aonde
  ele fica. Ele não fica. Ele é calculado com base em infomações do
  executável
  como data, hora, tamanho e agrupamento de bytes internos. O CRC consiste
  em
  um código gerado com base na situação atual de seu executavel (data e
  hora
  de compilação + tamanho). Caso alguém abra seu exe em um editor de
  programas
  ou mesmo no Debug do DOS e mexa em alguma coisa dentro dele e salve-o, a
  chave serial de CRC já é outra. Aliando isto ao fato também deste número
  serial não está em lugar nenhum no programa, isto anularia a ideia de
  girico
  dos espertozoides tentarem copiar o CRC antes de mexer no executável,
  mexer
  nele, e depois salvar o CRC antigo nele novamente achando que, com isto,
  não
  deixariam rastro algum. Então você pode, além de criar seus métodos
  anticópia, colocar um validador de CRC em seu programa de forma que se
  alguém entrar nele pra mudar nome de autor ou de empresa filiada, ou
  mesmo
  tentar quebrar a regra anticópia, o executável irá ter outro CRC e você
  pode
  impedir a execução dele mediante validação desta "chave serial" interna.

  PS: Não confundam CRC com registro de licença de programa. Registro de
  programa é um metodo que você usa para que seu programa libere
  funcionalidades internas mediante a entrada de um código que seu cliente
  irá
  lhe pedir. VOCÊ PROGRAMA ISTO e isto irá depender do seu algorítmo de
  validação. Agora CRC não. CRC é calculado com base em informações
  internas
  do executável aonde se aplica uma regra para ele. Esta regra (algorítmo)
  é
  universal. Um programa externo (ou uma função interna) irá validar o
  executavel. Se o CRC bater com a validação, então este executável está
  em
  conformidade com a compilação original.

  O recurso do CRC é interessante para você checar se seu executável foi
  infectado por um virus, se foi arrombado por um crack (ou então um
  cracker)
  visando burlar validação de licença, visando burlar telas de "Registre"
  ou
  visando trocar nomes de empresa e de autor em telas "About". Então. Se o
  camarada abrir se exe com um PCTools da vida e, for lá trocar alguma
  coisa
  no executável, ao salvar ele, o CRC ja passa a ter outro valor. E é esta
  mudança de valor que você pode usar para assegurar a autenticidade de
  seu
  programa. Se ele está intacto ou se foi "mexido" por alguem. qualquer
  mexida
  no arquivo já altera o CRC dele.

  Fazer a validação do CRC de dentro do próprio executável, não é das
  tarefas
  faceis porque você precisa montar um código de validação, sendo que a
  informação que irá checar com o validador, você só obterá ela depois de
  compilado o programa. Ora, então como é que vamos codificar um if isto
  igual
  a aquilo, se o isto não temos antes de compilar o produto? MAS! Nada
  impede
  de você colocar o validador em uma DLL ou uma BPL vinculada a ele. Na
  carga
  desta biblioteca supra-citada, ela pode validar seu programa e, já de
  lá, ou
  deixar ele continuar ou abortar a continuação do mesmo. No caso do
  abortamento da execução do programa, aí sim você poderia colocar um
  algorítmo para destruir o executável. Nos bons tempos do clipper, eu
  costumava fazer um arquivo de lote compilado com o Exe2Bat que virava um
  executor do meu programa. O programinha verificava a data do computador
  e
  checava com a data do executável. Ao expirar, o programa emitia um aviso
  de
  que o mesmo foi expirado e ecoava null para o arquivo:

  Echo Null > <nome do programa>.exe

  ou então

  Type Null > <nome do programa>.exe

  O resultado disto é que o executável ficava com tamanho 0.

  É por aí que a coisa flui. Se quiserem abrir a Thread aqui, to dentro :)



  []s

  Walter Alves Chagas Junior
  Projeto e desenvolvimento de sistemas
  Telemont Engenharia de telecomunicações S/A
  Belo Horizonte - MG - Brasil
  [EMAIL PROTECTED]
  Fone: (31) 3389-8215 Fax: (31) 3389-8200

  Parabens Telemont - Somos a 8ª maior empresa do Brasil no segmento de
  construção!!


  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  nome de .:: Elazar Dornelles Ceza ::.
  Enviada em: sexta-feira, 28 de julho de 2006 09:16
  Para: delphi-br@yahoogrupos.com.br
  Assunto: [delphi-br] CRC de arquivos.


  Bom dia pessoal;

  Estava olhando algo sobre o CRC de arquivos e ocorreu o seguinte

  Me ocorreu o seguinte, estava 'brincando' o windows explorer e o
  winrar...(compactador) e pude perceber o que:  ao trocar a data do micro
  para alguns dias atraz, compactar, o winrar me mostrou um CRC XXXXXX
  entao acessei as propriedades do arquivo e verifiquei que o mesmo tinha
  a data de 'acessado' em para o dia que havia trocado a data....blz,
  voltei novamente o micro para a data atual, acessei o arquivo sem
  modificar nada...fechei compactei e o CRC ainda continua XXXXX. Voltei
  ao windows explorer e verifique a data de acesso do arquivo e como era
  de se esperar estava datada para o dia de hoje.

  Entao eu pergunto. 
     Onde o windows guarda as informacoes de ultimo acesso do arquivo,
  data de criacao...modificado...???
       Se for no proprio arquivo (como eu imagino que sim)....porque o CRC
  do arquivo não Muda???
       Como eu faco em delphi para mudar alguma coisa em um arquivo
  qualquer...que não modifique o CRC???

  Alguem já trabalhou com algum esquema semelhante???


  Atenc.
  Elazar



              
  _______________________________________________________ 
  Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu
  celular.
  Registre seu aparelho agora! 
  http://br.mobile.yahoo.com/mailalertas/ 





  -- 
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



  Links do Yahoo! Grupos









  [As partes desta mensagem que não continham texto foram removidas]




              
  _______________________________________________________ 
  Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu
  celular.
  Registre seu aparelho agora! 
  http://br.mobile.yahoo.com/mailalertas/ 





  -- 
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



  Links do Yahoo! Grupos









  [As partes desta mensagem que não continham texto foram removidas]




              
  _______________________________________________________ 
  Yahoo! Acesso Grátis - Internet rápida e grátis. Instale 
  o discador agora! 
  http://br.acesso.yahoo.com 
   


[As partes desta mensagem que não continham texto foram removidas]






-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a