Aller au contenu principal

3.5. En-tête d'arbre signé

3.5. En-tête d'arbre signé

Chaque fois qu'un journal ajoute de nouvelles entrées à l'arbre, le journal DEVRAIT signer le hachage d'arbre correspondant et les informations d'arbre (voir le message client En-tête d'arbre signé correspondant dans la Section 4.3). La signature pour ces données est structurée comme suit :

    digitally-signed struct {
Version version;
SignatureType signature_type = tree_hash;
uint64 timestamp;
uint64 tree_size;
opaque sha256_root_hash[32];
} TreeHeadSignature;

"version" est la version du protocole à laquelle TreeHeadSignature est conforme. Cette version est v1.

"timestamp" est l'heure actuelle. L'horodatage DOIT être au moins aussi récent que l'horodatage SCT le plus récent dans l'arbre. Chaque horodatage ultérieur DOIT être plus récent que l'horodatage de la mise à jour précédente.

"tree_size" est égal au nombre d'entrées dans le nouvel arbre.

"sha256_root_hash" est la racine de l'arbre de hachage Merkle.

Chaque journal DOIT produire sur demande un En-tête d'arbre signé qui ne soit pas plus ancien que le délai de fusion maximum (Maximum Merge Delay). Dans le cas peu probable où il ne reçoive aucune nouvelle soumission pendant une période MMD, le journal DOIT signer le même hachage d'arbre Merkle avec un horodatage frais.