Перейти к основному содержанию
Помощь

Текущая версия: Gambrius ,

Текст:

Hallo,
 
ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:
 
 
 
'''Folgenden Strukturaufbau konnte ich erkennen:'''
 
A - 06 Byte - Konstanter Wert (Identifikation als Tonie-Datei, evtl. Versionsnumer der Header Struktur)
 
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)
 
C - 01 Byte - Konstanter Wert "10"
 
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei
 
E - 01 Byte - Konstanter Wert "18"
 
F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)
 
G - 02 Byte - Konstanter Wert "0522"
 
H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block
 
I - XX Byte - pro Track 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)[br]
 
 
J - 01 Byte - Konstanter Wert "2D"
 
K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Bytes im Sprungmarkenbereich)][br]
 
 
L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten[br]
 
 
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
 
'''Bereich A:'''[br]
 
 
Bereich A:[br]
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
 
'''Bereich B:'''[br]
 
 
Bereich B:[br]
Der Hash wird rein über den Teil der Datei gebildet, die den OGG Audioteil darstellt.
 


Bereich D:
'''Bereich D:'''


Bereich D:
'''Bereich D:'''
 
Der Wert ändert sich je nachdem wie viele Tracks und welche Gesamtlänge die Audiodaten haben. Vermutlich ist hier die Gesamtspielzeit in einem TimeStamp enthalten
 


Bereich F:
'''Bereich F:'''


Bereich F:
'''Bereich F:'''
 
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte Änderungsdatum der Cloud Daten hinterlegt ist.
 
Beim Auflegen eines Tonies wird dieser Zeitstempel mit dem der Cloud verglichen und danach entschieden, ob eine Aktualisierung der Offlinedaten auf der SD-Karte statt findet. Evtl. wird auch noch der SHA-1 Hash abgeglichen, konnte aber noch nicht nachvollzogen werden.
 


Bereich H:
'''Bereich H:'''


Bereich H:
'''Bereich H:'''
 
Hier wird die Byte-Länge / Byte-Anzahl des folgenden Bereiches dargestellt. Kleinster Wert ist "01", wenn nur ein Kapitel dem Kreativtonie zugeordnet wurde.
 


Bereich I:
'''Bereich I:'''


Bereich I:
'''Bereich I:'''
 
Dieser Bereich ist in der Größe variabel. Die Größe hängt von der Anzahl der Kapitel auf dem Tonie ab. Das erste Kapitel wird immer mit einem Byte "00" dargestellt, da dieses quasi den Anfang der Audiodatei darstellt. Für jedes weitere Kapitel werden zwei Bytes hinzugefügt. Diese stellen eine Sprungmarke da, um in der zu einer gesamt  zusammen gefügten Audiodatei in die einzelnen Kapitel zu springen. Aufbau der zwei Bytes ist noch unbekannt. Jedoch konnte festgestellt werden, wenn einfach nur ein weiteres Kapitel hinzugefügt wird, verändern sich die Doppelbytes für die davor liegenden Sprungmarken nicht. Es wird lediglich ein weiteres Doppelbyte hinzugefügt.
 
Evtl. handelt es sich hierbei um die "Absolute Granule Position" und dem "PreSkip". Nähere Informationen hierzu im Datenblatt zum Opus Audiocodec im Kapitel 4.3
 
'''Kapitel K:'''[br]
 
 
Kapitel K:[br]
Die Summe aus diesem Byte und dem Byte im Bereich H (Anzahl der Bytes für die Sprungmarken), ergibt immer 214.
 
Also lässt sich sagen "Byte K = 214 - Byte H".
 


Gesamtgröße Header:
'''Gesamtgröße Header:'''


Gesamtgröße Header:
'''Gesamtgröße Header:'''
 
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.
 
Der restliche Raum bis zum 4096. Byte ist mit "00" gefüllt.
 


Automatische Cloudaktualisierung:
'''Automatische Cloudaktualisierung:'''


Automatische Cloudaktualisierung:
'''Automatische Cloudaktualisierung:'''
 
Wahrscheinlich nur durch eine Abweichung zwischen dem Offlinewert des Bereichs F (Zeitstempel) und dem in der Cloud abgespeicherten Zeitstempels der letzten Änderung. Evtl. wird auch der SHA-1 Hash betrachtet, konnte noch nicht verifiziert werden.
 


Dateiname:
'''Dateiname:'''


Dateiname:
'''Dateiname:'''
 
Der Dateiname der auf der SD-Karte gespeicherten Datei (bestehend aus Header und Ogg Anteil) ist die Tonie-Cloud-ID. Also eine eindeutig dem User zugeordnete ID.
 


Verzeichnisname:
'''Verzeichnisname:'''


Verzeichnisname:
'''Verzeichnisname:'''
 
Der Verzeichnisname hat einen direkten Bezug zum Tonie. Entweder besteht er aus dem letzten Teil der UID des Tonies, und ist somit einmalig pro Tonie vergeben, oder er ist eindeutig einem Hörspiel zugeordnet. Letzteres würde bedeuten, dass zwei gleiche Tonies den gleichen Verzeichnisnamen haben, bzw. sich auf einer Tonibox ein Verzeichnis teilen. Hierzu fehlte mit ein zweiter Tonie, um das nachzuvollziehen. Evtl. kann dieses jemand machen. Meine Löwenfigur des Tonie-Starterkits hat folgenden Verzeichnisnamen: "BD200Bxx".
 
Den Abgleich mit der UID konnte ich noch nicht durchführen, da ich noch Probleme mit der Bildung des XOR-Passwortes habe und somit die UID noch nicht auslesen konnte.
 


RFID Daten:
'''RFID Daten:'''


RFID Daten:
'''RFID Daten:'''
 
Ich konnte bereits erfolgreich die RandomNumbers von den Tonies abfragen, jedoch habe ich mit dem daraus gebildeten XOR-Passwort keine Antwort erhalten. Falls jemand mir erklären könnte, wie ich das XOR-Passwort korrekt bilde und dann mit dem Proxmark3 den Tonie auslesen kann, wäre ich dafür dankbar. Evtl. hat ja jemand bereits ein LUA Script hierzu geschrieben. Über dieses würde ich mich auch freuen.
 
Interessant bei den RFID Daten ist zum einen die UID (siehe Punkt Verzeichnisnamen) und natürlich auch die Daten die auf dem Chip abgespeichert sind. Hier würde mich der Abgleich mit dem Header interessieren, ob daraus etwas ableitbar ist, oder ob es sich nur um eine verschlüsselte Checksumme der UID handelt, um die Echtheit des Tonies nachzuweisen.
 
Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.
 


Audiocodec:
'''Audiocodec:'''


Audiocodec:
'''Audiocodec:'''
 
Bei dem Audicodec handelt es sich um eine Opus Audiodatei, die mit dem Encoder Lavf58.20.100 des Opustools in der Version 0.1.10 codiertwurde (Danke Hoffy1968)
 
 
 
