Timelord Rock

In den unendlichen Weiten der Musikwelt existiert ein Genre welches auf den Namen Wizard Rock hört. Das sind Songs bzw. Bands welche sich in ihren Liedern mit den Harry Potter Romanen beschäftigten. Dadurch inspiriert schuf die Band Chameleon Circuit 2008 das Genre des Timelord Rock kurz Trock. Inspiration hierfür ist die britische Serie Doctor Who.

Chameleon Circuit (Bild: Genevieve unter CC-BY-SA)

Chameleon Circuit (Bild: Genevieve unter CC-BY-SA)

Neben Chameleon Circuit (deren Alben Chameleon Circuit und Still Got Legs sehr hörenswert sind) gibt es mittlerweile eine Menge weiterer Trock-Bands. Wer Doctor Who also auch abseits der Mattscheibe genießen möchte, dem sei diese Musik ans Herz gelegt. Vor ein paar Jahren erschien dazu auch der Sampler Trock On.

Image vom internen Speicher eines gerooteten Androidgerätes erstellen

Wenn man ein Android-Gerät gerootet hat, sind mit diesem einige Dinge möglich welche vorher nicht machbar waren. Unter anderem kann man den internen Speicher eines solchen Gerätes dumpen, das bedeutet ihn Bit für Bit in eine Image-Datei schreiben. Dazu verbindet man das gerootete Gerät mit dem Rechner und öffnet die ADB-Shell. ADB steht dabei für die Android Debug Bridge und befindet sich in den Plattform Tools des Android SDKs:

./adb remount
./adb shell

Kann die Verbindung nicht hergestellt werden, weil der ADB-Server bereits läuft, hilft es diesen vorher noch einmal zu beenden:

./adb kill-server

In der ADB-Shell gibt man nun su ein damit man auf der Root-Konsole landet. Anschließend kann man das Blockgerät welches für den internen Speicher steht auf die eingelegte SD-Karte schreiben. Dies geschieht dabei mit Hilfe des Befehls dd:

dd if=/dev/block/mmcblk0 of=/storage/extSdCard/imageInternalStorage.img

Probleme bekommt man bei diesem Prozess wenn das Image größer als 4 GiB ist. Da die SD-Karten meist standardmäßig mittels FAT32 formatiert sind, erlauben sie keine Dateien größer 4 GiB. Abhilfe schafft es hier die SD-Karte mit dem Dateisystem ext3 zu formatieren. Dieses kann von Android genutzt werden und erlaubt größere Dateien. Unter Umständen muss das ext3-Dateisystem dabei nochmals neu mit Schreibrechten eingebunden werden:

mount -t ext3 /dev/block/mmcblk1p1 /storage/extSdCard

Anschließend sollte das Image ohne Probleme geschrieben werden können. Je nach Größe und Geschwindigkeit der SD-Karte, kann der Prozess dabei einige Zeit in Anspruch nehmen. Nach der erfolgreichen Operation meldet dd-Vollzug und zeigt einige Statistiken zum Prozess an. Das Image kann nun von der SD-Karte auf den Rechner kopiert werden und dort z.B. dem FTK Imager gemountet und analysiert werden.

Samsung S5 mini rooten

Möchte man ein Samsung S5 mini rooten, so kann man dies einfach mit dem Tool CF-Auto-Root bewerkstelligen. Dazu wird auf der Webseite das entsprechende AP/PDA heruntergeladen. Unter Windows sollten zusätzlich noch die Samsung Mobile Drivers for Mobile Phones heruntergeladen und installiert werden. Ist dies geschehen kann Odin gestartet werden.

Odin

Odin

Unter AP (früher PDA) wird nun die entsprechende Datei für das rooten eingestellt. Nun muss das Gerät abgeschaltet werden und in den Odin-Download-Modus versetzt und mit dem Rechner verbunden werden. Dazu schaltet man das Gerät mit der Kombination Volume Down + Home + Power an. Anschließend muss die eingeblendete Warnung mit Volume Up bestätigt werden. Wenn das Gerät von Odin erkannt wurde, kann der Rooting-Prozess mittels des Start-Buttons gestartet werden.

