Minha solução antipirataria

Pessoal, respondo suas dúvidas agora abaixo. Amanhã tentarei mandar um resumo melhor da minha solução.

Resposta para moises.trovo:

No meu sistema antipirataria, depois que o software do cliente é ativado, o servidor de licenças passa a saber que o número de série XYZSDEblabla respectivo já contem uma licença em uso. Então, se o amigo do cliente copia tudo e tenta ativar em outra máquina, o servidor de licenças detecta que o mesmo número de série do software está pedindo outra licença de ativação. Mas nesse cado o servidor não libera. A única forma do amigo conseguir instalar e ativar é esperar o dono legítmo fazer uma desativação antes. E mesmo assim, o amigo deve saber qual é o login e senha do dono legítmo.

Resposta para everson_z:

Concordo que não existe sistema 100% antipirataria.
Não vou colocar um prêmio para burlarem meu projeto. Isso seira 2 prejuízos de uma vez só. Acredito sim que pode ser burlado. Mas, como já disse, isso não seria trivial e mesmo assim é uma solução confortável para o usuário final.
O que seria homologar uma solução??? Como faço isso???
Se o meu cliente precisar formatar sua máquina, ele não precisará entrar com contato comigo obrigatoriamente.
Me dedico ao meu sistema antipirataria há um bom tempo. E se eu perceber que há demanda reprimida para ele, irei transformá-lo em serviço para outras empresas. Mas, isso depende de comentários como os do pessoal nessa lista.

Resposta para rodrigoallemand:

O meu cliente só precisa do servidor web, onde está o servidor de licenças, na hora da ativação do sistema. E mesmo assim nem precisa ser conexão direta ao software. Porque o usuário pode acessar o servidor via web site, pegar os códigos necessários e digitá-los no software, no momento da instalação. Isso garante que o cliente não precisa me ligar.
Um pirata irá mesmo tentar usar um TXT meu em outra máquina, porque está obvio que é o TXT (Record.txt) que contem a licença. Na tentativa de copiá-lo, a cópia fica inválida. Na tentativa de salvalo, o salvo fica inválido. Se for movido, fica inválido. E não depende de posição de memória.
Não quero forçar meu cliente ficar conectado. Tem cliente que mora no final da floresta amazônica e lá não tem internet o dia todo.
Não implementei as licenças flutuantes. Para tal, o próprio cliente tem que transferir uma licença entre máquinas, ativando e desativando , quando necessário. No meu produto , visei o conforto do cliente.

Resposta para zirocool

Como pode ser percebido nas minhas respostas, eu implementei sim o esquema de “autenticando uma chave no servidor e liberando com uma contra-chave.”

Resposta para rafaelglauber

Ralmente quero discutir somente sobre o que meu software faz, em alto nível. Eu já sei como passá-lo para Java. Mas, como eu imaginava, muita gente aqui faz muita suposição de como a coisa é ou não é. A idéia de publicar um artigo sobre isso é muito boa. Portanto, vou falando com vocês e observando seus comentários, para eu saber se minha solução agrada algum de vocês. Mas, até agora não consegui explicitar a inovação contida nela. Mas, vamos discutindo que tudo ficará claro…

Resposta para Rodrigo.Lima

Estou disposto a explicar todas as suas dúvidas até vc entender o sistema. Daí depois vc me fala se gostou dele ou não, ok?
Se por um ‘not’ fura o sistema sim. Mas, para isso, precisa decompilar o executável. É claro que não existe solução 100% segura.
Ajuda ofuscar o código?

Resposta para ViniGodoy

Se o meu controle for burlado, o que vc disse realmente irá acontecer.

Resposta para lavh

Realmente a minha solução não é a solução mundial de antipirataria.
Mas, porque vc não acha que há inovação? Um servidor de certificação de assinatura digital foi inovaçao quando criado, certo? Então, se alguém criar um servidor de licenças que possa ser usado por qualquer empresa programando em java, por exemplo, isso não seria inovação? Seria o primeiro servidor do gênero!

Resposta para David

