mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik verhindern dass das EEPROM ausgelesen wird


Autor: CRuS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: oszi40 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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.

Autor: Moi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Je nachdem wie oft die Daten aktualisiert werden kann man sie auch im 
Flash ablegen und der ist durch entsprechende fuses schützbar.

Autor: CRuS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Roland Praml (pram)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: CRuS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Roland:

Danke. Genau die Aussage habe ich gebraucht. g

Gruß
Matthias

Autor: Freizeitbastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Roland Praml (pram)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Freizeitbastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Philip (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit einer kleinen SMD-Prüfspitze kommt man hervorragend an jedes 
abgebrochene Pin heran...

Autor: Philip (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Philip (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich gebe zu, es waren bisher jetzt nicht die "schönsten" Ideen von 
mir... ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.