Seriennummer einer Samsung Gear S2 ermitteln

Von Samsung gibt es seit einiger Zeit die Smartwatch Gear S2 welche mit dem Betriebssystem Tizen läuft. Die Uhr verfügt dabei über eine Seriennummer, welche auf der Verpackung notiert ist. An der Uhr selbst befindet sich keine Seriennummer. Stattdessen kann die Seriennummer über die Software ausgelesen werden.

Eine Samsung Gear S2 auf der Ladestation

Eine Samsung Gear S2 auf der Ladestation

Dazu öffnet man das Menü und wählt dort den Punkt Einstellungen aus. Unter den Einstellungen gibt es den Punkt Gear-Info und unter diesem Punkt den Punkt Info zu Gerät. Wählt man diesen Punkt aus, kann man durch die einzelnen Systeminformationen scrollen. Neben vielen Werten wie der Modellnummer und der Softwareversion ist dort auch die Seriennummer zu finden.

EF BF BD EF BF BD EF BF BD

Vor einigen Tagen begegneten mir einige Dateien, deren Inhalts größtenteils aus der Zeichenfolge EF BF BD EF BF BD EF BF BD (hexadizimal) bestand. Eigentlich sollte in den entsprechenden Dateien binäre Daten enthalten sein. Damit stellte sich nun die Frage: Was war passiert?

EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD

Auf den ersten Blick sah das ganze so aus, als ob ein Großteil der Datei durch Datenmüll ersetzt wurde. Schaut man sich die Zeichenfolge allerdings genauer an, so wird man feststellen das sich die Folge EF BF BD immer und immer wieder wiederholt. Bei dieser Zeichenfolge handelt es sich um die hexadezimale Schreibweise des Unicode-Zeichens für den Replacement Character welcher meist durch eine Raute mit einem Fragezeichen (�) dargestellt wird.

Eindeutiger wäre das Problem gewesen, wenn die erzeugten Dateien mit der Zeichenfolge EF BB BF begonnen hätte. Dabei handelt es sich um das Byte Order Mark für eine UTF-8 kodierte Datei. Damit wäre gleich klar geworden, das die enthaltenen Daten nicht zu einer Datei mit binären Inhalten passen. Doch wie sind diese Dateien nun entstanden? Der Ursprung der Dateien ist in einer Java-Applikation zu finden, welche diese Dateien erstellt. Diese kopierte die Daten von A nach B, im Quelltext (man ignoriere das fehlende try with resources) könnte das so ausgesehen haben:

FileInputStream fileInputStream  = new FileInputStream("binary.dat");
FileWriter fileWriter = new FileWriter("binary-copied.dat");

int byteData;

while ((byteData = fileInputStream.read()) != -1) {
    fileWriter.write(byteData);
}

fileInputStream.close();
fileWriter.close();

Hier wird ein FileInputStream geöffnet und dieser Stück für Stück mit einem FileWriter in die Zieldatei geschrieben. Genau an dieser Stelle entsteht das Problem – der FileWriter ist nämlich ein zeichenbasierter Writer, das bedeutet das sämtliche Zeichen, die mit diesem geschrieben werden, kodiert werden. Wenn nun bei dieser Kodierung ein Zeichen gefunden wird, welches nicht im Unicode abgebildet werden kann, so erhält dieses Zeichen den Wert EF BF BD – besagter Replacement Character. Damit ist dann auch erklärt warum die binären Dateien hauptsächlich nur noch aus diesen Zeichen bestanden. Die echten Daten wurden beim Kopiervorgang größtenteils schlicht und ergreifend in den Replacement Character konvertiert, da sich für diese Daten keine Entsprechung im Unicode fand.