Ele identifica se o TXT é válido comparando o seu conteúdo (informação criptografada) com um atributo do computador. Tal atributo não depende do hardware. Exemplo de atributo que não depende do hardware:
coordenadas geográficas do computador (não uso isso!)
IP dinâmico do computador (não serve, já que é dinâmico)
Etc.
Tentarei colocar um mini artigo aqui nessa lista explicando melhor minha solução. Talvez alguem goste dela.
Resposta para oazuc

Irei procurar os congressos que vc disse. Sou formado em computaçao na UFMG , em 1997. E trabalho com desenvolvimento há 10 anos.

Resposta para ciczan

Bloqueio o cliente indiretamente. Bloqueio diretamente o seu cadastro no servidor de licenças, o qual fica no meu domínio. Depois, quando o cliente interage com o servidor, ele “dança”. E não dá para ficar sem usar esse servidor, quando se quer passar um software instalado de uma máquina para outra. PAra isso, a licença precisa ser reciclada, o que emplica em depositá-la e deposi sacá-la do servidor.

Resposta para alexandremlima

Parece ser mesmo uma solução muito prática para o usuário final. Obrigado por comentar!

Resposta para jjose

Acho que aqui tem muita gente boa para burlar meu sistema. Mas, não é o caso dos meus clientes.
Esse tópico nos leva a perceber o quão desprovidos de licenças antipirataria estão todos nós. Talvez nos leve a conlusão que minhas idéias são adequadas a nós.

Resposta para esb

Bloqueio indiretamente. Como já expliquei acima e antes também.
No seu exemplo, se o TXT for copiado para outra máquina, a cópia se torna um arquivo inválido automaticamente, sem qualquer validação ao servidor. Um TXT só é válido na máquina em que foi criado. “uma célula só tem meu DNA se for do meu corpo, mesmo se for encontrada em outro corpo.”
Ha como copiar o software de uma máquina para outra sim. Mas, o usuário deve desativar na máquina 1, se quiser usar na 2. Para tal, ou o software está conectado só nesse momento, eu o cliente acessa o servidor via web site e faz a intermediação entre o servidor e os softwares, só nesse momento.

Resposta para aleck

FAvor explicar melhor o cado do redirecionamento. Como fazer isso? Mesmo redirecionando, a nova URL terá que conter os scripts que contem a minha, onde faço validaçao de códigos de ativação.
O meu sistema trabalha com serial mesmo. Se eu lhe mandar um serial e o código criptografado correspondente, vc consegue descobrir o algoritmo usado?

Resposta para Marcio_Nogueira

Não há nada de revolucionário mesmo. Mas, você concorda que o sistema é confortável para o usuário final? Se sim, você acha que isso é uma inovação de produto ou processo?

Resposta para danilomunoz

Pelo visto , ninguem aceita a minha idéia como inovação. Mas, você entendeu que se a minha solução for acessível a todas as outras empresa, isso seria inovação?

Resposta para andredeividi

FAz controle antipirataria sem causar transtorno ao usuário final.

[quote=Rodrigo Pimenta Carvalho]Favor explicar melhor o cado do redirecionamento. Como fazer isso? Mesmo redirecionando, a nova URL terá que conter os scripts que contem a minha, onde faço validaçao de códigos de ativação.
O meu sistema trabalha com serial mesmo. Se eu lhe mandar um serial e o código criptografado correspondente, vc consegue descobrir o algoritmo usado?[/quote]

Rodrigo, parabens pela solucao - ela nao tem nada de novo, e implementacoes similares em Java ja existem (vide IntelliJ IDEA), mas nao deixa de ser o mecanismo de ativacao de software mais eficiente e menos pentelho que bolaram ate agora.

O esquema da redirecao funciona assim: no /etc/hosts, eu posso dizer que o www.sitequeativameusoftware.com eh na verdade 192.168.0.41, uma outra maquina que eu tenho na rede, que basicamente responde “opa, beleza, ta ativado!” pra todas as requisicoes que vierem. Eh assim que fizeram com que a ativacao do iPhone nao funcionasse so com o iTMS e a AT&T.

[quote]
O esquema da redirecao funciona assim: no /etc/hosts, eu posso dizer que o www.sitequeativameusoftware.com eh na verdade 192.168.0.41, uma outra maquina que eu tenho na rede, que basicamente responde “opa, beleza, ta ativado!” pra todas as requisicoes que vierem. Eh assim que fizeram com que a ativacao do iPhone nao funcionasse so com o iTMS e a AT&T.[/quote]