Kommunikation Toniebox mit Tonie-Cloud:
 
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.
 
Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]
 
 
 
 
Mal sehen was die Cloud uns noch so verrät.[br]
 
 
Soweit der aktuelle Stand des Ganzen.[br]
 
 
Besonderen Dank an Hoffy1968, für die gute Vorarbeit und den guten Austausch.
 
Wenn noch jemand weitere Informationen hat, würde ich diesen Stand gerne aktualisieren.
 
Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.
 
Gruß,[br]
 
 
Gambrius
 
P.S.: Werde mal prüfen, ob wir für dieses Thema nicht ein WIKI aufmachen können.

Статус:

open

Отредактировано: Gambrius ,

Текст:

Hallo,
 
ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:
 
'''Folgenden Strukturaufbau konnte ich erkennen:'''
 
A - 06 Byte - Konstanter Wert (Identifikation als Tonie-Datei, evtl. Versionsnumer der Header Struktur)[br]
 
 
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)[br]
 
 
C - 01 Byte - Konstanter Wert "10"[br]
 
 
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei[br]
 
'''Folgenden Strukturaufbau konnte ich erkennen:'''
 
EA - 0106 Byte - Konstanter Wert "18"[br](Identifikation als Tonie-Datei, evtl. Versionsnumer der Header Struktur)
EA - 0106 Byte - Konstanter Wert "18"[br](Identifikation als Tonie-Datei, evtl. Versionsnumer der Header Struktur)
 
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)
 
FC - 0401 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)[br]Konstanter Wert "10"
FC - 0401 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)[br]Konstanter Wert "10"
 
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei
 
GE - 0201 Byte - Konstanter Wert "0522"[br]18"
GE - 0201 Byte - Konstanter Wert "0522"[br]18"
 
F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)
 
HG - 0102 Byte - Anzahl der Bytes im Folgenden Byte-Block[br]Konstanter Wert "0522"
HG - 0102 Byte - Anzahl der Bytes im Folgenden Byte-Block[br]Konstanter Wert "0522"
 
H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block
 
I - XX Byte - pro Track 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)[br]


J
J - 01 Byte - Konstanter Wert "2D"[br]
2D"


J
J - 01 Byte - Konstanter Wert "2D"[br]
2D"
 
K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Bytes im Sprungmarkenbereich)][br]
 
 
L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten[br]
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
 
 
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
 
Maximale Größe des Headers = 255 Byte
 
Bereich A:[br]
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
 
 
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
 
Bereich B:[br]
Der Hash wird rein über den Teil der Datei gebildet, die den OGG Audioteil darstellt.
 
 
Der Hash wird rein über den Teil der Datei gebildet, die den OGG Audioteil darstellt.
 
Bereich D:[br]
 
Bereich D:
 
Der Wert ändert sich je nachdem wie viele Tracks und welche Gesamtlänge die Audiodaten haben. Vermutlich ist hier die Gesamtspielzeit in einem TimeStamp enthalten
 
Bereich F:[br]
 
 
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte Änderungsdatum der Cloud Daten hinterlegt ist.[br]Bereich F:
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte Änderungsdatum der Cloud Daten hinterlegt ist.[br]Bereich F:
 
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte Änderungsdatum der Cloud Daten hinterlegt ist.
 
Beim Auflegen eines Tonies wird dieser Zeitstempel mit dem der Cloud verglichen und danach entschieden, ob eine Aktualisierung der Offlinedaten auf der SD-Karte statt findet. Evtl. wird auch noch der SHA-1 Hash abgeglichen, konnte aber noch nicht nachvollzogen werden.
 
Bereich H:[br]
 
 
Bereich H:
 
Hier wird die Byte-Länge / Byte-Anzahl des folgenden Bereiches dargestellt. Kleinster Wert ist "01", wenn nur ein Kapitel dem Kreativtonie zugeordnet wurde.
 
Bereich I:[br]
 
 
Bereich I:
 
Dieser Bereich ist in der Größe variabel. Die Größe hängt von der Anzahl der Kapitel auf dem Tonie ab. Das erste Kapitel wird immer mit einem Byte "00" dargestellt, da dieses quasi den Anfang der Audiodatei darstellt. Für jedes weitere Kapitel werden zwei Bytes hinzugefügt. Diese stellen eine Sprungmarke da, um in der zu einer gesamt  zusammen gefügten Audiodatei in die einzelnen Kapitel zu springen. Aufbau der zwei Bytes ist noch unbekannt. Jedoch konnte festgestellt werden, wenn einfach nur ein weiteres Kapitel hinzugefügt wird, verändern sich die Doppelbytes für die davor liegenden Sprungmarken nicht. Es wird lediglich ein weiteres Doppelbyte hinzugefügt.
 
Evtl. handelt es sich hierbei um die "Absolute Granule Position" und dem "PreSkip". Nähere Informationen hierzu im Datenblatt zum Opus Audiocodec im Kapitel 4.3
 
Kapitel K:[br]
 
 
Kapitel K:[br]
Die Summe aus diesem Byte und dem Byte im Bereich H (Anzahl der Bytes für die Sprungmarken), ergibt immer 214.
 
Also lässt sich sagen "Byte K = 214 - Byte H".
 
Gesamtgröße Header:[br]
 
 
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.[br]Gesamtgröße Header:
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.[br]Gesamtgröße Header:
 
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.
 
Der restliche Raum bis zum 4096. Byte ist mit "00" gefüllt.
 
Automatische Cloudaktualisierung:[br]
 
 
Automatische Cloudaktualisierung:
 
Wahrscheinlich nur durch eine Abweichung zwischen dem Offlinewert des Bereichs F (Zeitstempel) und dem in der Cloud abgespeicherten Zeitstempels der letzten Änderung. Evtl. wird auch der SHA-1 Hash betrachtet, konnte noch nicht verifiziert werden.
 
Dateiname:[br]
 
 
Dateiname:
 
Der Dateiname der auf der SD-Karte gespeicherten Datei (bestehend aus Header und Ogg Anteil) ist die Tonie-Cloud-ID. Also eine eindeutig dem User zugeordnete ID.
 
Verzeichnisname:[br]
 
 
Verzeichnisname:
 
Der Verzeichnisname hat einen direkten Bezug zum Tonie. Entweder besteht er aus dem letzten Teil der UID des Tonies, und ist somit einmalig pro Tonie vergeben, oder er ist eindeutig einem Hörspiel zugeordnet. Letzteres würde bedeuten, dass zwei gleiche Tonies den gleichen Verzeichnisnamen haben, bzw. sich auf einer Tonibox ein Verzeichnis teilen. Hierzu fehlte mit ein zweiter Tonie, um das nachzuvollziehen. Evtl. kann dieses jemand machen. Meine Löwenfigur des Tonie-Starterkits hat folgenden Verzeichnisnamen: "BD200Bxx".
 
