|
|
@ -3,55 +3,63 @@ |
|
|
|
```plain |
|
|
|
32 bits |
|
|
|
<----------------------------------------------> |
|
|
|
16 bits |
|
|
|
<----------------------> |
|
|
|
+----------------------------------------------+ |
|
|
|
0 | IDENTIFICATOR | |
|
|
|
+----------------------------------------------+ |
|
|
|
1 | ARCH | OS | |
|
|
|
+----------------------------------------------+ |
|
|
|
2 | TIME | |
|
|
|
+----------------------------------------------+ |
|
|
|
3 | TYPE | PROT. | VER | |
|
|
|
+----------------------------------------------+ |
|
|
|
4 | HL | MDL | |
|
|
|
+----------------------------------------------+ |
|
|
|
5-9 | RESERVED | |
|
|
|
+----------------------------------------------+ |
|
|
|
| OPTIONS | |
|
|
|
+----------------------------------------------+ |
|
|
|
| METADATA | |
|
|
|
+----------------------------------------------+ |
|
|
|
| PAYLOAD | |
|
|
|
+----------------------------------------------+ |
|
|
|
16 bits 8 bits |
|
|
|
<----------------------> <----------> |
|
|
|
+----------------------------------------------+ <---------------------+ |
|
|
|
0 | IDENTIFICATOR | | |
|
|
|
+----------------------------------------------+ | |
|
|
|
1 | ARCH | OS | | |
|
|
|
+----------------------------------------------+ | |
|
|
|
2 | TIME | | |
|
|
|
+----------------------------------------------+ | |
|
|
|
3 | TYPE | PROT. | VER | Base informations. | |
|
|
|
+----------------------------------------------+ Frame 0-9 | |
|
|
|
4 | HL | MDL | + OPTIONS. | |
|
|
|
+----------------------------------------------+ | |
|
|
|
5-9 | RESERVED | | |
|
|
|
+----------------------------------------------+ | |
|
|
|
| OPTIONS | <---------------------+ |
|
|
|
+----------------------------------------------+ <---------------------+ |
|
|
|
| METADATA | | |
|
|
|
+----------------------------------------------+ Contents. | |
|
|
|
| PAYLOAD | Frame post-OPTIONS-n.| |
|
|
|
+----------------------------------------------+ <---------------------+ |
|
|
|
``` |
|
|
|
|
|
|
|
**Description** |
|
|
|
|
|
|
|
| Nom du champ | Position | Longeur (bits) | Valeur(s) | |
|
|
|
|:------------:|:------:|:--------------:|:---------:| |
|
|
|
| Identificator | 0 | 32 | `0x7f 0x52 0x49 0x5a` | |
|
|
|
| Arch | 4 | 16 | `0x0` = no arch | |
|
|
|
|||| `0x01` = i386 | |
|
|
|
|||| `0x02` = x86_64 | |
|
|
|
| OS | 6 | 16 | `0x0` = no OS | |
|
|
|
|||| `0x01` = linux | |
|
|
|
| Time | 8 | 32 | *current timestamp* | |
|
|
|
| Type | 12 | 16 | `0x0` = container | |
|
|
|
|||| `0x1` = meta container | |
|
|
|
| Protected | 14 | 8 | `0x0` = unprotected | |
|
|
|
|||| `0x1` = aes | |
|
|
|
|:-------------|:--------:|:--------------:|:----------| |
|
|
|
| **Identificator** | 0 | 32 | `0x7f 0x52 0x49 0x5a` | |
|
|
|
| **Arch** | 4 | 16 | `0x0000` = no arch | |
|
|
|
|||| `0x0001` = i386 | |
|
|
|
|||| `0x0002` = x86_64 | |
|
|
|
| **OS** | 6 | 16 | `0x0000` = no OS | |
|
|
|
|||| `0x0001` = Linux | |
|
|
|
| **Time** | 8 | 32 | *current timestamp* | |
|
|
|
| **Type** | 12 | 16 | `0x0000` = container | |
|
|
|
|||| `0x0001` = meta container | |
|
|
|
| **Protected** | 14 | 8 | `0x00` = unprotected | |
|
|
|
|||| `0x01` = AES-128 | |
|
|
|
|||| `0x02` = AES-192 | |
|
|
|
|||| `0x04` = AES-128 | |
|
|
|
| **Version** | 15 | 8 | `0x00` = first (current) | |
|
|
|
| **HL** | 16 | 16 | `0x000a` = no options | |
|
|
|
| **MDL** | 18 | 16 | `0x0000` = no metadata | |
|
|
|
| **RESERVED** | 20 | 120 | `0x0000` = not used | |
|
|
|
|
|
|
|
* Magic number (32 bits: `0x7f` `0x52` `0x49` `0x5a`), la signature du fichier: DELRIZ. |
|
|
|
* arch (16 bits), l'identifiant de la machine cible (architecture du processeur). |
|
|
|
* os (16 bits), l'identifiant de la machine cible (environnement d'execution). |
|
|
|
* timestamp (32 bits), le timestamp de compilation. |
|
|
|
* type (16 bits), le type de conteneur, ex: conteneur, méta-conteneur, etc... |
|
|
|
* protected (8 bits), 0x01 si le conteneur est chiffré. |
|
|
|
* version (8 bits), la version de l'entête. |
|
|
|
* HL (16 bits), la taille de l'entête en mots de 32 bits. |
|
|
|
* MDL (16 bits), la taille des méta-données en mode de 32 bits. |
|
|
|
* reserved (20 bytes), 20 octets réservés. |
|
|
|
* options, les informations optionnels. |
|
|
|
* méta-données. |
|
|
|
* payload. |
|
|
|
* **ARCH**: l'identifiant de la machine cible (architecture du processeur). |
|
|
|
* **OS**: l'identifiant de la machine cible (environnement d'execution). |
|
|
|
* **TIME**: le timestamp de compilation. |
|
|
|
* **TYPE**: le type de conteneur, ex: conteneur, méta-conteneur, etc... |
|
|
|
* **VER**: la version de l'entête. |
|
|
|
* **HL**: la taille de l'entête en **mot de 32 bits**. |
|
|
|
* **MDL**: la taille des méta-données en **mot de 32 bits**. |
|
|
|
* **RESERVED**: 20 octets réservés. |
|
|
|
* **OPTIONS**: des données optionnels. |
|
|
|
* **METADATA**: les informations du contenu (see Cupfile). |
|
|
|
* **PAYLOAD**: le contenu. |
|
|
|
|
|
|
|
> **NOTE**: Si `HL` == 5, alors il n'y à pas d'options. |
|
|
|
> **NOTE**: |
|
|
|
* Si `HL` == `10d` (`000ah`, frame 0 to 9), alors il n'y à pas d'options. |
|
|
|
* Si `MDL` == `0d` (`0000h`), alors il n'y à pas de méta-données. |