А теперь представьте себе возможный гибрид инноваций, который появится на вершине этих десяти мощных функций и характеристик. Объединив их вместе, вы начнете представлять себе невероятные возможности блокчейнов.
Переходы состояний / Машина состояний. Что это?
Блокчейн годится не для всего. И не все соответствует парадигме блокчейна. Блокчейн – это «машина состояний», еще одно понятие, которое необходимо усвоить. В техническом плане состояние просто означает «сохраненная информация» в определенный момент времени. Стейт-машина – это компьютер или устройство, которое запоминает состояние чего-либо в данный момент времени. По отношению к некоторым исходным данным этот статус может измениться, и блокчейн обеспечивает итоговый результат для этих внесенных изменений. Отслеживание переходов этих состояний важно, и с этим блокчейн справляется хорошо, причем неизменным образом. Напротив, запись базы данных изменчива, потому что ее можно многократно переписывать. Не все базы данных имеют аудиторские следы, и даже в тех, что имеют, аудиторский след может быть уничтожен или потерян, поскольку он не защищен от несанкционированного доступа. В блокчейне история перехода является постоянной частью информации о состоянии. В блокчейне Ethereum хранится особое «дерево состояний», представляющее текущий баланс каждого адреса, и «список транзакций», представляющий транзакции между текущим блоком и предыдущими в каждом блоке.
Машины состояний подходят для имплементации распределенных систем, которые должны быть отказоустойчивыми.
Алгоритмы консенсуса
В основе понимания тягот смещения парадигмы блокчейна лежит понимание концепции «децентрализованного согласия», ключевой принцип компьютерной революции, основанной на криптографии.
Децентрализованный консенсус нарушает старую парадигму централизованного консенсуса, когда для управления валидностью транзакции используется одна центральная база данных. Децентрализованная схема (на которой основаны протоколы блокчейна) передает полномочия и доверие децентрализованной виртуальной сети и позволяет ее узлам непрерывно и последовательно регистрировать транзакции в публичном «блоке», создавая уникальную «цепочку», блокчейн. Каждый последующий блок содержит «хэш» (уникальный отпечаток пальца) предыдущего кода, поэтому криптография (через хэш-коды) используется для обеспечения безопасной аутентификации источника транзакции и устраняет необходимость в центральном посреднике. Комбинация криптографии и технологии блокчейна гарантирует, что никогда не будет повторяющейся записи одной и той же транзакции. Важно то, что при такой степени разделения консенсусная логика отделена от самого приложения, поэтому приложения могут быть созданы децентрализованными, и это послужит толчком для ряда системных изменений в программной архитектуре приложений,