(vermutlich alle Samsung Galaxy Smartphones mit Android 11)
Der Wunsch vom Anwendenden war es die Verschlüsselung auf dem eigenen Smartphone zu aktivieren. Die SDKarte hatte bereits bestehende Daten mit vielen Bildern.
Nach dem Drücken auf Einstellungen / Biometrische Daten und Sicherheit / Verschlüsseln oder Entschlüsseln der SD-Karte legte die Verschlüsselung los.
Nach einiger Zeit brach diese mit dem Hinweis ab, dass die Verschlüsselung nicht erfolgreich war. Im Menü Verschlüsselung steht jedoch, dass die SD-Karte verschlüsselt ist.
Nach einem Blick in die Dateien auf der SD-Karte, stellt man nun fest, dass man auf etliche Dateien (z.B. Bilder) nicht mehr zugreifen kann. z.B. wenn man Bilder öffnet bekommt man die Fehlermeldung -> Datei kann nicht geladen werden.
Wenn man jetzt versucht, die Verschlüsselung über die gleichen Menü Einträge rückgängig zu machen, dann kommt beim Drücken auf „SD-Karte Entschlüsseln“ recht schnell die Meldung „Entschlüsselung erfolgreich“. Dies geht so schnell, dass einem klar wird, dass kann so schnell nicht funktioniert haben.
Wenn man jetzt seine Daten prüft, findet man echtes Chaos. Auf einige Daten kann man noch zugreifen auf andere nicht.
Die Ursache ist recht einfach. Bei der Verschlüsselung der SD Karte ist irgendetwas schief gegangen. Leider hat Samsung an der Recovery Routine gespart und hinterlässt uns einen Mix aus teilweise verschlüsselten und unverschlüsselten Dateien. Die Entschlüsselungsfunktion von Samsung ist jedoch nicht in der Lage, diese teilweise Entschlüsselung wieder zu beheben und lässt uns mit dem Chaos allein.
Zur Erklärung: Wie erkennt Samsung / Android, dass es verschlüsselte Dateien vorliegen hat? Dazu wird im Hauptverzeichnis der SD Karte eine versteckte Datei angelegt.
.MetaEcfsFile
Der Inhalt ist recht kurz:
Encrypted
Diese Datei kann man sich daher selbst anlegen oder mit einer leeren SD-Karte im Samsung Handy erneut erzeugen.
Sobald diese Datei vorhanden ist, geht Samsung Android davon aus, dass die Dateien auf der SD-Karte verschlüsselt sind.
Also Datei angelegt und Handy rebootet. Android erkennt die Daten nun als verschlüsselt, jedoch sind ja auf der Karte nicht alle Dateien verschlüsselt, was wiederum zu dem Problem führt, dass nun die unverschlüsselten Daten nicht mehr zu lesen sind. Daher ist dies noch nicht die alleinige Lösung.
Daher SD-Karte raus aus dem Handy und ab in ein Linux-Notebook. Dann in das Verzeichnis der SD-Karte wechseln.
Die verschlüsselten Dateien müssen auf der SD-Karte identifiziert werden. Wenn man sich die verschlüsselten Dateien inhaltlich anschaut, dann sieht der Anfang ungefähr so aus (hier mit less unter Linux angezeigt).
^@^@^@^@^@^S�FG�s�{L�^U^C^@^@^S^@^@^P^@^@^B<8C>-^D^C^A^@^@^@^@^@^@^@^@`�+�~���V���.�M\��'oi�Y�ħ�^E°/<85>^A�^VbCONSOLE^@^@^@^@<8F>��^WZ΢�^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@C<9E>�^N^A�<97>^@�ZL<84>d�:^VA��<9D>��<88>^G<93>@J<9D>o�<85>� … …
Für mich war das beste Erkennungszeichen das Wort CONSOLE. Daher habe ich ein kleines Script (1-Liner) unter Linux verwendet, um alle noch verschlüsselten Daten von der SD-Karte in das Verzeichnis /home/user/verschluesselt zu kopieren.for i in $(grep -lr CONSOLE *); do cp -av –parent $i /home/user/verschluesselt/; done
Du musst dich dazu im Hauptverzeichnis deiner gemounteten SD-Karte befinden, bei mir war das /media/user/MEMORY CARD (Kann bei dir anders heißen).
Dann habe ich mir ein neues Verzeichnis auf meinem Notebook (lokale Platte) angelegt – bei mir /home/user/verschluesselt (mkdir /home/user/verschluesselt).
Dann den One Line ausführen, der Parameter –parent beim cp Befehlt führt dazu, dass die Verzeichnisstruktur beim Kopieren erhalten bleibt und genauso unter /home/user/verschluesselt wieder angelegt wird. Sprich dort landen nur die noch verschlüsselten Dateien.
Wenn das Script durch ist, kopiert ihr diese Daten nun auf eine leere SD-Karte. Legt ebenfalls die .MetaEcfsFile im Hauptverzeichnis der SD-Karte ab und entmounten. Nun ab ins Handy damit. (Vorher das Handy am besten ausschalten). Beim Hochfahren erkennt Android nun aufgrund der .MetaEcFSFile, dass die Dateien verschlüsselt sind und dadurch das hier nun nur noch die reinen verschlüsselten Dateien liegen, kann Android wieder problemlos darauf zugreifen. Ihr könnt jetzt die Daten beliebig von Eurem Handy runterkopieren oder mit der Entschlüsselungsfunktion wieder alle Dateien entschlüsseln.
Nachdem Ihr die Daten entschlüsselt habt, kopiert ihr nun die alte SD Karte und die neue wieder zusammen und schon habt ihr wieder Eure Daten komplett unverschlüsselt.
Das ursprüngliche Problem ist eben, dass Samsung deine Daten nicht entschlüsselt, sofern ein Mix Zustand aus verschlüsselten Daten und gleichzeitig entschlüsselten Daten vorliegt. Sprich du musst es immer in den Zustand bekommen, entweder alles verschlüsselte Dateien oder alles nicht verschlüsselte Dateien, sonst kommt Samsung Android damit nicht klar.
Für mich zeigt das schlechte Programmierung. Hier fehlt ganz klar das Error Handling. Den User mit einer fehlgeschlagenen Verschlüsselung und den halben Daten alleine zu lassen, ist eine Katastrophe.
Bei Fragen, schreibt mir gerne per E-Mail an info AT svenczaja.de