sd-card:start

SD-Cards

Die SD-Card besitzt einen geschützten Bereich in dem individuelle Merkmale der Karte abgelegt sind, dem sog. „CID“.

Dieser 16 Byte große Datenblock enthält u.a. auch die ID der Karte, welche bei Herstellung selbiger festgelegt wird. Darauf kann grundsätzlich lesend zugegriffen werden.

Wichtig in dem Zusammenhang ist, das es mittels herkömmlichen, per USB angeschlossenen Lesegeräten keinen Zugriff auf diesen Bereich bieten. Dies verhindert per Konvention die Firmware im USB-Chip des Lesegerätes.

Somit ist das verarbeiten der CID nur möglich, wenn man diese Beschränkung umgeht. Stand heute ist ds nur mit internen Lesegeräten möglich, die nicht über einen USB angesprochen werden. Das sind so gut wie alle Smartdevices (Handys, Tablets), aber auch eine Handvoll meist älterer Laptops.

Neben diesen Möglichkeiten kann man sich auch mittels einem Arduino und einem SD-Adapter ein Lesegerät selbst bauen. Für das von SDs verwendete Highspeed-Protokoll SDIO taugt der Arduino nicht. Daneben müssen SDs jedoch noch den alteb, langsamen Standard mit SPI-Protokoll anbieten. Hierfür gibt es eine gute Libraryunterstützung für den Arduino.

Wer letztlich doch mehr machen will, ist mit uC mit integriertem USB-Controller besser bedient. Wie z.B. einem STM32.

Über die CID der SD kann ein Hersteller die darauf befindlichen Daten zwar nicht gegen kopieren schützen, aber er könnte sie z.b. mit der CID verschlüsseln. Oder das Gerät welches die SD Card liest, prüft ob die CID in einer Liste erlaubter SD-Cards auftaucht.

Zum ändern der ID benötigt man zunächst eine SD-Card bei der die CID auch beschrieben werden kann. Solche, eigentlich illegale SDs gibt es auf Chinesischen Websites zu kaufen. Aber auch einige, völlig legal erwerbbare SD Modelle von Samsung bieten hier über eine Backdoor des Herstellers eine Möglichkeit.

  • sd-card/start.txt
  • Zuletzt geändert: Thu. 21.12.2017 16:39
  • von wikiadmin