Apenas complementando, posso colocar um sniffer para verificar o que está sendo enviado e recebido do programa, com isso consigo emular a autenticação.

Esse esquema é amplamente utilizado no mundo dos games para burlar ferramentas como Nprotect entre outros.

Descobrir o serial é algo trivial, vide Windows e todo tipo de aplicativo que “rola” pela web com seus keygens.

Uma solução simples para ativar seu software é deixar um programa escutando a memoria, quando eu ativar pela primeira vez vejo qual endereço de memória foi alterado e faço um executavel alterado contendo este endereço já preenchido e se quiser algo mais elaborado posso bloquear seu acesso a internet.

Será que a Microsoft não saber criar seriais? :slight_smile:

Bem, eu poderia ficar escrevendo um bom tempo das maneiras de burlar seu sistema, porém volto a dizer, a solução atende o seu negócio, porém o tempo e dinheiro gasto para implementação (13 meses) poderia ser menor se fosse utilizado algo trivial como serial do micro, mac adresss, arquivo ou registro escondido, etc.

Não creio que seus usuários sejam experts em burlar sistemas para exigir tanto esforço, o mesmo poderia ser aplicado em melhorias no sistema como dito antes, mas já que o passado não volta, aproveite sua solução, apenas tome cuidado nesse marketing de inovação.

Agora se for migrar para Java pense bem na maneira de ofuscar seu código, até agora não vi nenhuma produto que faça bem o trabalho.

Abraços,

Eu jah tinha visto um sistema que os caras te enviavam um disquete, tu executava um programinha nele, pegava um serial, ligava pra empresa, e pedia um contra-serial que habilitava algo no disquete, um contador, com o tal de licenças pra ti instalar nos micros.

foda eh que se tu alterasse a data do micro, ele te fudia.
se tu alterasse o arquivo com o contador, ele te fudia tbm…

tinha várias coisas… mas aih quando tu ia desinstalar o troço, metia o disquete, pedia desativaçao do sistema, e tu tinha direito novamente a uma licença… e por aih ia… =D

Gostaria de entrar em contato com Rodrigo Pimenta Carvalho, tenho enviado mensagens privadas, mas sem resposta. Gostaria de saber mais sobre esta solução antipirataria. Rodrigo, se ler esta mensagem favor entrar em contato pelo email contato@profwalter.net.br

[quote=Prof Walter]Gostaria de entrar em contato com Rodrigo Pimenta Carvalho, tenho enviado mensagens privadas, mas sem resposta. Gostaria de saber mais sobre esta solução antipirataria. Rodrigo, se ler esta mensagem favor entrar em contato pelo email contato@profwalter.net.br

[/quote]

Engraçado que li o tópico todo denovo e notei que a solução não passa de um servidor de licenças simples que exige conexão do usuário com a internet. Acho que hoje em dia você consegue que qualquer programador faça algo do tipo.

De qualquer forma, sou contra esquemas de proteção, acho que a melhor maneira de impedir a propagação da pirataria é cobrar preços justos.

De qualquer forma, acho que ele é este aqui: http://www.linkedin.com/pub/rodrigo-pimenta-carvalho/4/217/a42

Obrigado, pelas informações.

[quote=aleck][quote=Prof Walter]Gostaria de entrar em contato com Rodrigo Pimenta Carvalho, tenho enviado mensagens privadas, mas sem resposta. Gostaria de saber mais sobre esta solução antipirataria. Rodrigo, se ler esta mensagem favor entrar em contato pelo email contato@profwalter.net.br

[/quote]

Engraçado que li o tópico todo denovo e notei que a solução não passa de um servidor de licenças simples que exige conexão do usuário com a internet. Acho que hoje em dia você consegue que qualquer programador faça algo do tipo.

De qualquer forma, sou contra esquemas de proteção, acho que a melhor maneira de impedir a propagação da pirataria é cobrar preços justos.

Acho que ele é este aqui: http://www.linkedin.com/pub/rodrigo-pimenta-carvalho/4/217/a42

[/quote]