Den Abgleich mit der UID konnte ich noch nicht durchführen, da ich noch Probleme mit der Bildung des XOR-Passwortes habe und somit die UID noch nicht auslesen konnte.
 
RFID Daten:[br]
 
 
RFID Daten:
 
Ich konnte bereits erfolgreich die RandomNumbers von den Tonies abfragen, jedoch habe ich mit dem daraus gebildeten XOR-Passwort keine Antwort erhalten. Falls jemand mir erklären könnte, wie ich das XOR-Passwort korrekt bilde und dann mit dem Proxmark3 den Tonie auslesen kann, wäre ich dafür dankbar. Evtl. hat ja jemand bereits ein LUA Script hierzu geschrieben. Über dieses würde ich mich auch freuen.
 
Interessant bei den RFID Daten ist zum einen die UID (siehe Punkt Verzeichnisnamen) und natürlich auch die Daten die auf dem Chip abgespeichert sind. Hier würde mich der Abgleich mit dem Header interessieren, ob daraus etwas ableitbar ist, oder ob es sich nur um eine verschlüsselte Checksumme der UID handelt, um die Echtheit des Tonies nachzuweisen.
 
Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.
 
Audiocodec:[br]
 
 
Audiocodec:
 
Bei dem Audicodec handelt es sich um eine Opus Audiodatei, die mit dem Encoder Lavf58.20.100 des Opustools in der Version 0.1.10 codiertwurde (Danke Hoffy1968)
 
Kommunikation Toniebox mit Tonie-Cloud:[br]
 
 
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]Kommunikation Toniebox mit Tonie-Cloud:
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]Kommunikation Toniebox mit Tonie-Cloud:
 
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.
 
Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]
 
 
 
 
Mal sehen was die Cloud uns noch so verrät.[br]
 
 
Soweit der aktuelle Stand des Ganzen.[br]
 
 
Besonderen Dank an Hoffy1968, für die gute Vorarbeit und den guten Austausch.
 
Wenn noch jemand weitere Informationen hat, würde ich diesen Stand gerne aktualisieren.
 
Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.
 
Gruß,[br]
 
 
Gambrius
 
P.S.: Werde mal prüfen, ob wir für dieses Thema nicht ein WIKI aufmachen können.

Статус:

open

Отредактировано: Gambrius ,

Текст:

Hallo,
 
ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:
 
Folgenden'''Folgenden Strukturaufbau konnte ich erkennen:erkennen:'''
Folgenden'''Folgenden Strukturaufbau konnte ich erkennen:erkennen:'''
 
A - 06 Byte - Konstanter Wert (Identifikation als Tonie-Datei, evtl. Versionsnumer der Header Struktur)[br]
 
 
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)[br]
 
 
C - 01 Byte - Konstanter Wert "10"[br]
 
 
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei[br]
 
 
E - 01 Byte - Konstanter Wert "18"[br]
 
 
F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)[br]
 
 
G - 02 Byte - Konstanter Wert "0522"[br]
 
 
H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block[br]
 
 
I - XX Byte - pro Track 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)[br]
 
 
J - 01 Byte - Konstanter Wert "2D"[br]
 
 
K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Bytes im Sprungmarkenbereich)][br]
 
 
L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten[br]
 
 
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
 
Maximale Größe des Headers = 255 Byte
 
Bereich A:[br]
 
 
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
 
Bereich B:[br]
 
 
Der Hash wird rein über den Teil der Datei gebildet, die den OGG Audioteil darstellt.
 
Bereich D:[br]
 
 
Der Wert ändert sich je nachdem wie viele Tracks und welche Gesamtlänge die Audiodaten haben. Vermutlich ist hier die Gesamtspielzeit in einem TimeStamp enthalten
 
Bereich F:[br]
 
 
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte Änderungsdatum der Cloud Daten hinterlegt ist.[br]
 
 
Beim Auflegen eines Tonies wird dieser Zeitstempel mit dem der Cloud verglichen und danach entschieden, ob eine Aktualisierung der Offlinedaten auf der SD-Karte statt findet. Evtl. wird auch noch der SHA-1 Hash abgeglichen, konnte aber noch nicht nachvollzogen werden.
 
Bereich H:[br]
 
 
Hier wird die Byte-Länge / Byte-Anzahl des folgenden Bereiches dargestellt. Kleinster Wert ist "01", wenn nur ein Kapitel dem Kreativtonie zugeordnet wurde.
 
Bereich I:[br]
 
 
Dieser Bereich ist in der Größe variabel. Die Größe hängt von der Anzahl der Kapitel auf dem Tonie ab. Das erste Kapitel wird immer mit einem Byte "00" dargestellt, da dieses quasi den Anfang der Audiodatei darstellt. Für jedes weitere Kapitel werden zwei Bytes hinzugefügt. Diese stellen eine Sprungmarke da, um in der zu einer gesamt  zusammen gefügten Audiodatei in die einzelnen Kapitel zu springen. Aufbau der zwei Bytes ist noch unbekannt. Jedoch konnte festgestellt werden, wenn einfach nur ein weiteres Kapitel hinzugefügt wird, verändern sich die Doppelbytes für die davor liegenden Sprungmarken nicht. Es wird lediglich ein weiteres Doppelbyte hinzugefügt.
 
Evtl. handelt es sich hierbei um die "Absolute Granule Position" und dem "PreSkip". Nähere Informationen hierzu im Datenblatt zum Opus Audiocodec im Kapitel 4.3
 
Kapitel K:[br]
 
 
Die Summe aus diesem Byte und dem Byte im Bereich H (Anzahl der Bytes für die Sprungmarken), ergibt immer 214.
 
Also lässt sich sagen "Byte K = 214 - Byte H".
 
Gesamtgröße Header:[br]
 
 
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.[br]
 
 
Der restliche Raum bis zum 4096. Byte ist mit "00" gefüllt.
 
Automatische Cloudaktualisierung:[br]
 
 
Wahrscheinlich nur durch eine Abweichung zwischen dem Offlinewert des Bereichs F (Zeitstempel) und dem in der Cloud abgespeicherten Zeitstempels der letzten Änderung. Evtl. wird auch der SHA-1 Hash betrachtet, konnte noch nicht verifiziert werden.
 
Dateiname:[br]
 
 
Der Dateiname der auf der SD-Karte gespeicherten Datei (bestehend aus Header und Ogg Anteil) ist die Tonie-Cloud-ID. Also eine eindeutig dem User zugeordnete ID.
 
Verzeichnisname:[br]
 
 
Der Verzeichnisname hat einen direkten Bezug zum Tonie. Entweder besteht er aus dem letzten Teil der UID des Tonies, und ist somit einmalig pro Tonie vergeben, oder er ist eindeutig einem Hörspiel zugeordnet. Letzteres würde bedeuten, dass zwei gleiche Tonies den gleichen Verzeichnisnamen haben, bzw. sich auf einer Tonibox ein Verzeichnis teilen. Hierzu fehlte mit ein zweiter Tonie, um das nachzuvollziehen. Evtl. kann dieses jemand machen. Meine Löwenfigur des Tonie-Starterkits hat folgenden Verzeichnisnamen: "BD200Bxx".
 
