Respondido Urgente - Proteger software

  • 2006年6月28日 9:09
     
     
    Olá a todos!

    Estou a desenvolver uma windows application em VB.net e preciso de bloquear o programa qto ao numero de instalações, cópias e restringir
    a instalação apenas á empresa que nos comprou o software!
    O programa é distribuido em CD e precisava de proteger o software de forma
    a conseguir controlar o nr de instalões do mesmo!

    Será que alguém me poderá ajudar?

すべての返信

  • 2006年6月28日 11:07
     
     

    Procure por um software chamado HandProt, é de uma empresa brasileira e dê uma olhada no site da empresa www.squadra.com.br, lá você vai ver o poderio bélico da ferramenta.

     

    Pelo visual sudio não sei como fazer. Se você descubrir, poste no Fórum para poder passar o conhecimento para todos.

     

    Se esta resposta foi útil ou respondeu sua pergunta, marque-a como resposta e/ou como útil.

  • 2007年1月23日 1:24
     
     

    Tem mil e um recursos para isso. O HandProt é um. Mas até hoje eu não conheci um recurso que seja 100% não "hackeável".

    Por outro lado...

     

    Se sua aplicação tem n camadas, uma possibilidade é que a parte "server" rode na sua empresa, e os clientes a acessem via internet. Daí você tem mais controle de quem está chamando e etc. Fica bem mais difícil para um hacker passar por cima disso.

  • 2007年1月26日 13:34
     
     

    Cara a maneira mais simples e elegante de vc fazer isto é!!!

    1 - Fazer um webservice que receba que tenha um registro do seu software, passando todos os dados da empresa e et, no qual até vc ativa.. isto.. e ele tb começa a ter atualizações via ClicOnce por exemplo.

     

    2 - Depois de ter feito o WebService, vc tem que criar uma regra, no seu programa no para verificar toda vez que inicia o programa ele verificar no webservice, atraves de um numero.. exemplo GUID ou otruo qualquer que seja unico, para ver se o programa já foi feito o registro..

    Caso ainda não, vc avisa que em X dias o programa irá perder sua validade.. entende?

    Nos fazemos assim e ficou muito bom..!!!

     

    Alem disso vc tem que se preocupar com seu fonte que está na maquina do cliente,, já que é windows forms.. ou seja se foi feito em .Net ou outra linguagem o cara pode pegar as DLLs e simplesmente abrir com Reflector e ler suas DLLS e criar um novo software com base do seu..

    Entao sugiro que vc olhe sobre o assunto OBFUSCATOR.

    Espero ter ajudado.

  • 2007年1月26日 14:06
     
     

    Uma coisa tb que vc pode usar é HARDKEY...

    VC pega as dlls coloca no seu Software dai ele fica tanto em tanto tempo.. lendo o hardkey(ele parece um USB) que tem de forma de "pinos" um chaveamento para verificar se o HARDKEY está conectado e se é HARDKEY dele.

    è muito bom...

    da uma olhada no www.SafeNet-inc.com

    Eles que dao esta solucao...

     

  • 2007年1月29日 7:01
     
     

    Sim, mas lembre que se seu código é .Net, mesmo usando hardkey ou qualquer outra coisa, nada impede que alguém desmonte seu código e tire aquilo que não queira dele.

     

     

  • 2007年1月29日 17:26
     
     

    Se vc usar Obfuscator  ninguem vai conseguir tirar nada e nem colocar nada em seu código, um bom Obfuscator, ou seja que a propria palavra ja fala.. é ofuscador... bom é Spice.Net

    O Hardkey não é para proteger contra copia de código mas sim contra pirataria.

    Abraços.

  • 2007年1月29日 20:43
     
     
    Eu diria que fica bem mais difícil, mas eu não diria impossível...
  • 2007年2月7日 17:29
     
     回答済み

    Olá,

    Uma estratégia interessante é adotar um processo baseado na ativação do seu software através de um arquitetura baseada em chaves assimétricas (público/privada). Dentro do seu programa vc insere uma rotina onde durante a instalação o usuário deve informar alguns dados. Estes dados são transmitidos para um webservice localizado no fornecedor do software, que valida a informação e fornece uma chave de ativação.

    Na prática, vc irá incluir uma função no "setup" do seu software para que ele utilize uma chave pública em cada instalação, comunicando-se com a chave privada única localizada no fornecedor através de um webservice. Embora vc tenha um overhead administrativo, o controle sobre cada instalação é bastante eficiente.

    É claro que, a chave privada deve ser armazenada e manuseada com a segurança adequada.

    No Visual Studio 2005 vc pode utilizar a classe RSACrytpoServiceProvider

    []'s !

    Weber Ress

  • 2008年1月27日 3:07
     
     
    Fscsantos,

    Algum tempo atrás tive a mesma dúvida e necessidade, porém encotrei um site muito interesante sobre o assunto.
    Eu tinha algumas idéias para proteger o meu software e pensei que elas eram inéditas (q inocencia minha! hehe)... Este site me deu umas dicas legais.
    http://www.woodmann.com/fravia/protec.htm

    Reflita sobre elas.
    Abraços
  • 2008年3月21日 1:08
     
     

    ola

    vc teria um exemplo sobre o assunto?

  • 2008年5月10日 3:18
     
     
    Olá,

    A recomendação é vc gerar um ID de instalação usando o MAC Address + clock timer + hash de alguns arquivos do sistema operacional + ID processador.

    []'s

    Weber Ress
  • 2009年9月22日 12:02
     
     
    aLGUN EXEMPLO DISSO EM c#
  • 2010年9月17日 13:30
     
     

    Tchê, pode me dar uma ajuda 

    Como faço para pegar o GUID? Qual Win32 dessa string?

    Valeu..

     

     

    Segue como dica uma lista dos Hardwares Information:

    http://www.codeproject.com/KB/system/GetHardwareInformation.aspx