motofan logo
       
> 

Реверсионная Лаборатория, Описание форматов и способов хранения данных в телефоне

Ailinor
сообщение 1.10.2007, 20:07


Интересующийся
**

Группа: Разработчики
Сообщений: 86
Регистрация: 27.8.2007
Из: Днепропетровск, Украина
Пользователь №: 145 831
Модель телефона: V3r
Прошивка: R4515_G_0.BD.74R

Рейтинг: 69



Собираем здесь информацию о структурах системных файлов моторолы и о способах чтения инфы из них. Описание парсеров, декодеров и способов решения возникающих проблем.

Начнём с описания структуры файла DL_DMH_File, отвечающего за хранение телефонной книги и календаря.

Я выделил два поколения DL_DMH_File файлов. Первое – файлы без каких-либо заголовков, второе – со следующим заголовком в начале: "DMH_FILE_HEADER_00.00.02".

В начале идёт служебная информация о содержании и/или структуре самого файла, далее идут записи телефонной книжки и в конце - записи календаря. Начальные смещения для календаря и телефонной книжки различны для разных моделей телефона и небыли обнаружены в служебной информации из начала файла. По этой причине предлагается блочное сканирование всего файла, начиная с некоторого смещения.

Размер одной записи телефонной книжки кратен 0x20 байтам, например: 0x20, 0x40, 0x80 и 0x240 байт (эти размеры блоков были встречены в изучаемых файлах). Начинать чтение блоков необходимо с некоторого начального смещения, которое различно для разных моделей. Для решения этой проблемы предлагается следующий алгоритм получения начального смещения:

dwStartPos = dwFileSize % 0x100 - (для файлов первого поколения)
или
dwStartPos = dwFileSize % 0x100 + длинна заголовка (=0x18) - (для файлов второго поколения).

Таким образом, предлагается чтение, начиная с вычисленного смещения, блоков размером большим, чем 0x240 байт и кратным 0x20 байтам. Но при этом блоки читать со смещением в 0x20 байт. Таким образом, не будут пропущены маленькие записи, но в случае, когда записи длиннее 0x20 байт, буфер будет периодически содержать куски данных из разных записей. Эта ситуация должна контролироваться на уровне парсеров, т.е. парсеры не должны пропускать некорректные данные, которых будет намного больше чем корректных записей по причине сканирования всего файла.

Для файлов первого поколения были расшифрованы записи шесть типов, по этой причине один буфер прогоняется через шесть декодировщика и ответ каждого из них необходимо рассматривать как верный, т.е. для одного блока может быть до трёх расшифровок.

Первый тип записи:
Код

03 FE 81 0D 08 90 BB B5 BA C1 B5 B9 20 97 B0 B8
BA B0 07 81 08 79 79 83 91 F3 FF FF FF FF FF FF
FF FF FF FF FF 00 00 01 FF 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 FF FE EF FF FE


Первый байт записи должен быть меньше 0xEE, третий байт должен быть равен 0x81, пятый - 0x08. Имя начинается с шестого байта, четвёртый байт – длина имени в байтах. Имя храниться в моторола-кодировке, которая представляет собой «обрезанную» версию UTF8 – храниться лишь последний байт символа, стальные байты отбрасываются и для их восстановления необходима информация о ленг-паке телефона. Далее следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается.

Второй тип записи:

Код

81 05 08 90 BB 20 98 B2 07 91 97 01 09 62 64 F5
FF FF 04 FE FF FF FF FF FF FF FF FF FF 00 00 28
FF FF FF 00 00 04 FF FF FE EF FF FE EF FF FE EF
FF FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF


Структура второго типа полностью совпадает со структурой первого типа, без первых двух байт.


Третий тип записи:

Код

03 FE 80 22 04 15 04 21 04 22 04 FF FF 07 81 08
79 79 83 91 F3 FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF 00 00 01 FF 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 FF FE EF FF FE


Первый байт записи должен быть меньше 0xEE, третий байт должен быть равен 0x80. Имя начинается с четвёртого байта, длина имени не храниться – если имя короче 0x30 байт, то оно заканчивается словом 0xFFFF, иначе оно занимает ровно 0x30 байт (возможно в разных телефонах эта длина окажется различной) и завершающего слова нет. Имя храниться в LITLEENDIAN UNICODE. Далее (аналогично) следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается.


