Go Down

Topic: Bloqueando Codigo (Read 2198 times) previous topic - next topic

lucas-appr2

Boa Tarde Pessoal!

Gostaria de saber se tem um modo de "bloquear meu codigo" ou seja, ninguem conseguir saber o codigo que foi está gravado em meu Arduino.


Obrigado,
Lucas

Wagner Sartori Junior

O código que está gravado no arduino é um binário. Qualquer um conseguiria pegar o código de volta mas eu não sei uma maneira simples de "descompilar". Se você guardar o código fonte seu código está seguro no arduino.

bcas

Simples, remova fisicamente o conector usb! hehehe
afinal, para que você precisa "bloquear" o código?
Somente quem souber do que se trata e souber interagir com o IDE vai poder "conhecer" o seu código...

bubulindo


O código que está gravado no arduino é um binário. Qualquer um conseguiria pegar o código de volta mas eu não sei uma maneira simples de "descompilar". Se você guardar o código fonte seu código está seguro no arduino.


O problema não é tanto descompilar o código... mas fazer cópias do sistema.


Simples, remova fisicamente o conector usb! hehehe
afinal, para que você precisa "bloquear" o código?
Somente quem souber do que se trata e souber interagir com o IDE vai poder "conhecer" o seu código...



Não necessariamente... imagina que ele está a vender um produto novo... alguém pode tirar o binário de dentro do Arduino e gravá-lo num chip novo.

Não é por nada que os AVR têm a possibilidade de bloquear o código.
Para responder à pergunta inicial, para bloquear o código dentro do Arduino tens de alterar uns fuses para bloquear o chip.
This... is a hobby.

lucas-appr2

Entendi, obrigado a todos, mas acho que nao ha necessidade, a placa vai ficar dentro de uma central que "percorrem" 220 volts.... Acho que ninguem vai ter coragem de mecher ali dentro....

Wagner Sartori Junior

Vivendo e aprendendo!

Fazer cópias, sim é possível mesmo. Não sabia dos fuses para bloquear o acesso a Flash do programa. Vou pesquisar mais sobre isto porque me interessa também.

lucas-appr2


Vivendo e aprendendo!

Fazer cópias, sim é possível mesmo. Não sabia dos fuses para bloquear o acesso a Flash do programa. Vou pesquisar mais sobre isto porque me interessa também.

Se achar algo me passe pois tambem me interessa!

bubulindo


Entendi, obrigado a todos, mas acho que nao ha necessidade, a placa vai ficar dentro de uma central que "percorrem" 220 volts.... Acho que ninguem vai ter coragem de mecher ali dentro....


Tenho a certeza que vais incluir um interruptor para desligar os 220V. Se alguém quiser, pode facilmente chegar ao chip e tentar tirar de lá o programa. ;)
This... is a hobby.

fabio_h

#8
Dec 13, 2011, 01:54 pm Last Edit: Dec 13, 2011, 02:00 pm by fabiohbm007 Reason: 1
Como esse assunto me interessa também, ontem fiz alguns testes no Lock Bits de um Atmega328p,
Para programar o chip, eu uso o próprio FTDI do Arduino nesse site explica como:http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html

Lendo o DS do Atmega, os bits 0 e 1 do LOCK BYTE quando 0(programado) Não permite mais a mudança
dos Fuse Bits e Lock Bits e também não permite a leitura do Flash e do Eeprom.
No meu Arduino 2009 Clone, que estava com a ultima versão do Optiboot os Lock Bits eram 2F(00101111)
zerei os dois ultimos bits para 2C(00101100) e gravei.
Aparentemente o bootloader funciona corretamente e manda novas sketches sem problema, mas com programa do primeiro link não mais consigo ler a Flash e Eeprom.

Façam o LOCK por sua conta e risco. Se quiserem voltar ao estado anterior será necessário apagar o chip, e seguir os passos do primeiro link

Links:
DS atmega328p : http://www.atmel.com/dyn/resources/prod_documents/doc8271.pdf  pag. 297 em diante.

EDIT: Não cheguei a ver como faz no Atmega8.

Wagner Sartori Junior

Bem legal isto... vou habilitar em todos os meus projetos.

Go Up