Den Abgleich mit der UID konnte ich noch nicht durchführen, da ich noch Probleme mit der Bildung des XOR-Passwortes habe und somit die UID noch nicht auslesen konnte.
 
RFID Daten:[br]
 
 
Ich konnte bereits erfolgreich die RandomNumbers von den Tonies abfragen, jedoch habe ich mit dem daraus gebildeten XOR-Passwort keine Antwort erhalten. Falls jemand mir erklären könnte, wie ich das XOR-Passwort korrekt bilde und dann mit dem Proxmark3 den Tonie auslesen kann, wäre ich dafür dankbar. Evtl. hat ja jemand bereits ein LUA Script hierzu geschrieben. Über dieses würde ich mich auch freuen.
 
Interessant bei den RFID Daten ist zum einen die UID (siehe Punkt Verzeichnisnamen) und natürlich auch die Daten die auf dem Chip abgespeichert sind. Hier würde mich der Abgleich mit dem Header interessieren, ob daraus etwas ableitbar ist, oder ob es sich nur um eine verschlüsselte Checksumme der UID handelt, um die Echtheit des Tonies nachzuweisen.
 
Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.
 
Audiocodec:[br]
 
 
Bei dem Audicodec handelt es sich um eine Opus Audiodatei, die mit dem Encoder Lavf58.20.100 des Opustools in der Version 0.1.10 codiertwurde (Danke Hoffy1968)
 
Kommunikation Toniebox mit Tonie-Cloud:[br]
 
 
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]
 
 
Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]
 
 
Mal sehen was die Cloud uns noch so verrät.[br]
 
 
Soweit der aktuelle Stand des Ganzen.[br]
 
 
Besonderen Dank an Hoffy1968, für die gute Vorarbeit und den guten Austausch.
 
Wenn noch jemand weitere Informationen hat, würde ich diesen Stand gerne aktualisieren.
 
Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.
 
Gruß,[br]
 
 
Gambrius
 
P.S.: Werde mal prüfen, ob wir für dieses Thema nicht ein WIKI aufmachen können.

Статус:

open

Отредактировано: Gambrius ,

Текст:

Hallo,
 
ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:
 
Folgenden Strukturaufbau konnte ich erkennen:
 
A - 06 Byte - Konstanter Wert (Entweder IdentifikationIdentifikation als Tonie-Datei, oder eindeutige User-Zuordnung)evtl. Versionsnumer der Header Struktur)[br]
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)[br]
C - 01 Byte - Konstanter Wert "10"[br]
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei[br]
E - 01 Byte - Konstanter Wert "18"[br]
F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)[br]
G - 02 Byte - Konstanter Wert "0522"[br]
H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block[br]
I - XX Byte - pro Track 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)[br]
J - 01 Byte - Konstanter Wert "2D"[br]
K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Bytes im Sprungmarkenbereich)][br]
L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten[br]
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
A - 06 Byte - Konstanter Wert (Entweder IdentifikationIdentifikation als Tonie-Datei, oder eindeutige User-Zuordnung)evtl. Versionsnumer der Header Struktur)[br]
B - 20 Byte - SHA-1 Hash der AudioDatei (Hash über Audioanteil der Datei nach dem 4096 Byte Block des Headers)[br]
C - 01 Byte - Konstanter Wert "10"[br]
D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei[br]
E - 01 Byte - Konstanter Wert "18"[br]
F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)[br]
G - 02 Byte - Konstanter Wert "0522"[br]
H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block[br]
I - XX Byte - pro Track 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)[br]
J - 01 Byte - Konstanter Wert "2D"[br]
K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Bytes im Sprungmarkenbereich)][br]
L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten[br]
M - XX Byte - mit “00” Bytes bis 4095 aufgefüllt.
 
B - 20Maximale Größe des Headers = 255 Byte - SHA1 der AudioDatei (Prüfsumme der Audidatei nach Header Daten)
B - 20Maximale Größe des Headers = 255 Byte - SHA1 der AudioDatei (Prüfsumme der Audidatei nach Header Daten)
 
C - 01 Byte - Konstanter Wert "10"Bereich A:[br]
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
C - 01 Byte - Konstanter Wert "10"Bereich A:[br]
Hierbei handelt es sich um eine Konstante Kennung, die über alle Tonieboxen identisch ist. Also keine User-Zuordnung beinhaltet. Evtl. ist hier noch eine Versionsnummer der Header-Struktur hinterlegt.
 
D - 04 Byte - ??? - Vermutlich GesamtlaufzeitBereich B:[br]
Der Hash wird rein über den Teil
der AudiodateiDatei gebildet, die den OGG Audioteil darstellt.
D - 04 Byte - ??? - Vermutlich GesamtlaufzeitBereich B:[br]
Der Hash wird rein über den Teil
der AudiodateiDatei gebildet, die den OGG Audioteil darstellt.
 
E - 01 Byte - KonstanterBereich D:[br]
Der
Wert "18"ändert sich je nachdem wie viele Tracks und welche Gesamtlänge die Audiodaten haben. Vermutlich ist hier die Gesamtspielzeit in einem TimeStamp enthalten
E - 01 Byte - KonstanterBereich D:[br]
Der
Wert "18"ändert sich je nachdem wie viele Tracks und welche Gesamtlänge die Audiodaten haben. Vermutlich ist hier die Gesamtspielzeit in einem TimeStamp enthalten
 
F - 04 Byte - ??? - Vermutlich letztesBereich F:[br]
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte
Änderungsdatum in der Cloud (z.B. Kreativtonie)Daten hinterlegt ist.[br]
Beim Auflegen eines Tonies wird dieser Zeitstempel mit dem der Cloud verglichen und danach entschieden, ob eine Aktualisierung der Offlinedaten auf der SD-Karte statt findet. Evtl. wird auch noch der SHA-1 Hash abgeglichen, konnte aber noch nicht nachvollzogen werden.
F - 04 Byte - ??? - Vermutlich letztesBereich F:[br]
Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier das letzte
Änderungsdatum in der Cloud (z.B. Kreativtonie)Daten hinterlegt ist.[br]
Beim Auflegen eines Tonies wird dieser Zeitstempel mit dem der Cloud verglichen und danach entschieden, ob eine Aktualisierung der Offlinedaten auf der SD-Karte statt findet. Evtl. wird auch noch der SHA-1 Hash abgeglichen, konnte aber noch nicht nachvollzogen werden.
 
