É um tópico que interessa a todos. Como posso proteger meu software contra roubo, hackers e engenharia reversa?
Eu estava pensando: Faça o possível para proteger o programa de engenharia reversa. Então as pessoas o quebram e o espalham com torrents . Então, baixo meu próprio software com um torrent com meu próprio software de torrent . Meu próprio software de torrent precisa semear dados incorretos (bytes). Claro que tem que propagar bytes críticos.
Então, as pessoas que querem roubar meu software baixam meus bytes errados. Apenas os bytes importantes para iniciar, salvar e carregar dados, etc ... Portanto, se o ladrão baixar de mim (e propagá-lo mais tarde), o ladrão não pode fazer nada com ele, porque está quebrado.
Essa ideia é relevante? Talvez, bons clientes de torrent verifiquem hashes de mais pares para verificar se os pacotes (contendo meus bytes quebrados) que eu quero propagar estão corretos ou não?
fonte
Respostas:
Seu aplicativo de torrent (os piratas) simplesmente descartará os bytes que você está semeando devido a verificações de CRC. Então você será banido por esse IP por ser um reincidente.
fonte
Q. Posso proteger meu software enviando bytes incorretos?
R. Não, ele pode ser hackeado de qualquer maneira, especialmente se alguém colocar as mãos em uma cópia legítima.
P. Como posso proteger meu software contra roubo, hackers e engenharia reversa?
A. Vendê-lo por um preço justo, isso prejudicará as tentativas de invasão.
fonte
Eu sugiro abordar o problema do outro lado. Incorpore um código de identificação exclusivo em cada cópia do seu software que você fornecer aos seus clientes. Caso alguém esteja semeando, você pode pelo menos identificar quem fez isso e tomar ações legais.
fonte
DRM funciona? Não. A configuração de coisas ruins do BitTorrent / EDonkey2000 funciona? Não. Alguém se preocupa em piratear seu pequeno aplicativo? Não. Ninguém nunca ouviu falar disso.
fonte
O bittorent e a maioria dos outros softwares p2p protegem-se de tais tipos de manipulação usando hashes de arquivo, por exemplo, md5.
fonte
A única maneira (em que consigo pensar) de fazer isso é executar o software completamente em seu servidor e não ter código útil no aplicativo cliente - porque se você não pode obtê-lo, não pode (facilmente) decifrá-lo. Dessa forma, você terá controle sobre as contas e saberá quem usa seu aplicativo. Os usuários não serão felizes, no entanto. E se você executar apenas o código relacionado à proteção contra cópia no seu servidor, alguém o invadirá escrevendo o emulador do servidor OU identificará o código e ignorará completamente a proteção. Como aconteceu com o novo esquema de proteção contra cópia da Ubisoft.
Manter o software no servidor não é completamente à prova de balas. Em vez de quebrar o software, alguém começará a atacar o servidor para invadir e obter software. E sempre há brechas de segurança na "engenharia social". "manter tudo no servidor" funcionará melhor se o seu software não puder ser executado em uma máquina normal (isto é, requer um supercomputador ou um cluster de computadores). Um bom exemplo disso é o EVE Online - ao contrário do WOW e do Lineage, não há emuladores de servidor que eu conheça, porque requer cluster de computadores para executar o servidor.
"Pirata", porque é chamado de violação de direitos autorais.
fonte