Расшифровать простейший проводной формат

Я пытаюсь понять сообщение, закодированное в protobuf. сообщение приведено ниже, это, по-видимому, 64-байтовое длинное хеш-значение, но я не могу понять процесс кодирования

0000  12 01 40 30 37 62 65 37 36 30 34 32 33 35 32 37
0010  33 30 64 64 63 37 38 35 39 39 38 39 34 66 31 31
0020  37 65 30 37 34 35 36 61 37 64 30 37 66 62 36 31
0030  64 39 38 32 31 62 32 36 61 38 33 34 61 34 30 66
0040  64 62 38

16-разрядное шестнадцатеричное значение слева — это просто смещение, оно не является частью данных.

Первый байт говорит, что следующий тип является байтовым или строковым типом провода, а второй байт говорит только один байт в байтовом или строковом массиве. Тогда третий байт 0x40 должен быть длиной поля, т.е. 64. Я не могу понять, как это было декодировано. У меня нет прото-файла, используемого для кодирования сообщения.

2

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]