Четвёртый тип записи:

Код

00 FE 54 65 73 74 2E FF 05 81 21 45 55 45 FF FF
FF 00 02 00 00 4E 46 45 E2 DF 01 00 0D FF 04 10
04 34 04 38 04 3C 04 40 00 00 00 55 00 6C 00 69
00 63 00 61 00 00 00 55 00 6C 00 69 00 63 00 61
00 32 00 00 00 43 00 69 00 74 00 69 00 00 00 50
00 49 00 6E 00 64 00 65 00 78 00 00 00 4F 00 62
00 6C 00 61 00 73 00 74 00 00 00 43 00 6F 00 75
00 6E 00 74 00 72 00 69 00 00 15 05 07 D6 14 EF
46 DF EB C0 46 E0 90 6F 00 00 00 00 00 03 C0 80
00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
04 22 04 35 04 41 04 42 00 31 00 00 00 FF FE EF
FF FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF
46 E0 15 F0 46 E0 90 89 00 00 00 00 00 03 C0 80
00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
04 22 04 35 04 41 04 42 00 32 00 00 00 FE EF FF
FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF FE


Имя начинается с третьего байта, длина имени не храниться – оно заканчивается байтом 0xFF. Имя храниться в ANSI. Далее (аналогично) следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается.


Пятый тип записи:

Код

54 65 73 74 2E FF 05 81 21 45 55 45 FF FF FF FF
FF 00 02 00 00 4E 46 45 E2 DF 01 00 0D FF 04 10
04 34 04 38 04 3C 04 40 00 00 00 55 00 6C 00 69
00 63 00 61 00 00 00 55 00 6C 00 69 00 63 00 61
00 32 00 00 00 43 00 69 00 74 00 69 00 00 00 50
00 49 00 6E 00 64 00 65 00 78 00 00 00 4F 00 62
00 6C 00 61 00 73 00 74 00 00 00 43 00 6F 00 75
00 6E 00 74 00 72 00 69 00 00 15 05 07 D6 14 EF
46 DF EB C0 46 E0 90 6F 00 00 00 00 00 03 C0 80
00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
04 22 04 35 04 41 04 42 00 31 00 00 00 FF FE EF
FF FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF
46 E0 15 F0 46 E0 90 89 00 00 00 00 00 03 C0 80
00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00
04 22 04 35 04 41 04 42 00 32 00 00 00 FE EF FF
FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF FE

Структура пятого типа полностью совпадает со структурой четвёртого типа, без первых двух байт.


Шестой тип записи:

Код

80 1C 04 30 04 40 04 38 04 3D 04 30 04 FF FF 07
81 08 66 63 19 93 F3 FF FF 03 FE 3F 58 CC F3 46
CC 00 00 00 00 00 01 FF EF FF FE EF FF FE EF FF
FE EF FF FE EF FF FE EF FF FE EF FF FE EF FF FE
80 1C 04 30 04 40 04 38 04 3D 04 30 04 FF FF 6D
61 72 75 73 79 61 40 61 70 72 69 6F 72 69 74 2E
63 6F 6D 00 06 FE 51 FF FF FF FF FF FF FF FF 00
00 01 FF EF FF FE EF FF FE EF FF FE EF FF FE EF


Первый байт должен быть равен 0x80. Имя начинается со второго байта, длина имени не храниться – если имя короче 0x30 байт, то оно заканчивается словом 0xFFFF, иначе оно занимает ровно 0x30 байт (возможно в разных телефонах эта длина окажется различной) и завершающего слова нет. Имя храниться в BIGENDIAN UNICODE. Далее (аналогично) следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается. Этот тип похож на третий и отличается от него отсутствием первых двух байт и типом хранения текста.


Файлы второго поколения более универсальны и имеют следующую структуру:
Код

