microprocessore incorporato antimanomissione


8

Sviluppo hardware commercialmente integrato, utilizzando Microchip dsPIC o processori simili.

Il firmware che ho a volte è molto complesso e costoso e deve essere a prova di hacker e manomissione nell'hardware. Sono presenti tutte le protezioni software di base, ma per $ 500 - $ 1,000 il codice esadecimale può essere recuperato tramite diversi servizi di siti Web stranieri, anche se ci sono micce di sicurezza (che impediscono solo manomissioni non determinate). Dopodiché, sono necessari pochi mesi e il codice può essere retroingegnerizzato utilizzando il disassemblatore, come IDA Pro.

Come posso proteggere un po 'meglio il design dell'hardware (senza necessità di protezione militare)?

Puoi consigliare altri processori non leggibili o forse un'aggiunta al mio progetto esistente?

Tutto ciò di cui ho bisogno è nascondere poche funzioni, non ho bisogno dell'intero prodotto. Inoltre, non è sufficiente nascondere i dati nella memoria esterna protetta, ma devo nascondere un programma.

Aggiornamento (basato su molti commenti): ho dsPIC e 4 anni di sviluppo a tempo pieno sul firmware (farei un grande sforzo per farlo da zero in un altro modo):

1) Questo prodotto vende già e gli hacker hanno accesso se lo desiderano

2) Il NUOVO FIRMWARE non è stato ancora rilasciato. Contiene un codice di 5kB che nessuno di tutti i concorrenti ha ancora. Devo impedire a chiunque di ottenerlo facilmente per circa 12 mesi dopo il rilascio

3) Non c'è budget per andare molto esotici o complicati, forse $ 10 aggiuntivi per prodotto, più o meno

4) Una soluzione come la scheda SIM aggiunta potrebbe fare il trucco?

5) La funzione da nascondere esegue calcoli molto complicati, non standard, per decrittografare / crittografare 16 byte. I processi noti non possono hackerarlo in 1 anno, è necessaria la funzione, motivo per cui voglio nasconderlo.

6) Non mi importa se è pubblicamente visibile, quando la richiesta viene inviata all'hardware "nascosto" o se la risposta è pubblicamente visibile. Devono solo nascondere il processo calcolandolo e non può essere all'interno del processore dsPIC.


1
user1831847: che non funziona davvero, vedi la domanda e $ 1,000 (l'ho visto io stesso con il mio codice sicuro)
EmbeddedGuy

2
Quindi, come sapete, non è così facile - anche su microprocessori che sono "sicuri". Se ci lanci abbastanza risorse, quasi tutto è crackabile. Almeno se assumi una terza parte puoi sempre denunciarla se va storto;)
JIm Dearden,

2
@Jim Dearden 2a regola, la sicurezza per oscurità non è sicurezza. Assumere uno specialista sarebbe comunque una buona idea. Tipo. La sicurezza non è mai assoluta, è sempre un fattore di tempo e denaro che puoi darci un indizio su quale livello di protezione stai cercando in questi termini.
RoyC,

2
Se non hai qualcosa come l'autenticazione online, penso che tu sia praticamente SOL. Come dici tu, è abbastanza economico da rompere le protezioni semplici (possono rimuovere l'incapsulamento e usare varie tecniche per disabilitare, bypassare o ricablare le protezioni se non c'è niente di più facile). Puoi provare la sicurezza SE. Se il tuo prodotto è buono verrà copiato e anche se tu potessi proteggere il firmware, quanto sarebbe davvero difficile riscriverlo? Gran parte del costo è nel determinare le specifiche e così via che la fotocopiatrice non deve fare.
Spehro Pefhany,

1
E i vari sistemi di smartcard?
pjc50,

Risposte:


1

Ci sono aziende specializzate in questo. Atmel era uno di loro, anche al sicuro. Hanno hardware speciale che può soddisfare le tue esigenze. Ma se vuoi che funzioni davvero, preparati a proteggere l'intera catena dal loro magazzino asic al tuo impianto di produzione con caveau e protezioni per i codici di sicurezza. Altrimenti guadagnerai solo $ 1k per tentare $ 10k, mentre in realtà hai bisogno di almeno $ 1M.


Ho sentito cosa intendi. $ 1 M va bene se il prodotto vende per $ 10 M / anno, che non è il mio caso. Ma l'hardware sicuro senza depositi e protezioni potrebbe essere sufficiente. Ho solo bisogno di un piccolo tipo di CPU per questa sicurezza di calcolo extra.
Incorporato

Quindi licenzia le guardie :)
Gregory Kornblum,

In base al tuo aggiornamento, chiama in modalità protetta.
Gregory Kornblum,

Gregory: Scusa, non capisco cosa intendi con "inside secure"
EmbeddedGuy


1

I ricercatori del MIT hanno sviluppato un modo per mescolare matematicamente il codice, ma mantenendo lo stesso risultato. L'unico modo in cui viene eseguita la funzione è se si fornisce la chiave corretta, che può essere scaricata di volta in volta.

Questo potrebbe esserti utile: http://spectrum.ieee.org/computing/software/scrambled-code-keeps-software-safe


Sebbene non sia ancora una soluzione pratica, grazie per un'interessante lettura educativa.
Incorporato
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.