Les arbres de Merkle sont utilisés comme mécanisme anti-entropie dans plusieurs magasins de clés/valeurs distribués et répliqués :
Sans aucun doute, un mécanisme anti-entropie est une Bonne Chose - les défaillances transitoires arrivent, en production. Je ne suis juste pas sûr de comprendre pourquoi les arbres de Merkle sont l'approche populaire.
-
Envoyer un arbre de Merkle complet à un pair implique d'envoyer l'espace clé local à ce pair, avec les hachages de chaque valeur de clé, stockés dans les niveaux inférieurs de l'arbre.
-
Comparer un arbre de Merkle envoyé par un pair nécessite d'avoir son propre arbre de Merkle.
Puisque les deux pairs doivent déjà avoir un espace clé/valeur haché trié en main, pourquoi ne pas faire une fusion linéaire pour détecter les divergences?
Je ne suis simplement pas convaincu que la structure en arbre fournisse des économies quelconques lorsqu'on prend en compte les coûts de maintenance, et le fait que des passages linéaires sur les feuilles de l'arbre sont déjà effectués juste pour sérialiser la représentation sur le fil.
Pour approfondir, une alternative de type homme de paille pourrait être d'échanger des tableaux de condensats de hachage, qui sont mis à jour de manière progressive et regroupés par position d'anneau modulo.
Qu'est-ce que je rate ?