Как получить доказательство привязки компактного фильтра Decred v2 к заголовку

Лёгкому клиенту с недоверенным сервером фильтров нужно убедиться, что заголовок блока фиксирует выданные байты. RPC версии два возвращает путь проверки вместе с сериализованным фильтром.

Соберите все элементы доказательства

В BLOCK укажите блок эпохи с обязательствами заголовков в нужной сети. Сверьте blockhash с запросом. Сохраните байты фильтра, proofindex и упорядоченные proofhashes вместе как проверочный пример.

dcrctl getcfilterv2 "$BLOCK" | jq '{blockhash, proofindex, proofhashes, data}'

Проверьте по независимому заголовку

Вычислите хеш фильтра по правилам протокола и передайте индекс листа и соседние хеши совместимой с Decred проверке обязательства. Используйте уже проверенный клиентом заголовок. Корень и путь, выданные одним сервером для недоверенного заголовка, сами по себе не доказывают принадлежность цепочке.

github.com getcfilterv2