G - 02 Byte - KonstanterBereich H:[br]
Hier wird die Byte-Länge / Byte-Anzahl des folgenden Bereiches dargestellt. Kleinster
Wert "0522"ist "01", wenn nur ein Kapitel dem Kreativtonie zugeordnet wurde.
G - 02 Byte - KonstanterBereich H:[br]
Hier wird die Byte-Länge / Byte-Anzahl des folgenden Bereiches dargestellt. Kleinster
Wert "0522"ist "01", wenn nur ein Kapitel dem Kreativtonie zugeordnet wurde.
 
H - 01 Byte -Bereich I:[br]
Dieser Bereich ist in der Größe variabel. Die Größe hängt von der
Anzahl der Kapitel auf dem Tonie ab. Das erste Kapitel wird immer mit einem Byte "00" dargestellt, da dieses quasi den Anfang der Audiodatei darstellt. Für jedes weitere Kapitel werden zwei Bytes hinzugefügt. Diese stellen eine Sprungmarke da, um in der zu einer gesamt  zusammen gefügten Audiodatei in die einzelnen Kapitel zu springen. Aufbau der zwei Bytes im Folgenden Byte-Blockist noch unbekannt. Jedoch konnte festgestellt werden, wenn einfach nur ein weiteres Kapitel hinzugefügt wird, verändern sich die Doppelbytes für die davor liegenden Sprungmarken nicht. Es wird lediglich ein weiteres Doppelbyte hinzugefügt.
H - 01 Byte -Bereich I:[br]
Dieser Bereich ist in der Größe variabel. Die Größe hängt von der
Anzahl der Kapitel auf dem Tonie ab. Das erste Kapitel wird immer mit einem Byte "00" dargestellt, da dieses quasi den Anfang der Audiodatei darstellt. Für jedes weitere Kapitel werden zwei Bytes hinzugefügt. Diese stellen eine Sprungmarke da, um in der zu einer gesamt  zusammen gefügten Audiodatei in die einzelnen Kapitel zu springen. Aufbau der zwei Bytes im Folgenden Byte-Blockist noch unbekannt. Jedoch konnte festgestellt werden, wenn einfach nur ein weiteres Kapitel hinzugefügt wird, verändern sich die Doppelbytes für die davor liegenden Sprungmarken nicht. Es wird lediglich ein weiteres Doppelbyte hinzugefügt.
 
I - XX Byte - pro Track (oder Sprungmarke) 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)Evtl. handelt es sich hierbei um die "Absolute Granule Position" und dem "PreSkip". Nähere Informationen hierzu im Datenblatt zum Opus Audiocodec im Kapitel 4.3
I - XX Byte - pro Track (oder Sprungmarke) 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)Evtl. handelt es sich hierbei um die "Absolute Granule Position" und dem "PreSkip". Nähere Informationen hierzu im Datenblatt zum Opus Audiocodec im Kapitel 4.3
 
J - 01Kapitel K:[br]
Die Summe aus diesem
Byte - Konstanter Wert "2D"und dem Byte im Bereich H (Anzahl der Bytes für die Sprungmarken), ergibt immer 214.
J - 01Kapitel K:[br]
Die Summe aus diesem
Byte - Konstanter Wert "2D"und dem Byte im Bereich H (Anzahl der Bytes für die Sprungmarken), ergibt immer 214.
 
