Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Base64

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 Как расшифровать такой код:
 cenc:pssh>AAAAdXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFUSENrMNDshdFlFm42B1KrTYKwSENQWRmh5ylNzlC6PkPpITzYSEGtuiiqKMln5rzUpabALEFEaBWl2aXJ1IhCFJ1fxbapLVb0CkAAVtsZ9SOPclZsG.
  Пробовал разные расшифровщики base64. Получаются квадратики.

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 17:49 06-08-2017
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LZAA
А почему вы решили, что там должен быть осмысленный текст, а не двоичный код или, скажем, текст на другом языке?

Всего записей: 15100 | Зарегистр. 20-09-2014 | Отправлено: 18:43 06-08-2017
LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 По аналогии. Есть такая штука manifest.mpd называется. Теперь цитата: ,,Вот декодированное из BASE64 содержимое элементов cenc:pssh  приведенном выше манифесте
 
<WRMHEADER xmlns="http://schemas.microsoft.com/DRM/2007/03/PlayReadyHeader" version="4.0.0.0"><DATA><PROTECTINFO><KEYLEN>16</KEYLEN><ALGID>AESCTR</ALGID></PROTECTINFO><KID>RMr/gdZQ1kGgTCDlyVBTvQ==</KID><CHECKSUM>7dhqdXL3l5g=</CHECKSUM><LA_URL>https://prls.atv-ps.amazon.com/cdp</LA_URL></DATA></WRMHEADER>
 
 amazon"key-id:gf/KRFDWQdagTCDlyVBTvQ==*SD2)avcp=db34e290-6cb7-47c6-979b-75abca92739b"
  Мой пример кода тоже взят из такого манифеста, только другого. Вопрос заключается в том, каким инструментом для расшифровки пользуется автор цитаты. Могу дать ссылку, пр необходимости, на его манифест.

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 19:00 06-08-2017
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LZAA
https://w3c.github.io/encrypted-media/format-registry/initdata/cenc.html#common-system
PSSH не является текстовым стандартом, раскодированный кусок представляет собой бинарный код, структура которого представлена по ссылке выше (он же, пример, ниже):

Цитата:
var pssh = [
    0x00, 0x00, 0x00, 0x44, 0x70, 0x73, 0x73, 0x68, // BMFF box header (68 bytes, 'pssh')
    0x01, 0x00, 0x00, 0x00,                         // Full box header (version = 1, flags = 0)
    0x10, 0x77, 0xef, 0xec, 0xc0, 0xb2, 0x4d, 0x02, // SystemID
    0xac, 0xe3, 0x3c, 0x1e, 0x52, 0xe2, 0xfb, 0x4b,
    0x00, 0x00, 0x00, 0x02,                         // KID_count (2)
    0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, // First KID ("0123456789012345")
    0x38, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
    0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, // Second KID ("ABCDEFGHIJKLMNOP")
    0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
    0x00, 0x00, 0x00, 0x00,                         // Size of Data (0)
];

 
Ваш кусок
   
вот и сопоставляйте

Всего записей: 15100 | Зарегистр. 20-09-2014 | Отправлено: 20:21 06-08-2017 | Исправлено: Mavrikii, 20:27 06-08-2017
LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
   Mavrikii
 Спасибо Вам за помощь. К сожалению у меня нет знаний необходимых для понимания этой сложной материи. Поэтому сопоставить я в данном случае ничего не могу. Но мне ситуация представляется таким образом. Да, pssh не является текстовым стандартом, но ведь в приведённом мною примере информация из манифеста была каким-то образом расшифрована. То есть, этого текста в манифесте в явном виде нет. Я хочу узнать и понять, как это, всё же, было сделано. То есть меня интересует прикладная сторона дела. Для того, чтобы я мог это сделать с содержимым любого манифеста. Решаема ли эта задача?

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 21:04 06-08-2017
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LZAA

Цитата:
Я хочу узнать и понять, как это, всё же, было сделано

я же вам пояснил. base64 отдает вам бинарный кусок, из которого нужно побайтово брать информацию в соответствии с его структурой.
 

Цитата:
0x00, 0x00, 0x00, 0x44, 0x70, 0x73, 0x73, 0x68, // BMFF box header (68 bytes, 'pssh')  

8 байт - заголовок, начинается с 3 нулей и далее pssh. в вашем примере upssh, то есть, видимо, немного другая структура - нужно копать глубже, а вам сравнивать упомянутый пример
Цитата:
Вот декодированное из BASE64 содержимое элементов cenc:pssh  приведенном выше манифесте
с его декодированным cenc:pssh полем
 

Цитата:
0x01, 0x00, 0x00, 0x00,                         // Full box header (version = 1, flags = 0)

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

Всего записей: 15100 | Зарегистр. 20-09-2014 | Отправлено: 21:55 06-08-2017
LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
  Из Ваших слов я понял, что нет инструмента для ,,машинной" расшифровки кода pssh. И что это было сделано ,,вручную" с использованием познаний в програмировании. Сам я, к сожалению, делать это не умею. Спасибо за содействие.

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 22:56 06-08-2017
LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 Ещё одна цитата того же автора: ,,Собственно,в заголовке видео-файла присутствует тот же блок что я процитировал выше." Мне смысл этой фразы не совсем понятен. Я представляю себе это таким образом, что в видеофайле есть заголовок (header), который можно просмотреть. Так ли это? И как это сделать?

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 12:09 07-08-2017
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LZAA

Цитата:
который можно просмотреть. Так ли это? И как это сделать?

он, наверняка, представлен в том же виде, что я показал. то есть определенные байты соответствуют значениям определенных полей. смотреть можно любым HEX редактором, тем же бесплатный HxD, к примеру
https://mh-nexus.de/en/hxd/

Всего записей: 15100 | Зарегистр. 20-09-2014 | Отправлено: 19:31 07-08-2017
LZAA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
  Посмотрел файл видео в HEX редакторе.Спасибо.

Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 18:28 08-08-2017
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Base64


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru