Цепной код должен быть установлен только на поддерживающих одноранговых узлах? - PullRequest
0 голосов
/ 22 мая 2018

В соответствии с документацией фабрики гиперледжеров цепной код должен быть развернут только в подтверждающих одноранговых узлах, и в нем говорится, что не подтверждающие одноранговые узлы могут проверять и обновлять регистр.Теперь я немного сбит с толку, если у не одобряющих пиров нет цепного кода, как они могут генерировать наборы R / W.Как не поддерживающие одноранговые узлы смогут создавать новое состояние для актива, если они не знают о логике (коде цепи), стоящей за ним?

1 Ответ

0 голосов
/ 22 мая 2018

Если вы посмотрите на https://hyperledger -fabric.readthedocs.io / en / release-1.1 / txflow.html # , вы найдете раздел, который гласит:

Блоки транзакций «доставляются» всем партнерам на канале.Транзакции в блоке проверяются, чтобы убедиться, что политика одобрения выполнена, и чтобы убедиться, что не было никаких изменений в состоянии регистра для переменных набора чтения, так как набор чтения был сгенерирован выполнением транзакции.Транзакции в блоке помечаются как действительные или недействительные.

Блок - это упорядоченный набор транзакций, и транзакции включают в себя переходы состояний в форме наборов для чтения / записи.Результатом одобрения фактически является набор для чтения / записи, и это то, что упорядочено и доставлено всем партнерам в канале.

Для проверки транзакции одноранговый узел должен проверить следующее:

  • Правильно ли сформирована транзакция
  • Была ли выполнена политика одобрения (политика одобрения распространяется на все одноранговые узлы в канале, когда создается цепной код, даже если одноранговый узел не имеет байтов цепного кода)
  • Проверка MVCC

Для того, чтобы выполнить вышеизложенное, узлам не нужно выполнять сам код цепи.

...