K - 01 Byte - Wert ergibtAlso lässt sich aus [214sagen "Byte K = 214 - "Feld H" (Anzahl der Sprungmarken)]Byte H".
K - 01 Byte - Wert ergibtAlso lässt sich aus [214sagen "Byte K = 214 - "Feld H" (Anzahl der Sprungmarken)]Byte H".
 
L - 01Gesamtgröße Header:[br]
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.[br]
Der restliche Raum bis zum 4096.
Byte - Konstanter Wert "1F" - Abschluss der Header Daten (danachist mit 00 aufgefüllt)"00" gefüllt.
L - 01Gesamtgröße Header:[br]
Die Gesamtlänge des Headers liegt bei maximal 255 Byte.[br]
Der restliche Raum bis zum 4096.
Byte - Konstanter Wert "1F" - Abschluss der Header Daten (danachist mit 00 aufgefüllt)"00" gefüllt.
 
 

Maximale Größe des Headers = 255 Byte

Die Restlichen Bytes bis 4096 sind immer mit "00" Aufgefüllt.

Bereich A:[br]

Bei mir ist der Konstante Wert “00 00 0F FC XX 14” enthalten. Könnt Ihr dieses bestätigen, dass dieses bei Euch auch so ist? Dann wäre es einfach
Automatische Cloudaktualisierung:[br]
Wahrscheinlich
nur ein Identifikationswert, der den Header als einen Tonie Header bestätigt. Evtl. ist dort nochdurch eine VersionsnummerAbweichung zwischen dem Offlinewert des Softwarestandes hinterlegt.[br]

Solltet Ihr jedoch eine gänzlich andere Nummer haben, so deutet dieses auf eine
Bereichs F (Zeitstempel) und dem User zugehörige Nummer.

Bereich F:[br]

Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier ein Änderungsdatum
in der Cloud Daten hinterlegt ist, um zu entscheiden, ob ein erneuter Downloadabgespeicherten Zeitstempels der Kreativtonie Daten von Nöten ist.

Bereich I:[br]

Für jeden weitern Track
letzten Änderung. Evtl. wird auch der einem Kreativtonie hinzugefügt wird, werden in diesem Bereich zwei weitere Bytes hinzugefügt. Gehe davon aus, dass es sich hierbei entweder um direkte Sprungmarken, oder aber um die "Granule Position” und dem “PreSkip”-Wert handelt. (https://tools.ietf.org/html/rfc7845 Kapitel 4.3 —> Mit Dank an Hoffy1968)SHA-1 Hash betrachtet, konnte noch nicht verifiziert werden.
 

Maximale Größe des Headers = 255 Byte

Die Restlichen Bytes bis 4096 sind immer mit "00" Aufgefüllt.

Bereich A:[br]

Bei mir ist der Konstante Wert “00 00 0F FC XX 14” enthalten. Könnt Ihr dieses bestätigen, dass dieses bei Euch auch so ist? Dann wäre es einfach
Automatische Cloudaktualisierung:[br]
Wahrscheinlich
nur ein Identifikationswert, der den Header als einen Tonie Header bestätigt. Evtl. ist dort nochdurch eine VersionsnummerAbweichung zwischen dem Offlinewert des Softwarestandes hinterlegt.[br]

Solltet Ihr jedoch eine gänzlich andere Nummer haben, so deutet dieses auf eine
Bereichs F (Zeitstempel) und dem User zugehörige Nummer.

Bereich F:[br]

Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier ein Änderungsdatum
in der Cloud Daten hinterlegt ist, um zu entscheiden, ob ein erneuter Downloadabgespeicherten Zeitstempels der Kreativtonie Daten von Nöten ist.

Bereich I:[br]

Für jeden weitern Track
letzten Änderung. Evtl. wird auch der einem Kreativtonie hinzugefügt wird, werden in diesem Bereich zwei weitere Bytes hinzugefügt. Gehe davon aus, dass es sich hierbei entweder um direkte Sprungmarken, oder aber um die "Granule Position” und dem “PreSkip”-Wert handelt. (https://tools.ietf.org/html/rfc7845 Kapitel 4.3 —> Mit Dank an Hoffy1968)SHA-1 Hash betrachtet, konnte noch nicht verifiziert werden.
 
Dateiname:[br]

Der
Der Dateiname besteht aus der Tonie-Cloud-ID,auf der SD-Karte gespeicherten Datei (bestehend aus Header und Ogg Anteil) ist somitdie Tonie-Cloud-ID. Also eine eindeutig dem User eindeutig zugewiesene Nummerzugeordnete ID.

Der
Der Dateiname besteht aus der Tonie-Cloud-ID,auf der SD-Karte gespeicherten Datei (bestehend aus Header und Ogg Anteil) ist somitdie Tonie-Cloud-ID. Also eine eindeutig dem User eindeutig zugewiesene Nummerzugeordnete ID.
 
Verzeichnisname:[br]
Der Verzeichnisname hat einen direkten Bezug zum Tonie. Entweder besteht er aus dem letzten Teil der UID des Tonies, und ist somit einmalig pro Tonie vergeben, oder er ist eindeutig einem Hörspiel zugeordnet. Letzteres würde bedeuten, dass zwei gleiche Tonies den gleichen Verzeichnisnamen haben, bzw. sich auf einer Tonibox ein Verzeichnis teilen. Hierzu fehlte mit ein zweiter Tonie, um das nachzuvollziehen. Evtl. kann dieses jemand machen. Meine Löwenfigur des Tonie-Starterkits hat folgenden Verzeichnisnamen: "BD200Bxx".
 
Der Verzeichnisname setzt sich entweder aus einem TeilDen Abgleich mit der UID zusammen, oder ist eine eindeutig der Geschichte zugewiesene ID. Dieses kannkonnte ich aktuellnoch nicht beantwortendurchführen, da ich keinen doppelten Tonie zu Hand habe. Jedoch habe ich einen Löwen aus dem Startetestnoch Probleme mit dem Verzeichnisnamen “BD200Bxx”. Falls jemand bitte bestätigen könnte, ob der Löwe bei Euch auch diesen Verzeichnisnamen hat, würde dieses helfenBildung des XOR-Passwortes habe und somit die UID noch nicht auslesen konnte.
Der Verzeichnisname setzt sich entweder aus einem TeilDen Abgleich mit der UID zusammen, oder ist eine eindeutig der Geschichte zugewiesene ID. Dieses kannkonnte ich aktuellnoch nicht beantwortendurchführen, da ich keinen doppelten Tonie zu Hand habe. Jedoch habe ich einen Löwen aus dem Startetestnoch Probleme mit dem Verzeichnisnamen “BD200Bxx”. Falls jemand bitte bestätigen könnte, ob der Löwe bei Euch auch diesen Verzeichnisnamen hat, würde dieses helfenBildung des XOR-Passwortes habe und somit die UID noch nicht auslesen konnte.
 
Da ich es aktuell noch nicht geschafft habe,RFID Daten:[br]
Ich konnte bereits erfolgreich die RandomNumbers von
den Chip Korrekt auszulesen (wahrscheinlich bildeTonies abfragen, jedoch habe ich mit dem daraus gebildeten XOR-Passwort keine Antwort erhalten. Falls jemand mir erklären könnte, wie ich das XOR-Passwort falschkorrekt bilde und bekomme deshalbdann mit meinemdem Proxmark3 keine Daten.), würde ich dennoch gerne die Informationen des Chips, also die UID und den Speicherauszug zum dazugehörigen Header abgleichenTonie auslesen kann, wäre ich dafür dankbar. Evtl. gibt es hierhat ja jemand bereits ein LUA Script hierzu geschrieben. Über dieses würde ich mich auch noch Verbindungen die hilfreich sind.[br]freuen.
Da ich es aktuell noch nicht geschafft habe,RFID Daten:[br]
Ich konnte bereits erfolgreich die RandomNumbers von
den Chip Korrekt auszulesen (wahrscheinlich bildeTonies abfragen, jedoch habe ich mit dem daraus gebildeten XOR-Passwort keine Antwort erhalten. Falls jemand mir erklären könnte, wie ich das XOR-Passwort falschkorrekt bilde und bekomme deshalbdann mit meinemdem Proxmark3 keine Daten.), würde ich dennoch gerne die Informationen des Chips, also die UID und den Speicherauszug zum dazugehörigen Header abgleichenTonie auslesen kann, wäre ich dafür dankbar. Evtl. gibt es hierhat ja jemand bereits ein LUA Script hierzu geschrieben. Über dieses würde ich mich auch noch Verbindungen die hilfreich sind.[br]freuen.
 
Die RandomNumber Bytes bekomme ich erfolgreich abgefragt. Evtl. kann mir jemand helfen, wie ichInteressant bei den 2. SchrittRFID Daten ist zum einen die UID (siehe Punkt Verzeichnisnamen) und natürlich auch die Daten die auf dem Chip abgespeichert sind. Hier würde mich der Abgleich mit dem Proxmark3 erledige. Hat evtl. jemand ein LUA Script hierfür?[br]Header interessieren, ob daraus etwas ableitbar ist, oder ob es sich nur um eine verschlüsselte Checksumme der UID handelt, um die Echtheit des Tonies nachzuweisen.
Die RandomNumber Bytes bekomme ich erfolgreich abgefragt. Evtl. kann mir jemand helfen, wie ichInteressant bei den 2. SchrittRFID Daten ist zum einen die UID (siehe Punkt Verzeichnisnamen) und natürlich auch die Daten die auf dem Chip abgespeichert sind. Hier würde mich der Abgleich mit dem Proxmark3 erledige. Hat evtl. jemand ein LUA Script hierfür?[br]Header interessieren, ob daraus etwas ableitbar ist, oder ob es sich nur um eine verschlüsselte Checksumme der UID handelt, um die Echtheit des Tonies nachzuweisen.
 
Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.
 
Kommunikation TonieboxAudiocodec:[br]
Bei dem Audicodec handelt es sich um eine Opus Audiodatei, die
mit Tonie-Cloud:[br]dem Encoder Lavf58.20.100 des Opustools in der Version 0.1.10 codiertwurde (Danke Hoffy1968)
Kommunikation TonieboxAudiocodec:[br]
Bei dem Audicodec handelt es sich um eine Opus Audiodatei, die
mit Tonie-Cloud:[br]dem Encoder Lavf58.20.100 des Opustools in der Version 0.1.10 codiertwurde (Danke Hoffy1968)
 
Kommunikation Toniebox mit Tonie-Cloud:[br]
Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]
 
Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]
Mal sehen was die Cloud uns noch so verrät.[br]
 
Mal sehen was die Cloud uns noch so verrät.
 
