Arduino virou um produto... Engenharia Reversa? Criptografia? Qual a segurança?

Olá Senhores!

Então, a ideia é, eu fiquei horas em cima de uma protoboard, compilando códigos e fazendo testes, criando um produto, e chega o momento que quero transformar isso em uma versão comercial, a parte de hardware, eu poderia até raspar os chips, para não identificar quais são, a placa e etc... 

1 - Gostaria de saber, se existe algum tipo de criptografia para gravar de forma protegida contra engenharia reversa. 

2 - Eu acomodando a placa dentro de um case, pequeno, o que poderia ser colocado junto para, depois que testar enviar para os clientes e evitar cópias, da placa e etc... Ouvi falar de uma espécie de pixe de asfalto, mais não sei se é mito... ou onde eu conseguiria isso... Pensei em cola quente de silicone, mais seria facilmente retirada.... A ideia, é se chegar a ser aberto, e querer chegar na placa, ela deveria ser danificada pra poder enxergar...

O produto, depois de desenvolvido é simples, mais não quero entregar de "graça" pra ninguém.

Alguém já fez algo parecido, ou tem uma ideia que pode me ajudar? 
Desde já agradeço a atenção e um abraço.

Exibições: 2507

Responder esta

Respostas a este tópico

Lock bits servem para proteger o conteúdo da memória .

Leia sobre lock bits - LB1 e LB2 

http://www.embedds.com/all-you-need-to-know-about-avr-fuses/

José Gustavo, olha isso 

http://www.instructables.com/id/How-to-change-fuse-bits-of-AVR-Atme...

A ideia é essa correto?

Não vejo motivo para temer, você pode escrever no MCU, mas não ler o que esta escrito, se você não revelar seu código, a pessoa não terá como ler o que voce escreveu.

Abs.

Se tiver acesso ao conteúdo da memória, você poderá copiar os dados e depois descodificar as rotinas de linguagem de máquina (Disassembler) 

https://pt.wikipedia.org/wiki/Desmontador

É possível clonar sim. 

Por isso é importante o uso dos Lock bits.

José,

eu não digo que é impossível, mas note, um projeto que mereça todo este tempo e conhecimento para clonar, sinceramente....... Acho que para o cara que tem essa capacidade, fica mais fácil pra ele escrever seu próprio code, não ha nada que não possa ser copiado, e até melhorado, mas dependendo da situação o custo beneficio não compensa, salvo que o projeto seja  fazer um tapete voador, esse eu faria encriptar com 128 bits, mas convenhamos....Se a pessoa quer fazer isso, então não tem o espirito open source, nem deveria usar suas ferramentas, os códigos são  livres sim, mas tem uma identidade e leis para proteger-se também se necessário.

Salve o Código Livre! Vida longa ao open source!

Abs,

Estou analisando isso, e concordo muito com o código livre, devemos sim compartilhar, porém, não temos todos os códigos disponíveis que precisamos, podemos nos ajudar com exemplos, que isso faz aquilo, esse faz isso enfim, é como se fosse um conjunto de peças de lego, todas as peças podem e devem ser de domínio publico, mais, depois que você monta, cria algo especifico, personalizado para uma aplicação particular, eu não concordo que devemos compartilhar, o conhecimento deve ser compartilhado, o principio de todos ser ensinados a pescar... Não entregar o peixe pronto, e nesse sentido que eu quis fazer o bloqueio.... 
Claro, que depois que pronto, qualquer um que bater os olhos, vêm em sua cabeça, eu consigo fazer isso, inclusive melhorar alguns aspectos, eu mesmo, quando entro no meu serviço, tem uma cancela digital com RFID, ai vc pensa, isso esta dentro de um loop hahaha, mais eu não tenho o código, e não seria justo eu poder copiar, o mais sensato seria pesquisar como funciona isso e ter o codigo open source... 
Esse é meu ponto de vista....

Te dou outra sugestão de estratégia comercial: coloque os códigos em open-source e o hardware aberto na Internet.

Agente fala sempre pra nunca revelar o "pulo do gato", é claro, esse você guarda para você mesmo.

Mas a questão é que até um eventual concorrente chegar ao nível de desenvolvimento em que você está, vai levar pelo menos um ano (ou mais).

Até lá, você já evoluiu muito no produto e está muito na frente dele, porque conta com uma comunidade de desenvolvedores. Isso porque, nessa área, know-how não se compra nem adquire da noite para o dia: mesmo tendo recursos na mão, o desenvolvimento de um produto custa tempo e dinheiro.

E dependendo da complexidade do que estiver fazendo, mesmo travando tudo, um profissional como o José Gustavo aí vai bater o olho e dizer "Ah! eu sei fazer isso, é simples!" Para ele deve ser mesmo. De que adiantou tanta protećão?

Veja o caso do Arduino:

200 cópias vendidas em 2008.

mais de 1 milhão em 2013.

Isso porque a indústria não parou de copiar o Arduino. Agora imagine se os professores de Ivrea tivessem patenteado o hardware e criptografado o software. Muitos de nós nunca teriamos ouvido falar em Arduino.

Não precisa ser radical, nada é branco ou preto, existem meio-termos que você pode (e deve) considerar.

Atualmente penso também como o Alexandre. 

Os chineses estão imbatíveis ! 

Você pode lançar um produto super sofisticado e excelente. 

Depois de alguns meses, os chineses irão lançar um produto melhor que o seu e mais barato !

Em algum lugar eu li isso - reflita sobre isso (não me lembro das quantidades corretas) :

Se o Brasil tem 10.000 cientistas , a China  tem 1.000.000 !

Se o Brasil tem 500.000 engenheiros, a China tem 25.000.000 !

Não dá para comparar o potencial da China. Mesmo que qualidade da produção desses profissionais não fosse boa, a quantidade de informação produzida poderá ser melhor  e mais apurada pelo excesso de pesquisa. 

Por isso, às vezes consulto sites chineses e uso o tradutor do Google, he he.

Somente para adicionar a seu comentário, li esse artigo (um puco antigo) mas que o autor mostra algumas vulnerabilidades do sistema de proteção contra  leitura não autorizada em memórias de mcu.

https://www.cl.cam.ac.uk/~sps32/mcu_lock.html

Caro Flávio, os microcontroladores citados no artigo tem mais de 10 anos.

Acho que isso não se aplica para  os microcontroladores atuais. 

Em 10 anos muitos avanços ocorreram. 

Com os lock bits, no meu entender é impossível ler o conteúdo do programa. 

Olá,
É uma pena ver que estão usando ferramentas open source desta forma...

Compartilhei minha ideia respondendo Carlos kwiek 
Seu comentário me fez refletir, mais tenho ponto de vista um pouco diferente...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço