Código-fonte em disputa: similaridade, derivação, autoria e licenciamento de software

Dois sistemas podem oferecer a mesma função e ter implementações independentes. Também podem apresentar interfaces diferentes e compartilhar estruturas internas relevantes. Em uma disputa sobre software, a comparação visual de telas ou um percentual produzido por ferramenta genérica raramente esclarece como os programas se relacionam.

O portal Perícia Autoral e Industrial da IBPTECH dedica conteúdos específicos à similaridade e possível derivação em software e à autoria e individualização em códigos-fonte. Para tomadores de decisão, essa frente conecta engenharia de software, evidência digital, licenciamento e assistência técnica.

O objeto não é apenas o código visível

Repositórios, árvores de código-fonte, histórico de commits, scripts de construção, dependências, bytecode, binários, configurações e documentação podem integrar o exame. O material disponível define quais perguntas são tecnicamente possíveis.

Comparar versões diferentes daquelas efetivamente utilizadas no período controvertido pode produzir um resultado irrelevante. Por isso, o inventário deve registrar origem, versão, hash, tamanho, datas e ambiente.

Preservação precisa respeitar o ecossistema de desenvolvimento

Um repositório contém relações entre commits, branches, tags, autores aparentes e arquivos. Exportar apenas o estado atual elimina parte dessa história. Ambientes de integração e entrega contínuas também podem conservar logs, artefatos e parâmetros importantes.

A coleta deve preservar estrutura e contexto, dentro das autorizações existentes. Cópias de trabalho podem ser normalizadas para análise, desde que o original e todas as transformações permaneçam documentados.

Função semelhante não demonstra cópia

Softwares sujeitos aos mesmos requisitos tendem a apresentar fluxos e componentes parecidos. Protocolos, padrões, interfaces obrigatórias, bibliotecas e restrições técnicas podem limitar as alternativas de implementação.

O exame precisa separar semelhança funcional, textual, estrutural e histórica. A Lei nº 9.609/1998 disciplina a proteção dos programas de computador no Brasil, enquanto a análise pericial se concentra nos elementos técnicos observáveis.

A comparação começa no texto, mas não termina nele

Tokenização e métricas de sequência ajudam a localizar cópias literais ou alterações superficiais, como renomeação de variáveis e mudança de formatação. Comentários e nomes idiossincráticos podem ser informativos, desde que não provenham de templates ou terceiros.

Coincidências textuais devem ser mapeadas por arquivo, módulo e função. Um percentual agregado esconde se a convergência está concentrada em trecho raro ou dispersa em código trivial.

Estruturas sintáticas resistem a mudanças cosméticas

Árvores sintáticas abstratas — AST — representam a organização do código além de espaços, comentários e parte da nomenclatura. Comparações estruturais podem revelar relações que uma análise literal não identifica.

Ainda assim, estruturas semelhantes podem decorrer da linguagem, do framework ou do problema resolvido. Corpora de controle e exclusão de boilerplate ajudam a interpretar raridade e relevância.

Fluxo de controle e de dados examina a lógica

Grafos de fluxo de controle e dependência representam caminhos de execução e relações entre informações. São úteis quando o código foi extensamente refatorado ou portado, mas exigem maior custo e validação.

O portal da IBPTECH descreve uma progressão por camadas — tokens, AST, fluxo, bytecode e binários — conforme os materiais e a complexidade. A escolha deve ser proporcional à pergunta e não uma demonstração de ferramentas.

Bytecode e binários permitem examinar materiais sem fonte

Quando o código-fonte não está disponível, sequências de instruções, símbolos, imports, strings, seções e funções podem ser comparados. Engenharia reversa e diffing binário possuem limitações relacionadas a compilador, otimização, empacotamento e ofuscação.

Diferenças binárias também não provam independência: o mesmo código pode produzir artefatos distintos. O relatório deve explicar o que sobreviveu às transformações e o que ficou indeterminado.

Dependências de terceiros precisam ser retiradas da conta

Frameworks, bibliotecas, código aberto, templates, SDKs e componentes gerados podem aparecer em projetos independentes. Arquivos de lock, manifestos, licenças e histórico ajudam a identificar material compartilhado legitimamente.

Se conteúdo de terceiros for contado como coincidência entre as partes, a métrica fica artificialmente elevada. A triagem informada é requisito anterior à interpretação.

Código gerado por ferramentas e IA muda o contexto

