Ovos de Páscoa como proteção IP em software

11

Trabalho em software embarcado e, por algum motivo, a gerência deseja ocultar um ovo de Páscoa como meio de proteção de IP. Eles chamam de marca d'água e, como nosso software interage com o feed de visualização de vídeo (a imagem exibida na tela antes de você tirar uma foto), eles querem que eu implemente um gatilho que reaja a alguma entrada de vídeo incomum (um código de konami de vídeo como escuro - brilhante - escuro - brilhante - tanto faz). Quando esse gatilho é acionado, algo estranho acontece (que está fora do comportamento normal do software).

O objetivo é verificar se nosso software está incluído em um dispositivo. Parece uma boa ideia? Eu tenho muitos argumentos contra esse movimento:

  • E se o código konami for muito sensível e o usuário o acionar?
  • Isso watermarktem algum valor legal?
  • E se esse "recurso" for descoberto pelo cliente?
  • A penalidade de desempenho deve ser muito pequena, pois o soft run em dispositivos pequenos.
  • Eu sou o único a desenvolver esse gatilho. Se as coisas derem errado, qual é a minha responsabilidade?

Qual a sua opinião sobre esse método? Não consigo encontrar um link, mas lembro de ter visto uma resposta neste site sugerindo que colocar ovos de Páscoa para fins de proteção era uma boa idéia. Alguém já tentou com bons resultados?

Simon Bergot
fonte

Respostas:

8

Há pelo menos um precedente, conforme descrito no artigo da Wikipedia sobre ovos de Páscoa :

A implementação do microchip CVAX do cpu MicroVAX continha em suas gravuras a frase russa no alfabeto cirílico "VAX: Quando você se importa o suficiente para roubar o melhor", em um esforço para costurar potenciais fabricantes de clones que roubam propriedades intelectuais no bloco soviético.

Um pouco mais detalhadamente sobre isso, pode ser encontrado neste artigo sobre CVAX (que é a referência à citação acima):

Finalmente, a pista do escriba continha o lema cirílico "VAX: Quando você se importa o suficiente para roubar o melhor". Em 1983, uma Agência de Inteligência Sem Nome me deu a redação, dizendo que eles conseguiram um VAX-11/780 roubado que estava executando um complexo de mísseis SS20 soviético. Sabendo que alguns CVAXs acabariam na URSS, a equipe queria que os russos soubessem que estávamos pensando neles.

Conforme suas perguntas específicas:

E se o código konami for muito sensível e o usuário o acionar?

O código da Konami é muito conhecido, portanto, a possibilidade de um usuário acioná-lo é maior. Se você seguir com o ovo da Páscoa, deverá escolher uma sequência original (e maior). Como seu ovo de Páscoa deveria ser um mecanismo de proteção em vez de diversão irracional, seria melhor que a sequência não fosse conhecida fora da sua empresa.

Esse tipo de marca d'água tem algum valor legal? Eu sou o único a desenvolver esse gatilho. Se as coisas derem errado, qual é a minha responsabilidade?

Consultar um advogado. Depende muito da sua localidade e das especificidades do seu contrato. De qualquer forma, seria melhor ter alguma prova por escrito de que a gerência pediu explicitamente o ovo da Páscoa. Uma troca de e-mails em que é mostrado que você levantou algumas preocupações deve ser suficiente.

E se esse "recurso" for descoberto pelo cliente?

Depende do cliente. Alguns podem rir, outros podem processar. Minha opinião é que, como o ovo da Páscoa é incluído como meio de proteção de IP, o cliente deve ser informado sobre todos os outros recursos que você criar para ele / ela.

A penalidade de desempenho deve ser muito pequena, pois o soft run em dispositivos pequenos.

Sim deveria, obviamente. Se você descobrir que implementar o ovo de Páscoa tem uma penalidade de desempenho mensurável, esse seria o melhor motivo para não fazê-lo.


Eu não tenho opinião de qualquer maneira. Se você consultar um advogado e cobrir todas as suas bases jurídicas, vá em frente, provavelmente será inútil, mas você nunca sabe.


