Christian Risi ad4fd555f1 V0.6.0 Arroyo Toad
Added the capability to sign and verify P521 Signature
2024-12-06 11:31:07 +00:00

3.7 KiB

Message Structure

Possible Improvements

As for now, we are not having a max abount of bytes the message may have, so we are relying on the ability of the receiver to dynamically allocate a buffer for the message.

However, we could add a field to tell a PRIORI the length of the whole message.

Probably we would use between 8 B or 24 B to put this info

(This won't be a 2.0 version, as this is not a final document yet)

+-+ 64 - bits---+----------------+-------------+----------------+-----------------------+
|0| Version 7   | Message Type 8 | Dev Type 8  | RESERVED 16    | Sign Type 32          |
+-+-------------+----------------+-------------+----------------+-----------------------+
| Timestamp 64                                                                          |
+---------------------------------------------------------------------------------------+
| DevID 128 bits                                                                        |
|                                                                                       |
+---------------------------------------------------------------------------------------+
| Location 192 bits                                                                     |
|                                                                                       |
|                                                                                       |
+---------------------------------------------------------------------------------------+
\                                                                                       /
 | Fields -----------------------------------------------------------------------------|
/                                                                                       \
+---------------------------------------------------------------------------------------+
| 0 Padding 64 - n                                                                      |
+---------------------------------------------------------------------------------------+
| Signature up to-512 bits                                                              |
|                                                                                       |
|                                                                                       |
|                                                                                       |
|                                                                                       |
|                                                                                       |
|                                                                                       |
|                                                                                       |
+---------------------------------------------------------------------------------------+

Fields

each field can be at most 8 * 2^32 bits of length:

  • 34359738368 bits
  • 4294967296 Bytes

Key

MUST be a String

Value

It's up to the Application to decide whether the value is a string or another type of datum

+-- 64 - bits--------------------------+----------------------------------------+
|  Key-Length 32                       | Value-Length 32                        |
+--------------------------------------+----------------------------------------+
\   Key                                                                         /
 |-----------------------------------------------------------------------------|
/   Value                                                                       \
+-------------------------------------------------------------------------------+