GET_AUTHORITY_DELTA — Group 21, Code 3
Incremental change set between two epochs — the common monthly refresh.
Design-stage — parameters are a first draft
Field sizes are drafted from raidax/ideas_for_suspect_raida_servers.txt (Addenda 5–7) and are not final or implementation-verified. The body is encrypted per the header ENC_CODE; see below.
Phase II — later
This command is Phase II: convenience, recovery, or optimization that is not required for the first working move. Optimization over full snapshot download; add once volume justifies it.
How it works
Downloading the entire authority list every epoch would be wasteful when only a handful of coins move each time. GET_AUTHORITY_DELTA asks for just the changes between the epoch a client already has and a newer one — the short list of coins whose authority changed, and their new home.
This is the normal monthly refresh: tiny, fast, and like the full snapshot it carries an AES-CMAC so the client can trust it regardless of which mirror served it. A client that is several epochs behind can request a delta spanning that gap, or fall back to a full snapshot if that is simpler.
Direction & encryption
- Direction: client → mirror
- ENC_CODE: per client policy
Request Body parameters
| Field | Bytes | Description |
|---|---|---|
| CH (challenge) | 16 | Standard challenge / replay protection (per header convention). |
| from_epoch | 4 | Epoch the client currently holds. |
| to_epoch | 4 | Epoch to advance to. |
| EOF | 2 | Terminator (0x3E3E). |
Response Body parameters
| Field | Bytes | Description |
|---|---|---|
| from_epoch | 4 | Start epoch. |
| to_epoch | 4 | End epoch. |
| changes | 4 | Number of change rows. |
| entries | var | Repeating: DN(1) + SN(4) + new_authority_id(2) = 7 bytes each (root = 0). |
| CMAC | 16 | AES-CMAC over (from || to || entries). |