Помощь с Protobuf.

  • Автор темы Автор темы artomka
  • Дата начала Дата начала

artomka

Client
Регистрация
23.08.2018
Сообщения
159
Реакции
94
Баллы
28
Добрый день, нужен человек готовый показать как серилизуются и шлются protobuf запросы. Оплата щедрая.
 
=) куда стучать ?
 
Поскольку никто не берется давайте тут опишу что требуется.

Нужно серелиозовать всеголишь 1 строку и отправить как массив байт.


пример:
Развернуть Свернуть Копировать
1 {
1:"34634207861"
}

Запрос в чарльзе выглдяит вот так:
59318

59317


Оплата 50$.

Декодирование ответа тоже требуется и оплачивается отдельно.

Вот пример ответа без декодирования:
59319



Кому интересно стучать сюда или в телегу.
 
Бамп до 100$
 
Вопрос решен. Но если есть желающие покозать свои наработки пишите в лс обсудим :)
 
Вопрос решен. Но если есть желающие покозать свои наработки пишите в лс обсудим :-)
Похожая проблема, только с большим массивом даннных.
Подскажите, как решили?
 
Похожая проблема, только с большим массивом даннных.
Подскажите, как решили?
Вручную переписываете прото конструкцию через protobuf-net.

Либо пробуете дернуть готовые прото файлы из прилы вот этим.

Затем данные через memorystream сереализуете и отсылаете байт массивом.

Поначалу кажется что редкостный гемор и сложна, но после изучения доков на гитхабе + парочки тестов все встает на свои места.
 
  • Спасибо
Реакции: ac2er2 и Meteorburn
Вручную переписываете прото конструкцию через protobuf-net.

Либо пробуете дернуть готовые прото файлы из прилы вот этим.

Затем данные через memorystream сереализуете и отсылаете байт массивом.

Поначалу кажется что редкостный гемор и сложна, но после изучения доков на гитхабе + парочки тестов все встает на свои места.
Спасибо большое!
 
Поскольку никто не берется давайте тут опишу что требуется.

Нужно серелиозовать всеголишь 1 строку и отправить как массив байт.


пример:
Развернуть Свернуть Копировать
1 {
1:"34634207861"
}

Запрос в чарльзе выглдяит вот так:
Посмотреть вложение 59318
Посмотреть вложение 59317

Оплата 50$.

Декодирование ответа тоже требуется и оплачивается отдельно.

Вот пример ответа без декодирования:
Посмотреть вложение 59319


Кому интересно стучать сюда или в телегу.

самое забавное что ты мог бы вприцнипе не сериализировать)) если задача в отправке рекьюста просто с другой цифрой но равное тому же кол-ву цифр (в длинну), запросто реплейсишь и отправляешь :) ну это если уж совсем супер тривиально, как минимум попробовал бы) тоже бадался в свое время но там была вообще жопа по размерам. Реверсить пришлось прото схемы :)
 
У кого есть готовое решение? Нужно десериализацию сделать без классов (без .proto файла/без схемы) как это делает чарльз, затем по этому же алгоритму назад сериализовать уже после изменения данных в ячейках. По $ договоримся. Пример как декодировать без классов https://protobuf-decoder.netlify.app/ ну или в гитхабе https://github.com/pawitp/protobuf-decoder но тут на JS, а надо на С#, хотя если код будет реально впихнуть в зенку и там выполнить то можно и на JS. В C# и JS сразу говорю - я ноль, поэтому прошу помощь за мани, разумеется, не проходите мимо.

Пример результата декодирования протобуфа должен быть в таком виде (как в чарльзе):
CSS:
Развернуть Свернуть Копировать
1 {
  3: 2
}
2 {
  1 {
    1: 16
    2 {
      1: "thread-a:r7534557228815006152"
      2 {
        14 {
          1 {
            1: "mmm-a:r8795996734187433624"
            2 {
              1: 1
              2: "link.com"
              3: "Anna"
              10: "gres.com"
            }
            3 {
              1: 1
              2: "nik.ru"
            }
            7: 1671800157873
            8 {
            }
            9 {
              2 {
                1: 0
                2: "Primer"
              }
              7: 1
            }
            11: "^f_cl"
            11: "^all"
            11: "^pfg"
            11: "^f_bt"
            11: "^f_btns"
            11: "^a"
            18: 0x000001853f0df6b1
            42: 0
            52: "s:4c096407b7b91fcc|#mmm-a:r8795996734187433624|0"
          }
          3: 1
        }
      }
    }
  }
}
4 {
  1: 1671800155764
  2: 1
  3: 1671800157878
  4: 1
  5: 14
}
5: 2
 
