Почему блокчейн?

Простая умственная модель для понимания "что" и "почему".

Блокчейн - это децентрализованное соглашение среди разнообразного набора участников о двух вещах:

  1. Официальном порядке (реестре) транзакций.

  2. Официальном состоянии мира, включая балансы счетов и состояние различных программ.

В современных блокчейнах, таких, как Ethereum, транзакции состоят из передачи балансов, создания новых программ и вызова функций существующих программ. Агрегированный результат всех транзакций до настоящего момента создает текущее состояние, поэтому согласие относительно (1) подразумевает согласие относительно (2).

В системе блокчейн установлен набор протокольных правил, которые описывают, как распределенный набор узлов, находящихся в настоящее время в синхронизации, будет взаимодействовать друг с другом, чтобы договориться о новом списке транзакций, которые каждый из них должен применить. Индукция поддерживает синхронизацию узлов: они начинают с одного и того же состояния и применяют те же самые транзакции, поэтому в конце применения нового списка транзакций у них по-прежнему есть согласованное состояние. (В тексте не углубляются в детали о том, как такая система узлов достигает согласия, но вы можете обратиться к документации по механизму консенсуса Monad для получения дополнительной информации.)

Общее глобальное состояние позволяет разработке децентрализованных приложений - приложений, которые существуют "на блокчейне", т.е. на каждом из узлов в системе блокчейн. Децентрализованное приложение - это набор кода (а также постоянное, специфичное для приложения состояние), который может быть вызван любым пользователем, который делает это, отправляя транзакцию, указывающую на функцию этого приложения. Каждый из узлов в блокчейне ответственен за правильное выполнение вызываемого байткода; дублирование обеспечивает честность каждого узла.

Пример приложения

Децентрализованные приложения могут реализовывать функциональность, которая обычно реализуется в централизованной форме. Например, очень простым примером децентрализованного приложения является Виртуальный Банк (обычно называемый в криптовалютной среде Протоколом Займов).

В физическом мире банк - это бизнес, который принимает депозиты и выдает их в кредит под более высокий процент. Банк зарабатывает разницу между высокой ставкой и низкой ставкой; заёмщик получает кредит для осуществления чего-то экономически продуктивного; а вы получаете проценты на свои депозиты. Все выигрывают!

Виртуальный Банк - это просто приложение с четырьмя основными методами: внесение депозита, вывод депозита, получение займа и погашение займа. Логика для каждого из этих методов в основном сводится к ведению бухгалтерии, чтобы убедиться, что депозиты и кредиты отслеживаются правильно:

class VirtualBank:
    def deposit(self, sender, amount):
        # перевести сумму от отправителя к себе (банку)
        # выполнить внутреннюю бухгалтерию для зачисления отправителю

    def withdraw(self, sender, amount):
        # убедиться, что у отправителя достаточно средств на счету
        # выполнить внутреннюю бухгалтерию для списания средств у отправителя
        # перевести сумму от себя (банка) к отправителю

    def borrow(self, sender, amount):
        # ...

    def repay(self, sender, amount):
        # ...

В Ethereum или в Monad кто-то может написать код для этого Виртуального Банка и загрузить его; затем любой может использовать его для займов и кредитования, потенциально намного проще, чем при попытке получить доступ к банковским услугам в своей стране.

Этот простой пример демонстрирует силу децентрализованных приложений. Вот несколько других преимуществ:

  • Открытые API / композиционность: децентрализованные приложения могут быть вызваны атомарно другими децентрализованными приложениями, позволяя разработчикам создавать более сложные функции, объединяя существующие компоненты.

  • Прозрачность: логика приложения выражается исключительно через код, поэтому любой может просмотреть логику для выявления побочных эффектов. Состояние прозрачно и поддается аудиту; доказательство резервов в DeFi является стандартом.

  • Устойчивость к цензуре и доверительная нейтральность: любой может отправлять транзакции или загружать приложения в сеть без разрешения.

  • Глобальный охват: любой с доступом к интернету может получить доступ к важным финансовым услугам, включая пользователей без банковского счета или с ограниченным доступом к банковским услугам.

Last updated