Hallo Leute,
Möchte eine SD Karte eindeutig identifizieren.
Eigentlich nicht eine, sondern alle möglichen.
Dies dient als "Kopierschutz".
Bisher habe ich das immer über die Volume ID gemacht.
Leider gibt es schlaue Köpfe, die gegen die Betriebsanleitung die
SD Card formatieren. Danach ändert sich aber die Volume Id.
Daher meine Frage:
Gibt es irgend ein Bit oder Register IN der SD Karte,
auf das ich lesend und schreibend zugreifen kann?
CID scheidet ja schonmal aus.
mfG
Zündler
Zündler schrieb:> Gibt es irgend ein Bit oder Register IN der SD Karte,> auf das ich lesend und schreibend zugreifen kann?
Je nach größe der Karte gibt es ganz viele Bit die du Lesen und
schreiben kannst.
Eine Spezielle Identifikation der Karte die man nicht Kopieren kann
kannst du aber eignetlich nur schaffen wenn du zugriff auf die Firmware
des Controllers hast.
Ich kenn das von USB Sticks.Da hatten wir ein Tool vom Hersteller
bekommen, mit dem man auch die Seriennummer des Sticks ändern konnte
(gleich immer 32 auf einmal).
Darum wollte ich fragen, ob es sowas für SD Cards auch gibt.
Frag eben den Hersteller. Finde Kopierschutz nicht fair, da Sd karten
verschleißen und deshalb austauschbar sein sollen. Sonst ist das eine
eingeplante Schwachstelle.
Vielleicht kannst du die CID integritätssichern? Speichere und prüfe
einen Hash zur CID. Wenn die Nutzer nicht zu fortgeschritten sind bzw.
die Anwendung nicht zu kritisch, kann die Hasherzeugung ja auch Richtung
security through obscurity gehen. Neue CID ohne korrekten Hash ->
abgelehnt.
Ich muss ja beliebig viele Karten beschreiben, damit diese immer den
gleichen Wert zurückgeben.
Hätten wir einen "Lizenzserver" könnten wird die CID usw. einfach
abgleichen.
Die Lösung steht im Titel des Threads: "SD". Denn SD steht für "Secure
Digital". Du musst lediglich den Standard für das DRM von SD Karten
kaufen, dann kannst du den in der Karte integrierten Kopierschutz nutzen
wie du möchtest.
Eine einfache Variante wäre es, den Passwort Schutz der Karte zu
benutzen. Die meisten PC-Kartenleser/Smartphones kommen damit nicht
klar, und können die Karte nichtmal kopieren wenn man das Passwort
wüsste. Vom uC aus ist es aber kein Problem, das zu nutzen. Dazu
brauchst du auch nix zu kaufen, das steht im öffentlichen Simplified
Standard.
CID der Karte (ist unveränderbar) in einer lesbaren Datei speichern.
Vergleich der CID und der Datei als Gültigkeitprüfung.
Die Datei mit kryptografischen Mitteln schützen (Unversehrtheit,
Quelle).
Das Programm für den Vergleich müßte aber ebenfalls kryptografisch
gesichert sein
Die Datei kann auch RAW auf die SD-Card geschrieben werden.
Ein dd würde sie mitkopieren, aber der Vergleich würde scheitern.
Es handelt sich um ein Windows Programm, welches sich auf der SD Karte
befindet.
Auf diese Karte wird ausserdem über eine Kleinsteuerung darauf
zugegriffen.
Also fällt DRM flach.
Zündler schrieb:> Also fällt DRM flach.
Warum? Genau dafür ist das DRM doch gedacht. Das war mal dafür
konzipiert, zB Musik kopiersicher auch auf den PC zu bringen.
T.roll schrieb:> Nimm einen Stift und schreib eine beliebige Zahl auf die Karte. Dann> hast du den gleichen Effekt wie mit einem idiotischen Kopierschutz.
Dümmster Kommentar der Woche bereits am Dienstag?
Merke: Überall wo es gilt Softwarepiraten vom Diebstahl geistigen
Eigentums abzuhalten - ist ein Kopierschutz unerlässlich.
Haben die SD Karten nicht einen manuellen Kopierschutz? Hatte schon
lange keine mehr in der Hand, aber konnte man da am Rand nicht eine Art
Schiebeschalter betätigen?
Den könnte man nach dem Schreiben einfach abbrechen oder festkleben,
oder oder oder...
Ist zwar nicht in Software, aber vielleicht hilft es trotzdem...
Cikromontroller schrieb:> Haben die SD Karten nicht einen manuellen Kopierschutz? Hatte schon> lange keine mehr in der Hand, aber konnte man da am Rand nicht eine Art> Schiebeschalter betätigen?> Den könnte man nach dem Schreiben einfach abbrechen oder festkleben,> oder oder oder...>> Ist zwar nicht in Software, aber vielleicht hilft es trotzdem...
Du weißt nicht, ob es hilft*1? Das ist doch ziemlich blöd: Warum
schlägst du es dann vor, wenn du keine Ahnung hast?
Cikromontroller schrieb:> Haben die SD Karten nicht einen manuellen Kopierschutz? Hatte> schon> lange keine mehr in der Hand, aber konnte man da am Rand nicht eine Art> Schiebeschalter betätigen?> Den könnte man nach dem Schreiben einfach abbrechen oder festkleben,> oder oder oder...>> Ist zwar nicht in Software, aber vielleicht hilft es trotzdem...
Das ist ein Witz! Das Ding ist lediglich ein verschiebbares
Plastikstückchen, mehr nicht. In einigen wenigen Kartenlesern ist ein
Mikrotaster dran, der feststellen soll, ob das Schieberchen links oder
rechts steht. Er soll einen Schreibschutz darstellen, damit man die
Karte nicht versehentlich überschreibt. Keinen Kopierschutz. Der Taster,
wenn er vorhanden ist, kann abgefragt werden, muß es aber nicht.
Tolle Sicherheit, oder? ;-)
Ich verstehe nicht wie das gemeint ist mit dem Kopierschutz.
Man speichert doch Daten weil man sie ja irgendwann wiederhaben
will, also müssen sie lesbar sein. Und wenn sie lesbar sind
kann man sie auch kopieren. Ist ein Wiederspruch. Wenn mann
verhindern will das Andere an die Daten kommen, muß man sie
verschlüsseln.
Jemin K. schrieb:> Navionics verkauft absolut kopiersichere SD-Karten für die> Bootsnavigation. Vielleicht finest Du heraus, wie sie das machen...
Das macht Ford auch.. hat noch keiner geschafft.
Vielleicht ist dies eine loesung, die benutze ich in mein embedded
system mit smartcard aber funktioniert auch fuer sd :
Jede SD karte hat seine eigene id und ein counter der von embedded
jedermahl erhoeht wird.
Der microcontroller speichert eine list (zb 8) von id und dabei hoerende
counter per sd-karte.
Wenn der counter NIEDRIEGER ist als in die liste, ist die karte nicht
mehr gueltig.
Resultat : Ja, die SD karte kan kopieert werden aber mit nur einer der
SD-karten (original oder kopie) kann noch benutzt werden auf gleichem
hardware.
Natuerlich muessen counter und id verschlusselt gespeichert werden.
Also, funktioniert nicht im alle faellen aber fuer mich reicht dieses.
Meine Kunden haben immer 1 oder 2 boxen und koennen pro Smartcard 100
messungen machen. Nach 100 messungen musz er eine neue Karte kaufen. Als
das Produkt bei uns zurueck kommt (kalibrierung), sehen wir im logfile
ob er versucht hat zu kopieren, bisher ist das noch nie der fall
gewesen.
Patrick
Deine Fragestellung ist sehr diffus. Ich denke du willst raus auf "Ich
verteile Software auf einer SD Karte und will nicht dass jemand diese
Software auf eine andere Karte kopiert". Das wäre zB. zu machen indem du
das Programm auf der Karte asymetrisch verschlüselst, wobei der public
decryption key die CID der Karte ist (bzw davon abgeleitet). Dann kann
man dein Programm nur mit erheblichem Aufwand kopieren (nämlich selbst
entschlüsseln, dann die Entschlüsselungsroutine rauspatchen). Wenn dein
User die Karte formatiert kannst du einfach das verschlüsselte Binary
wieder draufkopieren und es läuft, aber nur auf DIESER Karte.
Achso Nachtrag:
- Wirklich sicher KANNST du sowieso nur mit Hardwaresupport erreichen.
Und der kostet offenbar Geld.
- Der HERSTELLER der Karten kann natürlich Karten mit speziellen IDs
produzieren. Damit kannst du dann bestimmte Aktionen bei deinen Geräten
triggern (so geschehen beim Firmware Recovery Mode der Playstation
Portable und soweit mir bekannt auch bei der PS3).
Guest schrieb:> Dann kann> man dein Programm nur mit erheblichem Aufwand kopieren (nämlich selbst> entschlüsseln, dann die Entschlüsselungsroutine rauspatchen).
oder fängt das entschlüsselte Programm einfach ab. Im Ram muss es ja
entschlüsselt liegen.
Phil schrieb:> Jemin K. schrieb:>> Navionics verkauft absolut kopiersichere SD-Karten für die>> Bootsnavigation. Vielleicht finest Du heraus, wie sie das machen...>> Das macht Ford auch.. hat noch keiner geschafft.
Ford weiss ich nicht, aber für Navionics ist das definitiv nur ein
Gerücht. Die Kochen auch nur mit Wasser...
Ein wenig Grips darf aber schon sein.
Peter II schrieb:> oder fängt das entschlüsselte Programm einfach ab. Im Ram muss es ja> entschlüsselt liegen.
Ja aber nicht unbedingt in sofort nutzbarem Format. Außerdem muss man
weiterhin die Entschlüsselungsroutine rauspatchen. Ich nenne das
erheblichen Aufwand, das kann definitiv nicht jeder. Wenn die Software
es nicht wert ist, das CPRM zu kaufen, ist es auch diesen Aufwand nicht
wert.
Guest schrieb:> Peter II schrieb:>> oder fängt das entschlüsselte Programm einfach ab. Im Ram muss es ja>> entschlüsselt liegen.>> Ja aber nicht unbedingt in sofort nutzbarem Format. Außerdem muss man> weiterhin die Entschlüsselungsroutine rauspatchen. Ich nenne das> erheblichen Aufwand, das kann definitiv nicht jeder. Wenn die Software> es nicht wert ist, das CPRM zu kaufen, ist es auch diesen Aufwand nicht> wert.
stimmt, es geht aber auch viel einfacher. Man überschreibt die Routine
die die ID der karte ausliest und ersetz sie durch eine Konstante.
Peter II schrieb:> stimmt, es geht aber auch viel einfacher. Man überschreibt die Routine> die die ID der karte ausliest und ersetz sie durch eine Konstante.
Döööööt. Falsche antwort. Dann schlägt die Entschlüsselung nämlich
immernoch fehl ;)
Habe mich jetzt mal eingelesen.
Für mich würde es reichen, das Copy Bit im CSD Register zu setzen.
Dieses frage ich ab :-D Dazu noch die eigene Volume ID in einer
versteckten Partition.
Das sollte reichen.
Jemin K. schrieb:> Navionics verkauft absolut kopiersichere SD-Karten für die> Bootsnavigation. Vielleicht finest Du heraus, wie sie das machen...
Dasselbe gilt wohl für VW-Kartenupdates...