Würde mich freuen weiter mit EuchSoweit der aktuelle Stand des Ganzen.[br]
Besonderen Dank
an diesen Themen zu arbeiten.[br]Hoffy1968, für die gute Vorarbeit und den guten Austausch.
Würde mich freuen weiter mit EuchSoweit der aktuelle Stand des Ganzen.[br]
Besonderen Dank
an diesen Themen zu arbeiten.[br]Hoffy1968, für die gute Vorarbeit und den guten Austausch.
 
KenntWenn noch jemand evtl. ein Forum, in das wir dieses Thema verlagern könnten?weitere Informationen hat, würde ich diesen Stand gerne aktualisieren.
KenntWenn noch jemand evtl. ein Forum, in das wir dieses Thema verlagern könnten?weitere Informationen hat, würde ich diesen Stand gerne aktualisieren.
 
Gruß,[br]Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.
Gruß,[br]Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.
 
Gruß,[br]
Gambrius
 
P.S.: Werde mal prüfen, ob wir für dieses Thema nicht ein WIKI aufmachen können.

Статус:

open

Отредактировано: Sandra Hiller (подробности голоса) ,

Текст:

Hallo,

ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:

Folgenden Strukturaufbau konnte ich erkennen:

A - 06 Byte - Konstanter Wert (Entweder Identifikation als Tonie-Datei, oder eindeutige User-Zuordnung)

B - 20 Byte - SHA1 der AudioDatei (Prüfsumme der Audidatei nach Header Daten)

C - 01 Byte - Konstanter Wert "10"

D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei

E - 01 Byte - Konstanter Wert "18"

F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)

G - 02 Byte - Konstanter Wert "0522"

H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block

I - XX Byte - pro Track (oder Sprungmarke) 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)

J - 01 Byte - Konstanter Wert "2D"

K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Sprungmarken)]

L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten (danach mit 00 aufgefüllt)

 

Maximale Größe des Headers = 255 Byte

Die Restlichen Bytes bis 4096 sind immer mit "00" Aufgefüllt.

Bereich A:[br]

Bei mir ist der Konstante Wert “00 00 0F FC XX 14” enthalten. Könnt Ihr dieses bestätigen, dass dieses bei Euch auch so ist? Dann wäre es einfach nur ein Identifikationswert, der den Header als einen Tonie Header bestätigt. Evtl. ist dort noch eine Versionsnummer des Softwarestandes hinterlegt.[br]

Solltet Ihr jedoch eine gänzlich andere Nummer haben, so deutet dieses auf eine dem User zugehörige Nummer.

Bereich F:[br]

Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier ein Änderungsdatum der Cloud Daten hinterlegt ist, um zu entscheiden, ob ein erneuter Download der Kreativtonie Daten von Nöten ist.

Bereich I:[br]

Für jeden weitern Track der einem Kreativtonie hinzugefügt wird, werden in diesem Bereich zwei weitere Bytes hinzugefügt. Gehe davon aus, dass es sich hierbei entweder um direkte Sprungmarken, oder aber um die "Granule Position” und dem “PreSkip”-Wert handelt. (https://tools.ietf.org/html/rfc7845 Kapitel 4.3 —> Mit Dank an Hoffy1968)

Dateiname:[br]

Der Dateiname besteht aus der Tonie-Cloud-ID, und ist somit eine dem User eindeutig zugewiesene Nummer.

Verzeichnisname:[br]

Der Verzeichnisname setzt sich entweder aus einem Teil der UID zusammen, oder ist eine eindeutig der Geschichte zugewiesene ID. Dieses kann ich aktuell nicht beantworten, da ich keinen doppelten Tonie zu Hand habe. Jedoch habe ich einen Löwen aus dem Startetest mit dem Verzeichnisnamen “BD200Bxx”. Falls jemand bitte bestätigen könnte, ob der Löwe bei Euch auch diesen Verzeichnisnamen hat, würde dieses helfen.

Da ich es aktuell noch nicht geschafft habe, den Chip Korrekt auszulesen (wahrscheinlich bilde ich das XOR-Passwort falsch und bekomme deshalb mit meinem Proxmark3 keine Daten.), würde ich dennoch gerne die Informationen des Chips, also die UID und den Speicherauszug zum dazugehörigen Header abgleichen. Evtl. gibt es hier ja auch noch Verbindungen die hilfreich sind.[br]

Die RandomNumber Bytes bekomme ich erfolgreich abgefragt. Evtl. kann mir jemand helfen, wie ich den 2. Schritt mit dem Proxmark3 erledige. Hat evtl. jemand ein LUA Script hierfür?[br]

Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.

Kommunikation Toniebox mit Tonie-Cloud:[br]

Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]

Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]

Mal sehen was die Cloud uns noch so verrät.

Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.[br]

Kennt jemand evtl. ein Forum, in das wir dieses Thema verlagern könnten?

Gruß,[br]

Gambrius

Статус:

deletedopen
deletedopen

Отредактировано: Gambrius ,

Текст:

Hallo,

ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:

Folgenden Strukturaufbau konnte ich erkennen:

A - 06 Byte - Konstanter Wert (Entweder Identifikation als Tonie-Datei, oder eindeutige User-Zuordnung)

B - 20 Byte - SHA1 der AudioDatei (Prüfsumme der Audidatei nach Header Daten)

C - 01 Byte - Konstanter Wert "10"

D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei

E - 01 Byte - Konstanter Wert "18"

F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)

G - 02 Byte - Konstanter Wert "0522"

H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block

I - XX Byte - pro Track (oder Sprungmarke) 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)

J - 01 Byte - Konstanter Wert "2D"

K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Sprungmarken)]

L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten (danach mit 00 aufgefüllt)

 

Maximale Größe des Headers = 255 Byte

Die Restlichen Bytes bis 4096 sind immer mit "00" Aufgefüllt.

Bereich A:[br]

Bei mir ist der Konstante Wert “00 00 0F FC XX 14” enthalten. Könnt Ihr dieses bestätigen, dass dieses bei Euch auch so ist? Dann wäre es einfach nur ein Identifikationswert, der den Header als einen Tonie Header bestätigt. Evtl. ist dort noch eine Versionsnummer des Softwarestandes hinterlegt.[br]

Solltet Ihr jedoch eine gänzlich andere Nummer haben, so deutet dieses auf eine dem User zugehörige Nummer.

Bereich F:[br]

Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier ein Änderungsdatum der Cloud Daten hinterlegt ist, um zu entscheiden, ob ein erneuter Download der Kreativtonie Daten von Nöten ist.

Bereich I:[br]

Für jeden weitern Track der einem Kreativtonie hinzugefügt wird, werden in diesem Bereich zwei weitere Bytes hinzugefügt. Gehe davon aus, dass es sich hierbei entweder um direkte Sprungmarken, oder aber um die "Granule Position” und dem “PreSkip”-Wert handelt. (https://tools.ietf.org/html/rfc7845 Kapitel 4.3 —> Mit Dank an Hoffy1968)

