3.5. Intestazione dell'albero firmata
3.5. Intestazione dell'albero firmata
Ogni volta che un log aggiunge nuove voci all'albero, il log DOVREBBE firmare l'hash dell'albero corrispondente e le informazioni dell'albero (vedere il messaggio client Intestazione dell'albero firmata corrispondente nella Sezione 4.3). La firma per quei dati è strutturata come segue:
digitally-signed struct {
Version version;
SignatureType signature_type = tree_hash;
uint64 timestamp;
uint64 tree_size;
opaque sha256_root_hash[32];
} TreeHeadSignature;
"version" è la versione del protocollo a cui TreeHeadSignature è conforme. Questa versione è v1.
"timestamp" è il tempo corrente. Il timestamp DEVE essere almeno recente quanto il timestamp SCT più recente nell'albero. Ogni timestamp successivo DEVE essere più recente del timestamp dell'aggiornamento precedente.
"tree_size" è uguale al numero di voci nel nuovo albero.
"sha256_root_hash" è la radice dell'albero di hash Merkle.
Ogni log DEVE produrre su richiesta un'Intestazione dell'albero firmata che non sia più vecchia del Ritardo di fusione massimo. Nel caso improbabile che non riceva nuove sottomissioni durante un periodo MMD, il log DEVE firmare lo stesso hash dell'albero Merkle con un timestamp fresco.