01 81 09 04 1C 30 40 38 3D 3E 47 3A 30 81 00 00
81 00 00 07 81 08 92 85 86 79 F2 FF FF FF FF FF
FF 00 00 00 00 00 00 00 81 00 00 00 00 00 00 00
16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 81 00 00 81 00 00 03 FF FF FF FF FF FF FF FF
FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 81 00 00 81 00 00 81 00
00 81 00 00 81 00 00 81 00 00 81 00 00 81 00 00
81 00 00 81 00 00 81 00 00 81 00 00 81 00 00 81
00 00 81 00 00 81 00 00 00 00 00 00 00 81 00 00
00 00 00 00 00 00 00 00 00 01 03 00 0D 00 00 00
B3 FF FF FF FF FF FF FF FF FE FE FE FE FE FE FE


Первый байт записи должен быть равен 0x01, второй байт должен быть равен 0x81. Имя начинается с пятого байта, длина имени храниться в третьем байте (в байтах). Имя храниться в «упакованном» UNICODE – первый байт, если он одинаков для всего имени, вырезан и храниться в байте перед байтом длинны (четвёртом) имени. Далее снова идёт 0x81, длинна, вырезанный общий байт, имя в такой же кодировке. Далее снова идёт 0x81, длинна, вырезанный общий байт, имя в такой же кодировке. Далее (аналогично) следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается.

Сообщение отредактировал Ailinor - 20.10.2007, 21:00
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ailinor
сообщение 10.10.2007, 22:12


Интересующийся
**

Группа: Разработчики
Сообщений: 86
Регистрация: 27.8.2007
Из: Днепропетровск, Украина
Пользователь №: 145 831
Модель телефона: V3r
Прошивка: R4515_G_0.BD.74R

Рейтинг: 69



Нашёл полное описание способа хранения номера (спсб Booroondook):

... Далее следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается. 81 - если в номере телефона не используется знак "+". 91 - если используется. Если общее число знаков номера телефона нечетное, то левый знак последнего байта - F. Кроме цифр, как известно, в номере телефона могут использоваться и другие знаки - это *, #, +, знак ожидания (w), знак паузы (p) и знак "n".
Для этих знаков используются буквы:
* = a # = b p = c w = d n = e + = f

Список входящих и исходящих звонков хранятся в 0x0038 и 0x0039 seem’ах соответственно.


Структура seem № 0x0038 и 0x0039

seem № 0x0038
Код

52 75 73 6C 61 6E 20 47 6F 72 64 69 79 63 68 75
6B FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF 07 91 83 50 36 77 77 43 FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF 00 02 46 FD 3A F5 00 00 00 74 00 00 00
0A FF FF FF FF FF FF                            


seem № 0x0038 и 0x0039
Код

81 06 08 90 BB B5 BD BA B0 FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF 07 81 08 79 22 78 65 F2 FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF 00 01 39 77 35 4F 00
00 00 00 02 00 00 01                            


С начала дампа идёт имя, которое может храниться в трёх типах кодировки – ANSI, UNICODE, Motorola CS (подробнее о кодировке см. выше). Далее следует байт длинны номера телефона (в байтах), и за ним следует сам номер в BCD с перевернутыми байтами. Если первый байт номера равен 0x91, то в начале номера идёт символ «+», иначе (обычно 0x81) он просто пропускается. 81 - если в номере телефона не используется знак "+". 91 - если используется. Если общее число знаков номера телефона нечетное, то левый знак последнего байта - F. Кроме цифр, как известно, в номере телефона могут использоваться и другие знаки - это *, #, +, знак ожидания (w), знак паузы (p) и знак "n".
Для этих знаков используются буквы:
* = a # = b p = c w = d n = e + = f

Далее идут два байта, отвечающие за статус звонка. Для разных моделей телефонов они различны. После байтов статуса следует время звонка 4 байта (структура time_t) и продолжительность звонка 4 байта (структура time_t). Далее – некоторая системная информация.

Сообщение отредактировал Ailinor - 20.10.2007, 20:58
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ailinor
сообщение 17.10.2007, 21:32


Интересующийся
**

Группа: Разработчики
Сообщений: 86
Регистрация: 27.8.2007
Из: Днепропетровск, Украина
Пользователь №: 145 831
Модель телефона: V3r
Прошивка: R4515_G_0.BD.74R