Dateiname:[br]

Der Dateiname besteht aus der Tonie-Cloud-ID, und ist somit eine dem User eindeutig zugewiesene Nummer.

Verzeichnisname:[br]

Der Verzeichnisname setzt sich entweder aus einem Teil der UID zusammen, oder ist eine eindeutig der Geschichte zugewiesene ID. Dieses kann ich aktuell nicht beantworten, da ich keinen doppelten Tonie zu Hand habe. Jedoch habe ich einen Löwen aus dem Startetest mit dem Verzeichnisnamen “BD200Bxx”. Falls jemand bitte bestätigen könnte, ob der Löwe bei Euch auch diesen Verzeichnisnamen hat, würde dieses helfen.

Da ich es aktuell noch nicht geschafft habe, den Chip Korrekt auszulesen (wahrscheinlich bilde ich das XOR-Passwort falsch und bekomme deshalb mit meinem Proxmark3 keine Daten.), würde ich dennoch gerne die Informationen des Chips, also die UID und den Speicherauszug zum dazugehörigen Header abgleichen. Evtl. gibt es hier ja auch noch Verbindungen die hilfreich sind.[br]

Die RandomNumber Bytes bekomme ich erfolgreich abgefragt. Evtl. kann mir jemand helfen, wie ich den 2. Schritt mit dem Proxmark3 erledige. Hat evtl. jemand ein LUA Script hierfür?[br]

Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.

Kommunikation Toniebox mit Tonie-Cloud:[br]

Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]

Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]

Mal sehen was die Cloud uns noch so verrät.

Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.[br]

Kennt jemand evtl. ein Forum, in das wir dieses Thema verlagern könnten?

Gruß,[br]

Gambrius

Статус:

opendeleted
opendeleted

Оригинальный сообщение: Gambrius ,

Текст:

Hallo,

ich habe versucht mit den Eckdaten von Hoffy1968 weitere Erkenntnisse zum Aufbau der Headerdaten zu erhalten:

Folgenden Strukturaufbau konnte ich erkennen:

A - 06 Byte - Konstanter Wert (Entweder Identifikation als Tonie-Datei, oder eindeutige User-Zuordnung)

B - 20 Byte - SHA1 der AudioDatei (Prüfsumme der Audidatei nach Header Daten)

C - 01 Byte - Konstanter Wert "10"

D - 04 Byte - ??? - Vermutlich Gesamtlaufzeit der Audiodatei

E - 01 Byte - Konstanter Wert "18"

F - 04 Byte - ??? - Vermutlich letztes Änderungsdatum in der Cloud (z.B. Kreativtonie)

G - 02 Byte - Konstanter Wert "0522"

H - 01 Byte - Anzahl der Bytes im Folgenden Byte-Block

I - XX Byte - pro Track (oder Sprungmarke) 2x Byte. (1. Track / Sprungmarke immer "00", danach immer 2x Byte)

J - 01 Byte - Konstanter Wert "2D"

K - 01 Byte - Wert ergibt sich aus [214 - "Feld H" (Anzahl der Sprungmarken)]

L - 01 Byte - Konstanter Wert "1F" - Abschluss der Header Daten (danach mit 00 aufgefüllt)

 

Maximale Größe des Headers = 255 Byte

Die Restlichen Bytes bis 4096 sind immer mit "00" Aufgefüllt.

Bereich A:[br]

Bei mir ist der Konstante Wert “00 00 0F FC XX 14” enthalten. Könnt Ihr dieses bestätigen, dass dieses bei Euch auch so ist? Dann wäre es einfach nur ein Identifikationswert, der den Header als einen Tonie Header bestätigt. Evtl. ist dort noch eine Versionsnummer des Softwarestandes hinterlegt.[br]

Solltet Ihr jedoch eine gänzlich andere Nummer haben, so deutet dieses auf eine dem User zugehörige Nummer.

Bereich F:[br]

Bei jeder Änderung steigt dieser Wert an. Gehe davon aus, dass hier ein Änderungsdatum der Cloud Daten hinterlegt ist, um zu entscheiden, ob ein erneuter Download der Kreativtonie Daten von Nöten ist.

Bereich I:[br]

Für jeden weitern Track der einem Kreativtonie hinzugefügt wird, werden in diesem Bereich zwei weitere Bytes hinzugefügt. Gehe davon aus, dass es sich hierbei entweder um direkte Sprungmarken, oder aber um die "Granule Position” und dem “PreSkip”-Wert handelt. (https://tools.ietf.org/html/rfc7845 Kapitel 4.3 —> Mit Dank an Hoffy1968)

Dateiname:[br]

Der Dateiname besteht aus der Tonie-Cloud-ID, und ist somit eine dem User eindeutig zugewiesene Nummer.

Verzeichnisname:[br]

Der Verzeichnisname setzt sich entweder aus einem Teil der UID zusammen, oder ist eine eindeutig der Geschichte zugewiesene ID. Dieses kann ich aktuell nicht beantworten, da ich keinen doppelten Tonie zu Hand habe. Jedoch habe ich einen Löwen aus dem Startetest mit dem Verzeichnisnamen “BD200Bxx”. Falls jemand bitte bestätigen könnte, ob der Löwe bei Euch auch diesen Verzeichnisnamen hat, würde dieses helfen.

Da ich es aktuell noch nicht geschafft habe, den Chip Korrekt auszulesen (wahrscheinlich bilde ich das XOR-Passwort falsch und bekomme deshalb mit meinem Proxmark3 keine Daten.), würde ich dennoch gerne die Informationen des Chips, also die UID und den Speicherauszug zum dazugehörigen Header abgleichen. Evtl. gibt es hier ja auch noch Verbindungen die hilfreich sind.[br]

Die RandomNumber Bytes bekomme ich erfolgreich abgefragt. Evtl. kann mir jemand helfen, wie ich den 2. Schritt mit dem Proxmark3 erledige. Hat evtl. jemand ein LUA Script hierfür?[br]

Interessant wird das Ergebnis von Dirk (tueddy) sein, der es bereits geschafft hat mit einem PE5180 und einem Arduino die Tonie auszulesen. Freue mich schon auf die Veröffentlichung des Skriptes.

Kommunikation Toniebox mit Tonie-Cloud:[br]

Aktuell gibt es keine Erkenntnisse darüber, wie die Kommunikation abläuft. Hier kann sich gerne noch einer dran austoben.[br]

Jedoch konnte ich in einem http-Request der Tonie-Cloud feststellen, dass eine Kombination vom oben genannten Verzeichnisnamen und Dateinamen als Identifikationsnummer für den Kreativtonie verwendet wird.[br]

Mal sehen was die Cloud uns noch so verrät.

Würde mich freuen weiter mit Euch an diesen Themen zu arbeiten.[br]

Kennt jemand evtl. ein Forum, in das wir dieses Thema verlagern könnten?

Gruß,[br]

Gambrius

Статус:

open