
Estrazione programma da PIC12C672
Moderatore:
Paolino
10 messaggi
• Pagina 1 di 1
1
voti
Salve a tutti, ho da poco intrapreso lo studio dei PIC e siccome sono appassionato di impianti d'allarme ho acquistato, in svendita, un kit della futurel FT343 riguardante un antifurto monozona. Ho notato che in questo kit vi è un PIC12C672 già programmato per svolgere la sua funzione. Ho cercato su internet se vi fosse il codice sorgente o meglio il programma scritto in "C" o equivelente per "giocarci" a fare delle modifiche e/o riprogrammare un altro PIC12C672 vergine per studiare i risultati delle modifiche effettuate sul codice, ma ho trovato tutto tranne il codice scritto in chiaro. Da quello che ho letto in giro sembra che non sia possibile visualizzare il codice perché generalmente vengono protetti, ma forse qualcuno di Voi Cervelloni è in grado di svelarmi, in maniera semplice possibilmente, per estrarre, copiare e manipolare il codice sorgente del PIC presente nel kit da me acquistato. Faccio presente che ho a disposizione il PICkit3 della microchip. Grazie anticipatamente. 

3
voti
Che io sappia, se il micro è protetto, non è possibile estrarre il contenuto della flash.
E meno male che è così.
Ma voglio essere sincero con te: ho sempre realizzato e venduto prodotto basati su microcontrollori e sono assolutamente contrario alla copiatura. Copiare un firmware equivale a rubare.
Immagina di guadagnarti da vivere sviluppando prodotti, di aver speso mesi e mesi per realizzare un programma, per ingegnerizzare il prodotto e creare un canale di vendita. Immagina che arrivi qualcuno che tomo tomo cacchio cacchio ti copia il prodotto, vendendolo chiaramente a meno perché non ha dovuto sopportare costi ed impiegarci tempo.
Saresti contento?
E meno male che è così.
Ma voglio essere sincero con te: ho sempre realizzato e venduto prodotto basati su microcontrollori e sono assolutamente contrario alla copiatura. Copiare un firmware equivale a rubare.
Immagina di guadagnarti da vivere sviluppando prodotti, di aver speso mesi e mesi per realizzare un programma, per ingegnerizzare il prodotto e creare un canale di vendita. Immagina che arrivi qualcuno che tomo tomo cacchio cacchio ti copia il prodotto, vendendolo chiaramente a meno perché non ha dovuto sopportare costi ed impiegarci tempo.
Saresti contento?
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
1
voti
Salve
Kirk, non sono un esperto di PIC, ma immagino che
TardoFreak abbia centrato il problema, ovvero la non possibilità di copiare il codice sorgente del PIC anche solo per motivi didattici, rende sicura la non copiabilità dello stesso e quindi garantirebbe giustamente l'esclusiva al realizzatore del progetto che ne detiene tutti i diritti, pertanto la soluzione (mi sembra di capire nel tuo caso) relativamente ad un sistema di allarme per esperimenti o per avere un punto di partenza è quella di trovare in rete un codice aperto di un èrogetto semplice e poi lavorarci su, invirtù delle conoscenze acquisite.
Un saluto
mir
Un saluto
mir
1
voti
Si, avete ragione, ma è pure vero che programmini semplici e aperti a tutti sono utili per apprendere e addirittura migliorare le loro funzioni. Comunque la mia proposta era nettamente a scopo didattico e se qualcuno ha qualche file di programma sorgente semplice da inviarmi gliene sarei molto grato. Grazie delle risposte
3
voti
In realta, giusto per informazione, anche se un PIC ha il bit code protection alto, e' comunque possibile estrarre
il codice sulla flash, MA e' un'operazione difficile e sicuramente alla portata di pochi laboratori attrezzati.
Per farlo si agisce fisicamente sul PIC, ovvero con degli acidi si scoglie il package che ricopre i circuiti interni, e poi con microscopio e apposite apparecchiature si va a leggere *fisicamente* sulla flash bit per bit il contenuto.
Insomma, non e' una cosa che si fa cosi' per divertirsi.... ma e' giusto sapere che e' possibile e che, potenzialmente, una grande azienda con grandi budget concorrente potrebbe benissimo usare questa tecnica per studiare il prodotto della concorrenza...
Esempio di articolo che ne parla (ma se ne trovano parecchi) http://hackaday.com/2011/06/27/bunnies- ... ntrollers/
il codice sulla flash, MA e' un'operazione difficile e sicuramente alla portata di pochi laboratori attrezzati.
Per farlo si agisce fisicamente sul PIC, ovvero con degli acidi si scoglie il package che ricopre i circuiti interni, e poi con microscopio e apposite apparecchiature si va a leggere *fisicamente* sulla flash bit per bit il contenuto.
Insomma, non e' una cosa che si fa cosi' per divertirsi.... ma e' giusto sapere che e' possibile e che, potenzialmente, una grande azienda con grandi budget concorrente potrebbe benissimo usare questa tecnica per studiare il prodotto della concorrenza...
Esempio di articolo che ne parla (ma se ne trovano parecchi) http://hackaday.com/2011/06/27/bunnies- ... ntrollers/
Franco (nextime) Lanza
Direttore ricerca & sviluppo, main developer e Geek
presso Unixmedia S.r.l. - Sistemi domotici innovativi su rete Ethernet
Sito aziendale: http://www.unixmedia.it
Prodotti, shop, area-tecnca: http://domotika.unixmedia.net
Direttore ricerca & sviluppo, main developer e Geek
presso Unixmedia S.r.l. - Sistemi domotici innovativi su rete Ethernet
Sito aziendale: http://www.unixmedia.it
Prodotti, shop, area-tecnca: http://domotika.unixmedia.net
0
voti
Si, teoricamente e con attrezzature galattiche si potrebbe fare ma mi domando se ne vale la pena.
Quello che si otterrebbe è la semplice immagine flash ma:
- Se il micro è piccolino scrivere il programma non è poi quel gran lavorone che richiede l' intervento di un professionista con gli attributi.
- Se il micro è un piccolo "bestio", intendo dire un PIC32 o un Cortex-M3, con un programma da 256 KB potrebbe valere la pena ma si otterrebbe un qualcosa che non si può gestire (solitamente è l' output di un compilatore/linker) ma solo riprodurre.
Mi chiedo se abbia un senso perché nel primo caso la salsa costerebbe molto più del pesce, nel secondo caso i costi potrebbero essere comparabili ma non avresti un listato su cui intervenire per eventuali bugs e/o modifiche.
Quello che si otterrebbe è la semplice immagine flash ma:
- Se il micro è piccolino scrivere il programma non è poi quel gran lavorone che richiede l' intervento di un professionista con gli attributi.
- Se il micro è un piccolo "bestio", intendo dire un PIC32 o un Cortex-M3, con un programma da 256 KB potrebbe valere la pena ma si otterrebbe un qualcosa che non si può gestire (solitamente è l' output di un compilatore/linker) ma solo riprodurre.
Mi chiedo se abbia un senso perché nel primo caso la salsa costerebbe molto più del pesce, nel secondo caso i costi potrebbero essere comparabili ma non avresti un listato su cui intervenire per eventuali bugs e/o modifiche.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
2
voti
Ovviamente la risposta giusta e'..."dipende".
Nella stragrande maggioranza dei casi no, non ne vale di certo la pena.
MA in alcuni casi particolari potrebbe valerne la pena anche in mcu piccole.
Giusto per sparare qualche casistica che potenzialmente si presta a situazioni del genere, pensa a un qualche firmware contenente una password e/o una chiave crittografica importante, molto molto importante, per un concorrente e/o un governo.
Oppure pensa a un algoritmo innovativo da comprendere a fondo...
Nel secondo caso poi arriva certo anche la complicazione di dove fare reversing del compilato ( cosa comunque anche questa non impossibile ), nel primo molto probabilmente non e' nemmeno necessario fare questa ulteriore fatica.
Insomma, come detto nel primo post, non e' una cosa alla portata dei comuni mortali ne una cosa semplice e/o che possa sempre valer la pena di fare, e' costoso, difficile, anche noioso se vogliamo.
Ma il punto e' che si puo' fare, e quindi qualcuno per motivi che noi magari non pensiamo potrebbe anche in determinate condizioni limite trovarlo vantaggioso, e quindi e' giusto, al di la di tutto, saperlo.
Nella stragrande maggioranza dei casi no, non ne vale di certo la pena.
MA in alcuni casi particolari potrebbe valerne la pena anche in mcu piccole.
Giusto per sparare qualche casistica che potenzialmente si presta a situazioni del genere, pensa a un qualche firmware contenente una password e/o una chiave crittografica importante, molto molto importante, per un concorrente e/o un governo.
Oppure pensa a un algoritmo innovativo da comprendere a fondo...
Nel secondo caso poi arriva certo anche la complicazione di dove fare reversing del compilato ( cosa comunque anche questa non impossibile ), nel primo molto probabilmente non e' nemmeno necessario fare questa ulteriore fatica.
Insomma, come detto nel primo post, non e' una cosa alla portata dei comuni mortali ne una cosa semplice e/o che possa sempre valer la pena di fare, e' costoso, difficile, anche noioso se vogliamo.
Ma il punto e' che si puo' fare, e quindi qualcuno per motivi che noi magari non pensiamo potrebbe anche in determinate condizioni limite trovarlo vantaggioso, e quindi e' giusto, al di la di tutto, saperlo.
Franco (nextime) Lanza
Direttore ricerca & sviluppo, main developer e Geek
presso Unixmedia S.r.l. - Sistemi domotici innovativi su rete Ethernet
Sito aziendale: http://www.unixmedia.it
Prodotti, shop, area-tecnca: http://domotika.unixmedia.net
Direttore ricerca & sviluppo, main developer e Geek
presso Unixmedia S.r.l. - Sistemi domotici innovativi su rete Ethernet
Sito aziendale: http://www.unixmedia.it
Prodotti, shop, area-tecnca: http://domotika.unixmedia.net
0
voti
Kirk ha scritto:Si, avete ragione, ma è pure vero che programmini semplici e aperti a tutti sono utili per apprendere e addirittura migliorare le loro funzioni. Comunque la mia proposta era nettamente a scopo didattico e se qualcuno ha qualche file di programma sorgente semplice da inviarmi gliene sarei molto grato. Grazie delle risposte
Non voglio sembrare sfaccendatamente banale ma come puoi ben immagianre sul sito della Microchip troverai tonnellate di application e codice di qualsiasi genere. Se hai richieste più specifiche non temere... siamo bravi ragazzi
-

Kirkegaard
7.440 1 7 10 - Master

- Messaggi: 17
- Iscritto il: 12 giu 2011, 19:09
2
voti
Kirk ha scritto:... Faccio presente che ho a disposizione il PICkit3 della microchip. Grazie anticipatamente.
Non credo che PICKit3 supporti un PIC di tipo CMOS.
Un motivo in più per desistere dal tuo tentativo di upload
Ciao.
Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong
-------------------------------------------------------------
PIC Experience - http://www.picexperience.it
-------------------------------------------------------------
PIC Experience - http://www.picexperience.it
-

Paolino
32,6k 8 12 13 - G.Master EY

- Messaggi: 4226
- Iscritto il: 20 gen 2006, 11:42
- Località: Vigevano (PV)
10 messaggi
• Pagina 1 di 1
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 4 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)