Atualização: O exemplo do CVAX é obviamente um exemplo de hardware, mas acho que não existem exemplos mais relevantes (para software e / ou software incorporado) que eu conheça. Baseei a resposta principalmente para responder à Has anyone tried itparte da pergunta. Pesquisei outros exemplos, não encontrei nenhum e agora tenho uma opinião:

É , provavelmente, não é uma idéia muito boa. (não a parte do ovo de Páscoa, a means of IP protectionparte). Como a idéia não é original nem inovadora (os contextos podem ser diferentes, mas semelhantes), se funcionasse, haveria pelo menos alguns exemplos por aí.

yannis
fonte
Obrigado pela sua resposta. Eu tinha lido sobre a história do MicroVAX, mas o contexto é um pouco diferente (produto de hardware). Concordo com a necessidade de informar o cliente.
Simon Bergot
@ Simon, pensei que você tivesse visto, mas baseei minha resposta para mostrar que o precedente mais conhecido aconteceu há muito tempo, em um contexto completamente diferente. Se você não conseguir encontrar exemplos mais recentes sobre software, isso seria algo que você deveria considerar passar para o gerenciamento: aconteceu há muito tempo, ninguém mais o fez desde então, provavelmente porque é uma má ideia . Na minha experiência, quando o gerenciamento apresenta idéias tão descoladas, provar a elas que sua ideia não é original nem inovadora pode ser a melhor desculpa para não implementá-la.
precisa
A diferença é que parece que o lema russo não era uma parte funcional do chip e, portanto, não mudou o comportamento. Eu gostaria de ter cuidado com qualquer coisa que possa causar uma saída imprevisível (para o cliente) em um dispositivo incorporado.
precisa
0

Se você fosse um fornecedor de um fabricante, eu esperaria que isso fosse divulgado, pois está "fora do comportamento normal do software".

Se o seu cliente é o usuário final, isso depende do que o software faz quando o "código" é inserido.

smp7d
fonte
Nós vendemos o software para um OEM. Portanto, devemos ser transparentes quanto a isso.
Simon Bergot
0

Não vejo nada de errado com um ovo de páscoa não revelado, desde que seja extremamente improvável que um usuário o encontre e se for extremamente sutil. Se alguém tropeçar nele, não deve vê-lo como algo diferente de uma falha sutil ou inseto trivial cosmético.

Eu tive gerentes discutindo comigo por uma funcionalidade que é muito menos ética do que um ovo de páscoa não divulgado, coisas de malware limítrofe, por isso tenho problemas para ver isso como um problema.

Em um projeto que eu herdei, descobri uma classe C # gigantesca e enganosa, chamada algo para o efeito, UIDataTableColumnRenderer com mais de 3 MB de tamanho. Eu descobri um mini-jogo inteiro dentro dessa classe, imagens e toda a base64 codificada em strings dentro da classe. Era basicamente um jogo de tiro em que o PC era um desenvolvedor que tentava abater um ataque implacável de bugs e requisitos mal escritos que os PMs e os proprietários de produtos estavam lançando no software. Era meio engraçado, porque ficava cada vez mais difícil e você nunca ganha, eventualmente os bugs e os maus requisitos destroem o software e o PC perde o emprego.

Foi de longe o ovo de páscoa mais impressionante que eu já encontrei.

maple_shaft
fonte
3
Eu não consideraria um ovo de páscoa de 3mb em um dispositivo incorporado inofensivo.
yannis
2
@YannisRizos - Isso claramente não estava em um dispositivo incorporado e, se era e tinha a capacidade de usar C #, a classe de 3 MB não era uma grande preocupação.
Ramhound #
@ Ramhound Sim, eu sei, mas a questão está no contexto do software incorporado.
precisa
0

Eu sou o único a desenvolver esse gatilho. Se as coisas derem errado, qual é a minha responsabilidade?

Eles não estão pedindo para você infringir a lei. Sua responsabilidade é apenas para o seu empregador. Eu escreveria um e-mail cuidadoso informando todas as preocupações que você tem para que elas estejam registradas. Então você faz o que seu chefe diz ou desiste.

Jeremy
fonte