Децентрализованные
приложения
____________________________________
[ 35 ]
___________________________________
видно, что вы не можете создать любую разновидность ДП на основе Ethereum —
вы можете построить только приложения, функции которых поддерживаются
платформой Ethereum.
Ethereum имеет внутреннюю
валюту под названием
эфир
(ether). Валюта необхо-
дима для развертывания смарт-контракта или выполнения его функций.
Эта книга посвящена разработке ДП на платформе Ethereum. Прочитав книгу, вы
изучите Ethereum до мелочей.
Hyperledger
Hyperledger — это проект, посвященный разработке технологии контролируемых
ДП. Hyperledger Fabric (или просто Fabric) — реализация проекта Hyperledger.
К другим реализациям относятся Intel Sawtooth и R3 Corda.
Fabric — это контролируемая децентрализованная платформа, которая позволяет
выполнять КДП, именуемые
чейнкодами
(chaincode). Мы
должны развернуть соб-
ственную единицу Fabric и запустить поверх нее КДП. На каждом узле сети рабо-
тает единица Fabric. Она действует по принципу plug-and-play (подключай и поль-
зуйся) и позволяет с легкостью подключать различные функции и протоколы кон-
сенсуса.
Hyperledger использует структуру данных блокчейна. На данный момент блокчей-
ны проекта Hyperledger позволяют выбрать вариант без консенсуса (протокол
NoOps) или протокол консенсуса PBFT (Practical Byzantine Fault Tolerance, решение
устойчивое к византийской ошибке
8
). Hyperledger имеет специальный удостове-
ряющий узел (certificate authority),
который решает, кто может подключиться к сети
и на какие действия имеет право.
IPFS
IPFS (InterPlanetary File System, Межпланетная файловая система) — это децентра-
лизованная файловая система. В основу IPFS заложены принципы DHT (distributed
hash table, распределенная хеш-таблица) и Merkle DAG (directed acyclic graph,
направленный ациклический граф). IPFS использует такой же протокол, как
BitTorrent, чтобы распределять данные по сети. Одной из ключевых опций IPFS
является поддержка версий, реализованная на основе механизма Git.
Хотя IPFS называют децентрализованной файловой
системой, она не обладает
главным свойством файловой системы. Если мы сохранили что-то в обычную фай-
ловую систему, то уверены, что файл будет храниться, пока мы его не удалим. Но
8
Византийская ошибка (задача византийских генералов) — в криптологии задача взаимодействия
нескольких удаленных абонентов, которые получили приказы из одного центра. Часть абонентов,
включая центр, могут быть злоумышленниками. Нужно выработать
единую стратегию действий, ко-
торая будет выигрышной для абонентов. —
Ред.