Nel grafico è presente un Merkle tree con solo 4 foglie, ciascuna rappresenta l’hash finale (txid) di tutti gli elementi di una transazione. Se vogliamo dimostrare che la transazione 1 è presente nel blocco, dobbiamo conoscere quattro hash:
Txid1, Txid2, Hash 3-4, Merkle root
Infatti da Txid1 e Txid2 possiamo ricavare l’Hash 1-2, il quale accoppiato all’Hash 3-4 produce una Merkle root.
Se la Merkle root così ricavata corrisponde a quella del blocco, la dimostrazione ha avuto successo.
Con questo metodo per dimostrare Txid1 non è necessario memorizzare Txid3 e Txid4.
Con Merkle tree grandi, gli hash necessari per la dimostrazione sono una piccola percentuale di tutto il Merkle tree.
Ciao non mi è chiara, la verifica, se sono in possessso solo della root e dell hash della mia transazione come faccio a averificare che appartenga o meno a quel blocco
non basta infatti, come dice il post: se hai la txid1 e la root, devi anche conoscere tx2 e hash3-4, ovvero tutto il merkle branch di quella transazione. Gli SPV clients scaricano solo i block header (col merkle root), ma quando devono verificare una particolare transazione, scaricano dai fullnode anche il branch di quella transazione