Hallo. Ich nutze bei einem AT90USB162 das EEPROM zum ablegen von sensiblen Daten. Kann ich mit den FuseBits verhindern, dass das EEPROM später ausgelesen oder erneut beschrieben wird? Gruß, Matthias
Wenn ich sensible Daten hätte, dann würde ich sie verschlüsseln oder wenigstens zerstückelt speichern um den Aufwand zu erhöhen. Nichts ist jedoch sicher für die Ewigkeit. Dafür gibt es genügend schlechte Beispiele von Enigma bis DVD-Kopierschutz.
>Nichts ist jedoch sicher für die Ewigkeit.
Doch mit: One-Time-Pad
nur nicht immer sinvoll anzuwenden :). Aber in deinem Fall schon, wenn
du noch genügend Platz im Flasch hast.
Je nachdem wie oft die Daten aktualisiert werden kann man sie auch im Flash ablegen und der ist durch entsprechende fuses schützbar.
Verschlüsseln macht in diesem Fall prinzipbedingt keinen Sinn. Im Flash kann ich die Daten leider auch nicht ablegen, da dieser später ggf. durch ein reguläres Firmwareupdate überschrieben wird. Und die Daten im EEPROM sind bei jedem Bauteil einzigartig. Kann ich nun die Lockbits so setzen, dass man den Inhalt des EEPROM nicht mit einem ISP auslesen kann?
CRuS wrote: > Kann ich nun die Lockbits so setzen, dass man den Inhalt des EEPROM > nicht mit einem ISP auslesen kann? Bestimmt. IMHO kann man sobald der Flash geschützt ist auch nicht mehr auf das EEPROM zugreifen (außer man macht einen Chip erase) Gruß Roland
@Roland: Danke. Genau die Aussage habe ich gebraucht. g Gruß Matthias
Hallo Matthias, bei solchen Fragen geht mein erster Blick ins Datenblatt: 25.1 Program And Data Memory Lock Bits ... Memory Lock Bits LB MODE:LB2:LB1 = 3:0:0 Further programming and verification of the Flash and EEPROM is disabled in Parallel and Serial Programming mode. The Boot Lock bits and Fuse bits are locked in both Serial and Parallel Programming mode.(1) Man kann also gegen Auslesen sperren, allerdings ist dann das Firmwareupdate wohl nur noch per Bootloader möglich. Schöne Grüße, Peter
Der Bootloader muss dann so programmiert werden, dass er nur signierte Software annimmt (oder zumindest eine nicht triviale Prüfsumme berechnet). Sonst jubelt deinem Gerät jemand eine andere Firmware unter, welche das EEPROM ausliest. BTW. was passiert wenn ich sofort nach dem Chip-Erase den Strom weg nehme? Ich hoffe mal die Fusebits werden zum Schluss ge'erased... Gruß Roland
Der entschlossene Angreifer kommt immer an das EEPROM. Herumspielen mit der Stromversorgung ist da nur eine Möglichkeit von vielen, die funktionieren könnten. Schöne Grüße
Könnte man nicht die unelegante Methode nehmen und einfach die Programmier-Pins entfernen? Ist zwar nicht schön, man kann den Controller auch nicht neu programmieren, aber der Kontakt zu den Pins ist nicht mehr unbedingt (bzw nur schwer) gegeben und somit kann doch auch nichts ausgelesen werden. Oder? Es müsste doch gut bei SMD funktionieren. Wenn das Gerät dann als Garantieanspruch oder Update dann eine neue Software bräuchte, dann könnte man den Controller doch ggf austauschen... Viele Grüße, Philip
Mit einer kleinen SMD-Prüfspitze kommt man hervorragend an jedes abgebrochene Pin heran...
Hmm. Guter Einwand. Wie sieht es denn aus, wenn man die Bezeichung des Prozessors unkenntlich (durch z.B. Sandpapier) macht, dann gibt es doch eine ganze Menge an Prozessoren, die zutreffen könnten. Na gut, jetzt hat der Prozessor eine USB-Schnittstelle, da fällt dann einiges weg, doch solange man dann die Programmier-Pins nicht rausführt und auf dem Platinendruck mit ISP bezeichnet...? Macht die Daten jetzt nicht zu 100% sicher, aber vielleicht eine Idee.
Ich gebe zu, es waren bisher jetzt nicht die "schönsten" Ideen von mir... ;-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.