Hallo liebe Leute
Ich habe ein paar Platinen mit einem TMS320F2806 Chip
Ich würde den gerne löschen um ihm selbst programmieren zu können.
Scheinbar ist der Chip aber mit einem Passwort geschützt.
Stimmt das, dass ich den Chip dann nicht löschen kann?
Ich dachte eher, dass das nur ein Schutz für das auslesen ist und beim
löschen des ganzen Speichers, der Schutz vielleicht weg ist.
Sehe ich das richtig ?
Sonst wäre es ja auch blöde, wenn man den mal versehentlich ein Passwort
verpasst und dann die ganze Platine entsorgen müsste ?!
Würde mich freuen, wenn ihr mir dazu etwas schreiben könntet.
Danke
l.G. Robert
Robert schrieb:> Ich habe ein paar Platinen mit einem TMS320F2806 Chip>> Ich würde den gerne löschen um ihm selbst programmieren zu können.> Scheinbar ist der Chip aber mit einem Passwort geschützt.>> Stimmt das, dass ich den Chip dann nicht löschen kann?
Ja.
Im Datenblatt sind alle geschützten Speicher aufgeführt, kurz auf S.1
und ausführlicher auf S.3 "Protected by the code-security module"
Auf S.71 steht dann genaueres zum Passwort "9.1.10 Security"
"The security features a 128-bit password (hardcoded for 16
wait-states), which the user programs into the flash."
"To enable access to the secure blocks, the user must write the correct
128-bit KEY value"
Auf S. 113 Table 9-20 steht der Speicherbereich im Flash, in dem das
Passwort abgelegt wird, man kann die "security" anscheinend auch
abschalten.
Also ist ein programmierter Chip auch nicht mehr löschbar.
Bleibt die Frage, darf man alle 2^128 möglichen Passwörter
durchprobieren und wieviele Jahre dauert das?
Christoph db1uq K. schrieb:> Bleibt die Frage, darf man alle 2^128 möglichen Passwörter> durchprobieren und wieviele Jahre dauert das?
Man darf, aber wenn das Passwort auf 0 gesetzt wurde, dann geht auch
brute force nicht mehr.
Eventuell kannst du den Controller von alternativen Bootmedien
booten lassen. Z.B. SPI-Flash, RS-232 etc.
Dann muss halt alles ins RAM passen, und lesen kannst du den Flash
deswegen trotzdem nicht.
@DerEgon
Da ich ihn nicht auslesen kann.
---
Ich dachte , das wäre vielleicht so wie beim AVR
Da kann man ihn ja auch vor dem Auslesen schützen, aber wenn man alles
löscht, kann man ihn wieder beschreiben.
Danke alle für die Antworten :-)
l.G. Robert
Hab mal nachgerechnet:
2 hoch 128 klingt recht harmlos, aber das sind 3,402823669×10³⁸.
Wenn ich für ein Passwort nur 1 Mikrosekunde benötigen würde (was mir
ziemlich knapp vorkommt), dann wären das immer noch 3,4*10^32 Sekunden
oder 10^25 Jahre. Die Zeit vom Urknall bis heute sind nur 13*10^9 Jahre.
Das mit dem endgültigen Passwort Null hatte ich auch gelesen.
Mal ein lüttes Brainstorming:
Wenn man jetzt herausbekommen könnte, wie das Passwort "0"
im Flash gepeichert wird, ob wirklich mit 0 oder FF...
Dann könnte man den gesamten Flasch mit ionisierender
Strahlung auf FF zurücksetzen und den Prozzi wieder
benutzbar/programmierbar machen.
mfg
Lotta . schrieb:> Dann könnte man den gesamten Flasch mit ionisierender> Strahlung auf FF zurücksetzen und den Prozzi wieder> benutzbar/programmierbar machen.
Da waren andere auch schon. Das kann klappen, geht aber gewaltig auf den
Leckstrom der Speicherzellen.
Christoph db1uq K. schrieb:> Hab mal nachgerechnet:> 2 hoch 128 klingt recht harmlos, aber das sind 3,402823669×10³⁸.
Braucht man eben ein wenig Glück...
... schrieb:> Eventuell kannst du den Controller von alternativen Bootmedien> booten lassen.
Kann man. Der BootROM unterstützt vier verschiedene Boot-Modi. Einen
davon hat der TO offensichtlich bereits benutzt, nämlich Booten von
einem Debugger-Host.
Es ist aber tatsächlich (zumindest offiziell) nicht möglich, ein
gesetztes Passwort zu umgehen, um den Chip wieder "werksneu" zu machen.
Ob es inoffizielle Wege gibt, entzieht sich meiner Kenntnis. Vermutlich
nicht, die C2000-Familie hat wohl eine zu geringe Verbreitung, um den
nötigen RE-Aufwand zu rechtfertigen, um eine solche Lösung zu
finden/schaffen.
Ich persönlich finde die Dinger übrigens sowieso ziemlich Scheiße und
würde sie mir niemals freiwillg antun. Aber manchmal erbt man halt
Sachen, die man nie haben wollte...
H. H. schrieb:> Braucht man eben ein wenig Glück...
for ((a=1;a<45;a++)) ; do for ((b=($a+1);b<46;b++)) ; do for
((c=($b+1);c<47;c++)) ; do for ((d=($c+1);d<48;d++)) ; do for
((e=($d+1);e<49;e++)) ; do for ((f=($e+1);f<50;f++)) ; do echo $a $b $c
$d $e $f ; done; done ; done ; done ; done ; done | cat -n
Etwas mehr als bei Lotto ...
Man könnte die 16-Bit Regsiter einzeln beschreiben und dabei die
Stromaufnahme betrachten. Vielleicht ist diese bei einem match
geringfügig 'lauter' als bei falscher Kombination. Das macht man
nacheinander mit allen 8 Registern.
16-Bit sind schnell durchprobiert.
Möglicherweise benötigt man dafür allerdings einen Chip, bei dem man den
Key kennt, um Versuche damit durchzuführen.
Gruß
Jobst
Jobst M. schrieb:> Man könnte die 16-Bit Regsiter einzeln beschreiben und dabei die> Stromaufnahme betrachten. Vielleicht ist diese bei einem match> geringfügig 'lauter' als bei falscher Kombination.
Pfui! Seitenangriffe sind doch unfair...
> Also ist ein programmierter Chip auch nicht mehr löschbar.
Contra. Ein Mikrowellentrafo oder der Einfachheit halber eine komplette
alte Mikrowelle schafft das schon. Richtig wäre, der Chip ist nicht
wiederverwendbar. Schicker Schachzug des Herstellers, so kann man auch
den Bedarf ankurbeln.