Geradores, scaffolding, compiladores, low-code e ferramentas de inteligência artificial podem produzir padrões repetidos ou difíceis de atribuir. A presença desses mecanismos deve ser investigada por versões, configurações, registros e processo de desenvolvimento.

Não se deve presumir que toda regularidade decorra da mesma origem. O impacto técnico depende de quanto material foi gerado, como foi incorporado e quais contribuições humanas permaneceram observáveis.

Autoria aparente no repositório não é autoria automática

Campos de commit podem refletir contas compartilhadas, bots, merges, cherry-picks e migrações. Comandos como blame mostram a última alteração registrada, não necessariamente a criação intelectual de todo o trecho.

A individualização de contribuições combina histórico, conteúdo, cadência, tarefas, comunicações e persistência das alterações. O portal da IBPTECH também apresenta sinais estilísticos e processuais como fontes que podem convergir ou divergir.

Estilometria de código exige validação

Indentação, nomenclatura, preferências sintáticas, granularidade de funções e métricas de complexidade podem formar perfis. Formatadores, linters, revisores e padrões corporativos, entretanto, reduzem ou alteram esses sinais.

A atribuição deve utilizar amostras comparáveis e testes de robustez. Resultados probabilísticos precisam expressar incerteza e não ser convertidos em identificação categórica sem suporte.

Licenciamento é confrontado com o uso real

Disputas podem envolver quantidade de usuários, instalações, ambientes, funcionalidades, prazo, território, código aberto, sublicenciamento ou utilização em SaaS. Contratos e métricas técnicas precisam ser lidos em conjunto.

Inventários, registros de implantação, contas, telemetria e configurações podem ajudar a verificar o uso. A perícia descreve o fato técnico; interpretação das cláusulas e efeitos jurídicos cabe à equipe competente.

Engenharia reversa não é uma conclusão jurídica

Analisar binários pode ser necessário para comparação, interoperabilidade, segurança ou reconstrução. A existência da atividade não demonstra, por si só, licitude ou infração.

O laudo deve registrar finalidade, escopo, materiais e procedimentos. A qualificação depende da lei, dos contratos e das circunstâncias do caso.

Testes de robustez tornam a conclusão mais defensável

Renomeação, formatação, recompilação, minificação e mudanças de configuração permitem avaliar se um achado persiste diante de perturbações. Coincidências que desaparecem com alteração cosmética têm significado diferente das que permanecem em múltiplas camadas.

O portal especializado ressalta que não há limiar técnico universal. Parâmetros, ferramentas, versões e benchmarks precisam integrar o relatório.

Segredo de negócio exige protocolo próprio

Código-fonte e arquitetura podem conter informação altamente confidencial. A coleta e a revisão devem aplicar controle de acesso, ambientes segregados, registro de consulta e produção limitada ao necessário.

Partes podem acordar protocolos de comparação que permitam contraditório sem divulgação excessiva. Sigilo não deve eliminar reprodutibilidade, mas pode determinar como anexos e trechos serão apresentados.

e-Discovery e perícia computacional cumprem funções complementares

O e-Discovery ajuda a identificar e organizar mensagens, documentos, tickets, repositórios e arquivos relevantes. A perícia computacional aprofunda a aquisição e a interpretação de artefatos que exigem conhecimento especializado.

Em conjunto, essas frentes reconstroem o processo de desenvolvimento e licenciamento. A análise de similaridade vem depois, com materiais preservados e contexto suficiente.

Como a IBPTECH apresenta sua atuação

O portal Perícia Autoral e Industrial apresenta exames de similaridade, derivação, plágio, autoria e individualização de contribuições em software. A descrição institucional da área também inclui licenciamento, uso de código-fonte, engenharia reversa, evidência digital e suporte a disputas.

A atuação pode compreender avaliação preliminar, exame técnico, laudo, parecer, contralaudo e assistência técnica, conforme a demanda. O escopo deve indicar versões, camadas de análise e questões contratuais relevantes.

Do percentual de coincidência à história técnica verificável

O resultado útil não é uma cifra isolada. É uma explicação sobre onde a semelhança aparece, quanto material envolve, qual sua raridade, como se comporta diante de transformações e que outras fontes sustentam ou enfraquecem a hipótese de derivação.

Para empresas e bancas jurídicas, essa estrutura permite discutir software como ativo técnico complexo, preservando limites entre semelhança, autoria, titularidade, licença e responsabilidade.

Proposta Técnica

Solicitar informação ou proposta técnica sobre este serviço