A inteligência artificial já consegue copiar programas e jogos?
Ultimamente estamos ouvindo as pessoas dizerem que fizeram uma operação reversa para clonar aplicativos de grandes empresas e até mesmo jogos que podem ser clonados para jogar através do computador.
Isso parecia impossível, mas agora com a Inteligência Artificial criaram uma ferramenta que transforma números binários em códigos. Os programas dessas grandes empresas são fechados e quando são salvos ele se tornam binários, mas com o REA que significa Reverse Engineer Anything, algo como uma "engenharia reversa".
Isso pode mudar a forma de como vemos os software hoje. Por enquanto, estão clonando os programas que estão instalados em formato "off-line".
Já tem um repositório no Github que já tem várias estrelas, inclusive um usuário chegou a criar novas versões da Adobe e da Microsoft, como os programas do Office.
O que é o REA (Reverse Engineer Anything)?
O REA é uma ferramenta que utiliza inteligência artificial para ajudar a descobrir como um programa funciona, mesmo quando não temos acesso ao código original.
Quando instalamos um aplicativo, normalmente recebemos uma versão preparada para funcionar no computador, e não o conjunto de instruções que o programador escreveu originalmente. Esse arquivo permite que o programa funcione, mas esconde muitos detalhes de sua construção.
É aí que entra a engenharia reversa: em vez de partir das instruções para chegar ao programa pronto, os pesquisadores fazem o caminho contrário. Eles examinam o que receberam e tentam descobrir como aquilo funciona.
O REA ajuda nesse trabalho utilizando inteligência artificial para analisar informações, investigar funções e escrever código que reproduza o comportamento encontrado.
Na prática, tarefas que poderiam exigir muitas horas de trabalho especializado passam a contar com a ajuda de agentes de IA, capazes de realizar investigações e testar diferentes possibilidades.
Isso não significa que a ferramenta consiga reconstruir qualquer programa automaticamente. Significa que uma atividade antes muito trabalhosa pode se tornar mais rápida em determinadas situações.
Qualquer programa pode ser copiado pela inteligência artificial?
Ainda não. É preciso separar duas coisas que muitas vezes são tratadas como se fossem iguais: criar um programa parecido com outro e reconstruir o programa original com grande fidelidade.
Imagine que alguém queira criar um aplicativo de anotações semelhante ao Bloco de Notas. É possível desenvolver uma interface com aparência parecida e implementar recursos como escrever textos, criar listas e organizar informações.
Isso, por si só, não significa que a pessoa tenha reconstruído o Notas original.
Um aplicativo completo pode possuir centenas de recursos, integração com outros serviços, mecanismos de segurança, armazenamento de informações e funcionalidades que não aparecem na tela inicial.
Nos jogos, o desafio é ainda maior. Não basta desenhar os personagens e reproduzir os cenários. É necessário fazer os movimentos, as colisões, os sons, as regras e os demais elementos funcionarem corretamente.
Também existem programas que dependem de servidores externos. Mesmo que alguém consiga reconstruir boa parte do aplicativo, isso não significa que conseguirá recuperar os servidores e os serviços que deixaram de existir.
Por isso, a resposta mais honesta é que a inteligência artificial já ajuda a reconstruir partes importantes de determinados programas, mas ainda não existe uma solução que garanta a cópia perfeita de qualquer software.
As empresas de software precisam mudar sua forma de negócio.
Sim, mas não significa que o modelo atual de desenvolvimento de programas esteja com os dias contados.
Durante muito tempo, manter o código-fonte fechado dificultou que outras pessoas entendessem como um programa havia sido construído. Isso continua tendo importância, mas não impede que o funcionamento de um aplicativo seja investigado.
A inteligência artificial pode diminuir parte dessa dificuldade. Isso pode tornar mais fácil desenvolver alternativas a programas existentes, porém, uma empresa não oferece apenas um conjunto de códigos. Ela também pode oferecer atendimento, atualizações, segurança, integração com outros serviços e uma experiência de uso que levou anos para ser aperfeiçoada.
Imagine dois programas com funções semelhantes. Um deles funciona de maneira confiável, recebe atualizações e possui suporte técnico. O outro apenas reproduz algumas de suas características.
Mesmo que o segundo tenha sido criado rapidamente, isso não significa que substituirá o primeiro.
O que pode mudar é a facilidade de entrar nesse mercado. Algumas equipes poderão desenvolver soluções que antes exigiriam muito mais tempo e dinheiro.
Para as empresas, isso aumenta a importância de inovar, oferecer bons serviços e manter seus produtos seguros.
E se eu comprei um programa, eu posso fazer tudo com ele?
Comprar um programa ou adquirir uma licença de uso não significa, automaticamente, que você adquiriu os direitos autorais sobre ele.
Você pode ter autorização para utilizar o software dentro das condições estabelecidas, mas isso não equivale a uma autorização irrestrita para copiar, modificar e comercializar novas versões.
Também é importante entender que reescrever o código não resolve necessariamente todas as questões jurídicas. Uma nova versão pode reproduzir outros elementos protegidos.
Por isso, quem pretende publicar ou comercializar uma reconstrução de um programa proprietário deve avaliar os direitos envolvidos e buscar orientação jurídica quando necessário.
A existência de uma ferramenta de código aberto, como o REA, não muda essa conclusão. A licença do REA permite usos de seu próprio código nos termos estabelecidos, mas não concede automaticamente direitos sobre os programas analisados com ele.