Рейтинг: 69



Немного инфы по симам, найденой здесь же, но после 4 часового поиска (для себя и ещё кому пригодится). Огромный респект всей команде p2kseem.

seem
0074_0001 - отвечает за код блокирования телефона (установленый пользователем)
0069_0001 и 006а_0001- код блокирования телефона (1234 по умолчанию)
0076_0001 - защитный код (000000 по умолчанию)
017f_0001 и 02d3_0001 - номер флекса
02d2_0001 - номер прошивки
0064_0001 - номер SMS центра записаного на SIM карте
011f_0001 и 0120_0001 - номер экстреного вызова забитого в телефоне (у меня 911)
0117_0001 - модель телефона

симы 007d_0001 - 007d_0080 содержат в себе смски (входящие, исходящие, черновики), быстрые заметки и последние вызовы...

полный список кодов Лэнг-паков(выдрано из MSS 3.8 не мной)
0001 US English
0002 UK English
0003 US English, Canadian French, American Spanish, Brazilian Portuguese
0004 UK English, Standard French, Standard German, Standard Italian
0005 UK English, French, German, Dutch
000A UK English, Spanish, Portuguese, Greek
000B UK English, Norwegian, Danish, Swedish
000C UK English, Estonian, Swedish, Finnish
000D UK English, Lithuanian, Latvian, Russian
000E UK English, Polish, Czech, Slovak
000F UK English, Turkish, Bulgarian, Hungarian
0010 UK English, Serbian, Slovenian, Croatian
0011 UK English, Russian, Romanian, German
0012 UK English, Hebrew, Arabic, Russian
0014 UK English, Chinese Complex
0015 US English, Chinese Simple
0016 US English, Chinese Complex
0017 UK English, French
0018 UK English, Spanish
0019 UK English, Portuguese
001A UK English, Spanish, Portuguese
001B American English, Canadian French, American Spanish
0020 UK English, Turkish, French
0021 UK English, Malasian, Tieng Viet, Thai, Vietnamese, Bahasa
0024 UK English, Simplified Chinese
002C UK English, Danish, Swedish, Norwegian, Finnish, German, Russian
002D UK English, Estonian, Latvian, Lithuanian, Finnish, Polish, Russian
002E UK English, German, Russian, Ukrainian, French, Spanish, Portuguese
002F UK English, Hungarian, Polish, Czech, Slovak, Slovenian, Croatian
0030 UK English, Bulgarian, Croatian, Romanian, Serbian, Slovenian, German
0031 UK English, Greek, Romanian, Bulgarian, Italian, German, Russian
0032 UK English, French, Arabic, German, Russian, Spanish, Turkish
0033 UK English, French, Hebrew, Arabic, Russian, Spanish, Turkish
0034 UK English, French, Urdu, Farsi, Arabic, Russian, Spanish
0035 UK English, Swedish, Romanian, Polish, Hungarian, Greek
0036 UK English, Danish, Polish, Russian, Slovak
0037 UK English, German, Dutch, Polish, Hungarian, Czech, Croatian
0038 UK English, French, German, Italian, Spanish, Turkish, Greek
0039 UK English, French, German, Italian, Spanish, Dutch, Turkish, Portuguese
004B UK English, Hindi
004D UK English, Complex Chinese, Simplified Chinese


Сим 0038, записи с 0001 до 000a (10 последних входящих звонков) (не подошло для V3x)
Оффсет 53
Значение байта:
00 - норма
01 - вместо имени и номера звонившего показывается надпись "Частный"
02 - вместо имени и номера звонившего показывается надпись "Ожидание вызова"
Сим 0039, записи с 0001 до 000a (10 последних набранных звонков)
Оффсет 53
Значение байта:
02 - норма
01 - после информации о вызове показывается надпись "Показать код"
00 - после информации о вызове показывается надпись "Скрыть код"

Можно запустить телефон без сим карты:
сим 004a_0001 бит 616
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ailinor
сообщение 20.10.2007, 20:51


Интересующийся
**

