ExEF v2
danger
This version has been deprecated in favour of v3 since Excalibur 0.3. This document is reproduced here only for posterity.
The following is a diagram of the ExEF format. The numbers represent 0-indexed byte positions.
- Bytes
0to3will be the ExEF magic constant: the ASCII stringExEF. - Bytes
4and5represent the ExEF version, which should be interpreted as an 2-byte unsigned integer.- The current version is
00 02.
- The current version is
- Bytes
6and7represent the AES-GCM key size, which should be interpreted as an 2-byte unsigned integer. There are currently only 3 supported values.- The bytes
00 80representaes-128-gcm. - The bytes
00 C0representaes-192-gcm. - The bytes
01 00representaes-256-gcm.
- The bytes
- Bytes
8to19represent the 12-byte nonce used for AES-GCM encryption. - Bytes
20to27represent the ciphertext length, which should be interpreted as an 8-byte unsigned integer. - The ciphertext follows.
- The last 16 bytes is the 16-byte AES-GCM tag.