Olá Aleck, complementando a sua observação, é justo o seu pensamento do preço ser condizente, mas a natureza humana é complicada… mesmo com preço acessível, muitos ainda preferirão o caminho mais fácil, de simplesmente copiar, não se importando com os prejuizos causados com esta atitude para a autoria de um produto que muitas vezes envolve diversas pessoas, na sua maioria arrimo de família que precisam, como todos, de rentabilidade para cuidarem dos seus entes queridos e buscar a realização dos seus sonhos.

Por isto gostaria de uma solução eficiente contra atos mau intencionados com o nosso material de autoria, eu tenho diversos materiais gratuitos e que estão a disposição no endereço www.jkcursos.com.br , mas agora tenho uma equipe com 3 pessoas que precisam de remuneração, então faremos cursos e treinamentos com preços bem acessíveis para serem vistos pela internet. Mas há pessoas que preferem ter o curso em Cd, muitas delas não tem internet com banda larga. Pensando nestas pessoas que trabalham comigo e em conseguir remuneração para estruturarmos nosso trabalho é que estou a procura de uma solução antipirataria.

Os cursos são gerados pelo software de Autoria Visual Class, que no final gera um conjunto de arquivos .doc .txt .jpg .swf .mdb .html .exe entre outros. Os cursos podem ser executados direto no computador off line ou visto pela internet através do navegador padrão.

Estou aberto a sugestões para esta solução. Grande Abraço,

Att.
Prof. Walter Roque Gonçalves
www.jkcursos.com.br

Um bom disassembler resolve essa sua “segurança” em uns 20 minutos. E pelo jeito o caminho mais fácil é atacando a leitura do TXT.

Existem programas que fazem esta proteção, um exemplo é http://www.sdprotector.com/.

Acho que a melhor forma de conter a pirataria é ter algo como fazem com jogos: PSN, BattleNet. Só pensar em algo do tipo para software.

[meu modelo de negócios]

Eu não me preocupo com pirataria, meus sistemas são open source e vendidos a preços super baixos.

Cobro instalação, manutenção, treinamento e customização :wink:

Abraços.

Deixar bem claro quais são as condições para obtenção da licença é algo tremendamente necessário. Termos confusos ou dúbios só irão dificultar o aceite por parte do cliente.

Curioso…
E se eu espelhar o hd?

Você era cracker ???

Eu entendi que isso funciona em rede, parece ter um contador nos acessos ou login do usuario, na se amarra ao hardware.

Se for isso, o pc pode não ter acesso a internet ou estar em redes diferentes

É complicado, como esta homologando?

Como vamos discutir se não fala nada sobre a segurança? Chutes no escuro.

Se seu software é particular, para seus clientes específicos, não vai ter no camelo, bem difícil…

Então txt esta preso a maquina? HD

A pessoa vai ter um key de acordo com a data? Burlado.
Contador de acesso para bloquear? Burlado, se for liberado backup e restore das informações.
Se você libera o CD de instalação e a chave junto, Burlado.

100% antipirataria existe?

[quote=rodrigoallemand]
Só pra entender o porque da pergunta, existe um WebService disponibilizado pela minha empresa (minha, eu, rs) que faz o controle de licenças flutuantes para os sistemas que eu desenvolvo. Mas pra isso eu preciso de uma conexão…[/quote]

Com pré-requisito uma conexão já muda tudo!!!

Eu iria verificar algumas informações do banco para ver se bate com a do acesso anterior…

Faça o seguinte Carvalho,

Coloque um prémio para quem burlar seu sistema

Ou contrate uma equipe para homologar

:twisted:

[quote=lavh]

Legal cara.

Mas sinceramente, essa sua solução está longe de ser eficiente e inovadora, como você a descreveu.

Deve funcionar bem pro seu caso, então ótimo, é o que você precisa, mas não ache que ela é a solução
para a pirataria no mundo.

[]'s[/quote]

Eu não posso falar que tenho uma solução sem homologar, esta errado isso…

Eu trabalhei com quase 100%…

Eu tinha que ir no cliente instalar, ligava para empresa informando alguns dados da maquina e era gerado um key, o usuario não sabia qual era o key e quando ela precisava de algo como formatar a maquina tinha que ir no cliente de novo.

Key em cima do HD e Hora de instalação e acho que alguma coisa na base