Группа: Разработчики
Сообщений: 86
Регистрация: 27.8.2007
Из: Днепропетровск, Украина
Пользователь №: 145 831
Модель телефона: V3r
Прошивка: R4515_G_0.BD.74R

Рейтинг: 69



ph34r.gif Начнём изучение способа хранения ММС в моторолах (пока для V3r, но, имхо, различий не будет). Данные хранятся в папках mms на дисках а и с (может различатся в зависимости от модели).

В файле mmsstore.txt хранятся ссылки на файлы ммс в формате UCS2 и начиная с некоторого смещения, которое может различатся в зависимости от модели.

Код

E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 2F 00 63 00 2F 00 6D 00 6F 00 62 00 69
00 6C 00 65 00 2F 00 6D 00 6D 00 73 00 2F 00 31
00 31 00 39 00 32 00 36 00 36 00 35 00 35 00 39
00 38 00 5F 00 31 00 2E 00 64 00 72 00 66 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
и тд

.................
.................
./.c./.m.o.b.i.l.e./.m.m.s./.1.1.9.2.6.6.5.5.9.8._.1...d.r.f.
.................
и тд


интересно, что есть имена ммс, которых нет на телефоне. Есть подозрение, что это имена удалённых с мобилы ммс smile.gif

По указанному в файле пути и лежит сама ммска. Расширение файла указывает на её тип:
*.drf - сохранённые в черновик
*.inb - полученные
*.outb - отправленные (насчёт этого не уверен, надо проверить, может *.oub)
Имя файла тоже собирается определённым образом - это дата создания ммс в time_t формате.

Сама структура файла ммски представляет собой заголовок + xml, которая составлена в соответствии со стандартом (позднее найду ссылку) и все приклеплённые данные сохраняются внутри (в отличии от нокии, которая разбивает ммс на отдельные файлы: струтура+текст и прикл. данные). В начале файла есть ссылка на файл шаблона (опять имхо) - mms.smil.txt

Файл mms.smil.txt:
Код

<smil>
   <head>
      <layout>
         <root-layout width="176px" height="161px"/>
         <region id="Text" left="0%" top="0%" height="33%" width="100%" />
         <region id="Image" left="0%" top="33%" height="67%" width="100%" />
      </layout>
   </head>
   <body>
      <par dur="5s">
         <text src="media1.txt" type="text/plain" region="Text" alt="media1.txt" />
         <img src="media2.jpeg" type="image/jpeg" region="Image" alt="media2.jpeg" />
      </par>
   </body>
</smil>


Файлов media1.txt и media2.jpeg в ФС не нашёл.
Пока всё, иду разбираться со стандартным способом хранения ммс.

Сообщение отредактировал Ailinor - 20.10.2007, 20:56
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
erithion
сообщение 12.6.2009, 13:44


Новичок
*

Группа: Начинающие
Сообщений: 2
Регистрация: 12.6.2009
Пользователь №: 201 175
Модель телефона: i560
Прошивка: R4C.01.02

Рейтинг: 3



Всех категорически приветствую!

Очень нужно научиться парсить такой формат MMS

Код