У кого есть готовое решение? Нужно десериализацию сделать без классов (без .proto файла/без схемы) как это делает чарльз, затем по этому же алгоритму назад сериализовать уже после изменения данных в ячейках. По $ договоримся. Пример как декодировать без классов https://protobuf-decoder.netlify.app/ ну или в гитхабе https://github.com/pawitp/protobuf-decoder но тут на JS, а надо на С#, хотя если код будет реально впихнуть в зенку и там выполнить то можно и на JS. В C# и JS сразу говорю - я ноль, поэтому прошу помощь за мани, разумеется, не проходите мимо.

Пример результата декодирования протобуфа должен быть в таком виде (как в чарльзе):
CSS:
Развернуть Свернуть Копировать
1 {
  3: 2
}
2 {
  1 {
    1: 16
    2 {
      1: "thread-a:r7534557228815006152"
      2 {
        14 {
          1 {
            1: "mmm-a:r8795996734187433624"
            2 {
              1: 1
              2: "link.com"
              3: "Anna"
              10: "gres.com"
            }
            3 {
              1: 1
              2: "nik.ru"
            }
            7: 1671800157873
            8 {
            }
            9 {
              2 {
                1: 0
                2: "Primer"
              }
              7: 1
            }
            11: "^f_cl"
            11: "^all"
            11: "^pfg"
            11: "^f_bt"
            11: "^f_btns"
            11: "^a"
            18: 0x000001853f0df6b1
            42: 0
            52: "s:4c096407b7b91fcc|#mmm-a:r8795996734187433624|0"
          }
          3: 1
        }
      }
    }
  }
}
4 {
  1: 1671800155764
  2: 1
  3: 1671800157878
  4: 1
  5: 14
}
5: 2

Если предоставишь достаточное кол-во вариаций или проще линк, то запросто. Линку тг
 
В три подхода сражался с этими Protobuf-ами и только вчера осилил.
Нужно было отснифанные запросы из Charles перенести в ZennoPoster или DLL библиотеку.

Если кто-то будет реализовывать отправку Protobuf запросов из ZennoPoster, то вы можете столкнуться с проблемой, что библиотека Google.Protobuf конфликтует с чем-то в постере. Как оказалось, в постере уже есть все необходимые библиотеки, но других версий. Из-за чего при добавлении их из Nuget код писал ошибку о конфликтах. Необходимо добавить Google.Protobuf и другие именно из папки Progs в постере в GAC.

Также кто столкнётся с утилитой pbtk для вскрытия Android приложений и извлечения из них Protobuf-файлов. К сожалению, уже большинство APK она не вскрывает. Только старые версии двухлетней давности. Во всяком случае у меня так :(
 
Последнее редактирование:
  • Спасибо
Реакции: xdriver, myndeswx и Nord
В три подхода сражался с этими Protobuf-ами и только вчера осилил.
Нужно было отснифанные запросы из Charles перенести в ZennoPoster или DLL библиотеку.

Если кто-то будет реализовывать отправку Protobuf запросов из ZennoPoster, то вы можете столкнуться с проблемой, что библиотека Google.Protobuf конфликтует с чем-то в постере. Как оказалось, в постере уже есть все необходимые библиотеки, но других версий. Из-за чего при добавлении их из Nuget код писал ошибку о конфликтах. Необходимо добавить Google.Protobuf и другие именно из папки Progs в постере в GAC.

Также кто столкнётся с утилитой pbtk для вскрытия Android приложений и извлечения из них Protobuf-файлов. К сожалению, уже большинство APK она не вскрывает. Только старые версии двухлетней давности. Во всяком случае у меня так :(
Ну хоть бы выложил решение с примерами, думаю, всем было бы полезно)) я на днях запилил нечто похожее для работы с прото данными без прото схемы, ну вроде как должно работать, но в деле не проверял.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)