-
Notifications
You must be signed in to change notification settings - Fork 2
Draft.Messaging.RU
Anton Kashcheev edited this page Sep 12, 2024
·
6 revisions
Полезные ссылки:
Что точно должно быть в сообщении:
- Заголовок:
- Размер полезной нагрузки в байтах
- Контрольная сумма
- Полезная нагрузка
В С++-структурках:
template<typename HashSum, typename Payload>
struct Message
{
std::int32_t size;
HashSum hashsum;
Payload payload;
};
В нотации Ubjson:
[[]
[l][size]
[H][I][?][<hashsum>]
[{][<payload>][}]
[]]
Контроль целостности байтовой последовательности полезной нагрузки.
Алгоритм хэширования?
Пока на примете есть вариант HMAC, но надо криптографию поднимать (приоритеты)
C++-структура:
template<typename Data>
struct PayloadBase
{
const char *objectName;
const char *methodName;
Data data;
};
В нотации Ubjson:
[{]
[i][6][object][S][i][?][<objectName>]
[i][6][method][S][i][?][<methodName>]
[i][4][data][{] ... [}]
[}]
или
[{]
[i][6][object][S][i][?][<objectName>]
[i][6][method][S][i][?][<methodName>]
[i][4][data][[] ... []]
[}]