00000000 00 00 01 07 00 00 00 60 00 00 00 8A 00 00 00 19 .......`........
00000016 8C 84 98 4D 51 41 41 41 53 47 73 48 44 6B 44 5F ...MQAAASGsHDkD_
00000032 41 45 6F 6F 4C 4C 30 41 41 47 63 4A 41 58 37 41 AEooLL0AAGcJAX7A
00000048 71 46 6A 57 00 8D 91 97 2B 31 38 30 31 34 32 30 qFjW....+1801420
00000064 32 32 36 32 2F 54 59 50 45 3D 50 4C 4D 4E 00 85 2262/TYPE=PLMN..
00000080 04 4A 28 2C BC 89 17 80 31 38 30 31 37 30 39 39 .J(,....18017099
00000096 30 32 38 2F 54 59 50 45 3D 50 4C 4D 4E 00 8B 41 028/TYPE=PLMN..A
00000112 45 6F 6F 4C 4C 30 41 41 47 63 4A 41 58 37 41 71 EooLL0AAGcJAX7Aq
00000128 46 6A 57 00 8F 80 86 81 84 83 46 69 6E 61 6C 6C FjW.......Finall
00000144 79 20 67 6F 74 20 69 74 20 72 75 6E 6E 69 6E 67 y got it running
00000160 2E 0D 0A 00 00 00 00 00 00 00 00 00 00 01 07 00 ................
00000176 00 00 22 00 00 01 29 00 00 00 20 00 00 00 00 00 .."...)... .....
00000192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000240 00 00 00 00 00 01 49 00 00 00 1C 00 00 00 00 4A ......I........J
00000256 28 2C BC 00 00 00 00 00 0A 00 46 00 72 00 6F 00 (,........F.r.o.
00000272 6D 00 3A 00 31 00 38 00 30 00 31 00 37 00 30 00 m.:.1.8.0.1.7.0.
00000288 39 00 39 00 30 00 32 00 38 00 0A 00 54 00 6F 00 9.9.0.2.8...T.o.
00000304 3A 00 2B 00 31 00 38 00 30 00 31 00 34 00 32 00 :.+.1.8.0.1.4.2.
00000320 30 00 32 00 32 00 36 00 32 00 0A 00 4D 00 69 00 0.2.2.6.2...M.i.
00000336 6D 00 65 00 5F 00 74 00 79 00 70 00 65 00 3A 00 m.e._.t.y.p.e.:.
00000352 00 00 03 00 00 00 00                            .......        

Если кто то его узнаёт, просьба откликнуться.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ailinor
сообщение 18.6.2009, 22:18


Интересующийся
**

Группа: Разработчики
Сообщений: 86
Регистрация: 27.8.2007
Из: Днепропетровск, Украина
Пользователь №: 145 831
Модель телефона: V3r
Прошивка: R4515_G_0.BD.74R

Рейтинг: 69



Формат описания MMS от 3gpp ph34r.gif (может формат хранения - чистый, уже сформированный бинарь для отправке в сеть)
http://www.3gpp.org/ftp/Specs/archive/23_series/
Или
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
erithion
сообщение 27.6.2009, 1:47


Новичок
*

Группа: Начинающие
Сообщений: 2
Регистрация: 12.6.2009
Пользователь №: 201 175
Модель телефона: i560
Прошивка: R4C.01.02

Рейтинг: 3



Спасибо всем откликнувшимся и здесь, и в аське.
Благодаря чему теперь могу сказать, что этот кусок закодирован одной из реализаций MM1 протокола

Код
00000016 8C 84 98 4D 51 41 41 41 53 47 73 48 44 6B 44 5F ...MQAAASGsHDkD_
00000032 41 45 6F 6F 4C 4C 30 41 41 47 63 4A 41 58 37 41 AEooLL0AAGcJAX7A
00000048 71 46 6A 57 00 8D 91 97 2B 31 38 30 31 34 32 30 qFjW....+1801420
00000064 32 32 36 32 2F 54 59 50 45 3D 50 4C 4D 4E 00 85 2262/TYPE=PLMN..
00000080 04 4A 28 2C BC 89 17 80 31 38 30 31 37 30 39 39 .J(,....18017099
00000096 30 32 38 2F 54 59 50 45 3D 50 4C 4D 4E 00 8B 41 028/TYPE=PLMN..A
00000112 45 6F 6F 4C 4C 30 41 41 47 63 4A 41 58 37 41 71 EooLL0AAGcJAX7Aq
00000128 46 6A 57 00 8F 80 86 81 84 83 46 69 6E 61 6C 6C FjW.......Finall
00000144 79 20 67 6F 74 20 69 74 20 72 75 6E 6E 69 6E 67 y got it running
00000160 2E 0D 0A


MM1 это один из одинадцати интерфейсов для общения по WAP, а именно между MMS User Agent и MMS Center.

В архиве пример парсинга и спеки.
И может кому то ещё будет интересен источник
Прикрепленный файл _results.zip   ( 1.14 мегабайт ) Кол-во скачиваний: 319
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Реверсионная Лаборатория, Описание форматов и способов хранения данных в телефоне · Random's Developments · Forum
 

Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29.3.2024, 8:00

Форум живёт: