Разработка смарт-контрактов в Ethereum. Тимур Машнин
Чтение книги онлайн.
Читать онлайн книгу Разработка смарт-контрактов в Ethereum - Тимур Машнин страница 3
Кроме того, Ethereum использует алгоритм хэширования Ethash, в то время как Bitcoin использует алгоритм хэширования, SHA-256.
Также Ethereum использует доказательство работы, устойчивое к ASIC.
В алгоритме майнинга Эфериума, майнеры должны извлекать случайные данные из состояния, вычислять некоторые случайно выбранные транзакции из последних N блоков в цепочке блоков и возвращать хэш результата.
Это имеет два важных преимущества.
Во-первых, контракты Ethereum могут включать в себя любые вычисления, поэтому ASIC для Ethereum должен быть, по существу, ASIC для общих вычислений, т. е. процессором.
Во-вторых, для добычи требуется доступ ко всей цепочке блоков, заставляя майнеров хранить весь блок-цепочку.
Таким образом, применение ASIC для Эфериума, по сути, бесполезно, потому что это просто общие вычисления.
И, в довершение всего, в блокчейн могут быть записаны контракты, которые специально предназначены для усложнения работы ASIC.
Еще одна интересная вещь, заключается в том, что так как майнеры работают с состоянием, память должна быть быстрой.
И стандартная DRAM на самом деле не справляется с этой задачей, поэтому для майнинга используются RAM графических процессоров.
Подытоживая, с общей точки зрения, у Биткойн и Эфириум разные предназначения.
В то время как биткойн создавался как альтернатива традиционным деньгам и, таким образом, является средством оплаты и сохранения стоимости, Ethereum разрабатывался как платформа для выполнения одноранговых контрактов и приложений.
И основная цель эфира – не быть альтернативой традиционным деньгам, в отличие от биткойнов, а облегчать и монетизировать работу сети Ethereum.
В целом, Bitcoin и Ethereum – это разные реализации технологии blockchain с разными целями.
Масштабирование
Давайте сравним децентрализованные системы блокчейна с централизованными системами.
Блокчейн взял на себя роль посредника в виде проверки, подтверждения и регистрации транзакций и, конечно же, выполнения консенсусного процесса для обеспечения целостности цепочки.
Все эти функции требуют времени и приводят к значительным накладным расходам по сравнению с централизованной системой.
Транзакции в Ethereum, например, обрабатываются на всех узлах и обрабатываются последовательно, а не параллельно.
В соответствии с порядком, определенным майнером.
Майнеры предпочитают сначала обрабатывать транзакции с более высокой комиссией.
После того, как блок добыт, этот порядок закреплен навечно. Этот порядок называется индексом транзакции.
И каждый полный узел хранит всю цепочку блоков.
Все это препятствует масштабируемости приложений blockchain.
Скорость