Hallo zusammen, ich habe hier mehrere Controller, unter anderem: ATMEGA162, ATMEGA32, AT90CAN, AT91SAM7X. Meine Frage ist nun: Kann man den Code in den Controllern irgendwie schützen, dass die Geräte nicht neu Programmiert werden oder zumindest nicht das Programm/EEPROM ausgelesen werden können? Ist so etwas irgendwie möglich oder vorgesehen? Eventuell kennt ja jemand eine Lösung! lg
Moin, bei den Mega kann man beim programmieren Flags setzen die ein Auslesen verhindern, die sog. "LockBits" Demit wird der Aufwand an die Daten zu gelangen zumindestens sehr groß gemacht; möglich soll es noch sein. Komplett löschen und neu programmieren geht dann aber immer noch! Der ARM sollte einen ähnlichen Mechnismus haben, finde ich jetzt aber gerade nicht. -- SJ
Vielen Lieben Dank euch beiden! Ich werd das mal bei gelegenheit ausprobieren. @gerhard ... beim SAM7X schreibe ich im Programm auf Tastendruck daten in den Flash damit sie Netzausfallsicher sind. Das müsste doch weiterhin klappen oder? Es wird doch nur der externe Zugriff verweigert aber wenn der Controller das selbst macht geht es? Beim ATMEGA lese ich nur Daten ausm Flash die ich beim PRogrammieren dort abgelegt habe und nutze dort den EEPROM zum speichern von Netzausfallsicheren Daten. Da ist das ja alles völlig egal und sollte auch gehen.
>@gerhard ... beim SAM7X schreibe ich im Programm auf Tastendruck daten >in den Flash damit sie Netzausfallsicher sind. Das müsste doch weiterhin >klappen oder? Es wird doch nur der externe Zugriff verweigert aber wenn >der Controller das selbst macht geht es? ja, sollte so sein. hier ein auszug auszug dem datenblatt: "The goal of the security bit is to prevent external access to the internal bus system. (Does not apply to EFC1 on the AT91SAM7X512.) JTAG, Fast Flash Programming and Flash Serial Test Interface features are disabled." zu beachten ist der hinweise auf den x512, offensichtlioch gilt das security bit nur für den efc0 (die ersten 256 kbytes). gruss gerhard
Ja, den Kontroller gegen neues Programmieren zu schützen, was oft im Sicherheitstechnischen liegt, geht meines wissens nur bei den Renesas M16C typen und da muss man noch den richtigen Typ aussuchen. z.B. der M30624A. Die neueren Typen haben eine Backdoor (Erase All !!!) Gegen auslesen sind sie natürlich auch relativ sicher.
Zu EFC1 beim AT91SAM7X512: Unter "19. Embedded Flash Controller (EFC)" steht noch: "The AT91SAM7X512 is equipped with two EFCs, EFC0 and EFC1. EFC1 does not feature the Security bit and GPNVM bits. The Security and GPNVM bits embedded only on EFC0 apply to the two blocks in the AT91SAM7X512." Das Security bit ist also offensichtlich zwar nur über die EFC0-Register zugänglich, wirkt aber auf den zweiten Speicherblock EFC1.
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.