Лекция 1-2 (Технология Блокчейн)
Приветствие
Кажется это прекрасный день для того, чтобы погрузиться углубленно в технологию блокчейн, поэтому я рад приветствовать вас, фотоны и, конечно же, подписчики канала VICRYPTO'S. С вами все также Луменарий и сегодня вы получите огромный чемодан знаний на эту тему.
Технология блокчейн, стремительно развивающаяся в 2024 году, служит основой для различных отраслей, включая финансы и здравоохранение. Эта лекция направлена на раскрытие тайн блокчейна, подробно описывая его механизмы, применение и выгоды.
Узнайте, что такое блокчейн и как новые блоки данных добавляются в цепочку. Я разъясню вам преимущества и недостатки технологии блокчейн по сравнению с традиционными системами. Блокчейн имеет множество применений в различных отраслях, от финансов до NFT, о чем я подробно расскажу.
В этой лекции также будут объяснены технические аспекты, такие как механизмы консенсуса и платформы разработки. Если вы желаете стать разработчиком блокчейна, то данная лекция тоже сможет вам помочь.
Вступление
Технология блокчейн произвела революцию в цифровой трансформации
контрактов, транзакций и записей, которые формируют определяющую структуру экономической, политической, социальной и правовой систем, управляющих
этим миром. Первое поколение технологии блокчейн началось с появления биткоина, созданным Сатоши Накамото в 2008 году, который ввел концепцию блокчейна и ознаменовал внедрение криптовалют в финансовые приложения, использующие наличные деньги, такие как цифровые платежные системы. Второе поколение блокчейн ознаменовался внедрением смарт-контрактов, которые обеспечивали функциональность, выходящую за рамки денежных операций, таких как акции, займы и интеллектуальная собственность. Блокчейн третьего поколения имел более широкую область применения, в которой были представлены решения на основе блокчейна для приложений , выходящих за рамки банковского дела и финансов, а также для предоставления услуг в области
здравоохранения, государственного управления, науки и т.д. Менее чем за десять лет технология блокчейн сменила уже три поколения и прокладывает путь к
переходу на четвертое поколение с искусственным интеллектом (ИИ) и цифровыми технологиями. О внезапной популярности и росте технологии можно
судить по тому факту, что в 2010 году Ласло Ханьеч заказал две пиццы Papa John's стоимостью примерно 30 долларов за 10 000 биткоинов. В 2018 году стоимость тех же биткоинов, по оценкам, превышала 80 миллионов долларов. Это свидетельствует об экспоненциальном росте технологий и
криптовалют.
Блокчейн обладает потенциалом для цифровой трансформации способов
совершения транзакций в мире, позволяя внедрять контракты в цифровом виде в
базы данных, которые являются прозрачными и обеспечивают защиту от несанкционированного доступа. Этот ключевой атрибут технологии блокчейн устраняет необходимость в привлечении третьих сторон и посредников, таких как банки, юристы и т.д. Хотя потенциал блокчейна огромен, есть некоторые проблемы, которые необходимо решить для его широкого внедрения.
Что такое Блокчейн и как он работает?
Блокчейн-сеть - это огромная база данных (цифровой реестр), состоящая из блоков данных, связанных в хронологическом порядке. Новые блоки данных могут быть добавлены в блокчейн после того, как они будут просмотрены и подтверждены майнером – выделенным компьютером в сети. Таким образом, блокчейн представляет собой историю наборов данных (например, финансовых транзакций).
Особенностью технологии блокчейн является ее децентрализация; блокчейн - это распределенная база данных. Это означает, что каждая сторона, участвующая в блокчейн-сети, сохраняет полную копию базы данных на своем компьютере. Такая практика делает практически невозможным последующее изменение данных в блокчейне – даже если манипулировать одной копией, тысячи правильных копий по-прежнему распространяются по всему миру. Таким образом, дефектные или обработанные наборы данных могут быть легко удалены из сети.
Порядок блоков данных также защищен контрольной суммой, так что порядок блоков не может быть изменен.
Криптография генерирует неизменяемую временную метку всякий раз, когда один блок ссылается на другой. Такой идентификационный номер, отсылающий один блок к другому, также называется “хэшем”. Эта запись является постоянной, и точность конфиденциальной информации может быть проверена. Для управления базами данных не требуется центрального органа, как в случае с традиционными базами данных.
Вот простое описание различных этапов работы блокчейна:
- Создание и проверка блока: Пользователь сети инициирует транзакцию, связанную с передачей данных, валюты или активов от одной стороны к другой. Эта информация передается в распределенную сеть узлов.Транзакция должна быть подтверждена каждым узлом в сети. Если все узлы достигают консенсуса и транзакция утверждается, вся информация о транзакции записывается в блок. Разные блокчейны используют разные механизмы согласования для проверки узлов. Например, сеть Bitcoin использует Proof-of-Work (PoW). Для использования этого механизма консенсуса майнеры решают сложные математические задачи для проверки транзакций.
- Добавление блока в цепочку: каждый блок в базе данных имеет ограниченный объем информации. Как только этот предел достигнут и блок проверен, генерируется новый блок.Новый блок использует уникальный код, так называемый “хэш”, для связи с предыдущим блоком. Блокчейн представляет собой связанную последовательность всех блоков, когда-либо добавленных в сеть, образующих цепочку.
- Обновление и завершение реестра: Обновленный блокчейн, который теперь содержит новый блок, распространяется по всем узлам сети. Каждый узел независимо обновляет свою версию реестра, которая включает новый блок.Транзакция завершена, и обновленный блокчейн отражает изменения. Каждый, у кого есть доступ к блокчейну, может просматривать данные в блоке, который защищен от несанкционированного доступа благодаря криптографическим принципам.
Преимущества технологии блокчейн
Децентрализация
Блокчейн-сеть распределяет данные по множеству различных компьютеров. Это снижает риск централизованного контроля и сбоев. В свою очередь, традиционные системы часто централизованы, что означает, что управление и принятие решений осуществляется одним субъектом или стороной.
Одним из примеров является управление цепочками поставок. Несколько компаний–участников – производители, поставщики, транспортные компании, дистрибьюторы и розничные торговцы - хотят или требуют доступа к данным от других участников цепочки. Тем не менее, никто не берет на себя управление обменом всеми этими данными. Блокчейн решает эту дилемму.
Прозрачность
Одним из ключевых атрибутов блокчейна является его уникальная прозрачность. В отличие от традиционных систем, где записи о транзакциях могут быть ограничены, блокчейн гарантирует, что каждый участник сети имеет доступ ко всем деталям транзакции.
Это означает, что любой участник может просматривать детали транзакций, такие как время, дата, участники и сумма транзакции. Это эффективно предотвращает мошеннические действия, обеспечивая прозрачность и укрепляя доверие между пользователями.
Неизменность
Определяющей особенностью блокчейна является его неизменяемость; как только данные записаны, они не могут быть изменены или удалены. Транзакция навсегда записывается в блок, когда она добавляется в блокчейн. Следуя криптографическим принципам, каждый блок затем "привязывается" к предыдущему, создавая непрерывную и неизменяемую цепочку записей.
Поскольку изменение данных в сети блокчейн является сложным и легко обнаруживаемым процессом, это обеспечивает безопасную и заслуживающую доверия платформу для проведения транзакций и хранения данных.
Доверие
Блокчейну присуще доверие. Несколько сторон могут взаимодействовать друг с другом и осуществлять транзакции там, где взаимное доверие отсутствует или не доказано.
Криптовалюты же являются ярким примером того, как блокчейн обеспечивает доверие между участниками. Транзакции осуществляются без ведома противоположной стороны и доверия к ней.
Безопасность
Блокчейн-сеть создает защищенный от несанкционированного доступа журнал транзакций, используя сквозное шифрование для предотвращения мошенничества и несанкционированных действий.
Децентрализованный характер блокчейна, при котором данные хранятся в широкой компьютерной сети, делает его практически невозможным для взлома, в отличие от традиционных систем, где одна копия данных хранится на центральном сервере.
Снижение затрат
Блокчейн способствует повышению операционной эффективности за счет устранения посредников, таких как банки. Это прямое взаимодействие между одноранговыми системами значительно снижает комиссии и ускоряет процессы, особенно при международных транзакциях.
По сравнению с традиционными системами, блокчейн обеспечивает более быстрые и экономически эффективные транзакции.
Доступность
Блокчейн известен своей глобальной доступностью. Он предлагает значительные преимущества регионам с ограниченным доступом к традиционным банковским услугам. Он также снижает барьеры для входа в традиционные финансовые системы, такие как проверка кредитоспособности и значительные первоначальные инвестиции.
Это открывает финансовые возможности, такие как инвестирование и сбережения, для гораздо более широкой аудитории, независимо от местоположения или экономического положения.
Проблемы и недостатки блокчейна
Технология блокчейн является инновационной и преобразующей. Но у нее есть свой набор недостатков и проблем. Вот некоторые из существенных проблем блокчейна:
Сложность
Блокчейн сложен, и его может быть трудно понять. Тем, у кого нет технических знаний, сложно ориентироваться в мире блокчейна и криптовалют. Таким образом, большая часть населения не решается погрузиться в эту область. Для многих эта сложность может стать препятствием для принятия и понимания.
Ограниченная масштабируемость
Блокчейн испытывает трудности с масштабируемостью, что приводит к снижению скорости транзакций в периоды интенсивного трафика. Это приводит к задержкам и более высоким транзакционным издержкам, когда сеть загружена. Масштабируемость зависит от платформы блокчейна.
Например, биткойн ограничен обработкой только семи транзакций в секунду. Но централизованные системы, такие как VISA, могут обрабатывать до 65 000 транзакций в секунду.
Необратимость транзакций
Из-за неизменяемости блокчейна, после того как транзакция зарегистрирована, ее невозможно изменить или отменить. Это означает, что если будет допущена ошибка, ее будет нелегко исправить.
Потребление энергии
Потребление энергии значительно выше для таких блокчейнов, как Bitcoin и Ethereum 1.0, которые используют механизм консенсуса Proof-of-Work. Это связано с огромной вычислительной мощностью, необходимой для майнинга и проверки транзакций.
Однако механизм согласования Proof-of-Stake требует меньше вычислительной мощности. Таким образом, Ethereum 2.0 перешел на Proof-of-Stake.
Ограниченная конфиденциальность
Могут возникнуть проблемы с конфиденциальностью, поскольку публичные блокчейны прозрачны и любой может видеть транзакции.
Ограниченная совместимость
Интероперабельность блокчейна относится к способности различных блокчейн-сетей взаимодействовать и обмениваться информацией.
Каждый блокчейн функционирует независимо со своими собственными правилами и протоколами. Это приводит к отсутствию естественного взаимодействия и обмена данными между различными блокчейнами. В результате это ограничивает их общий потенциал и практическую полезность.
Примеры использования блокчейна
Некоторые преимущества технологии блокчейн, такие как повышенная прозрачность, безопасность и неизменность, привели к ее применению в различных отраслях.
Поскольку технология развивается быстрыми темпами, а в 2024 году все еще изучаются новые возможности использования блокчейна, следующий список ни в коем случае не является исчерпывающим, но содержит общие примеры использования.
Финансы
Криптовалюты (такие как биткоин и Эфириум) являются наиболее известными вариантами использования блокчейна. Для управления криптовалютами используются так называемые крипто-кошельки.
Блокчейн также может облегчить международные денежные переводы более быстрым и дешевым способом по сравнению с традиционным банковским обслуживанием.
Децентрализованные финансы (DeFi) включает в себя финансовые услуги, такие как кредитование, заимствование средств и торговля, которые работают на блокчейне без необходимости в традиционных финансовых посредниках.
Здравоохранение
Блокчейн обеспечивает неизменяемую и безопасную запись данных о пациентах.
Кроме того, он может повысить доверие к фармацевтическим исследованиям и отслеживать лекарства от производства до доставки, чтобы предотвратить подделку продукции.
Управление цепочкой поставок
Блокчейн может записывать производство, отгрузку и получение продуктов от поставщика к клиенту и предоставлять неизменяемую историю.
Прозрачно отслеживая товары, блокчейн может помочь предотвратить попадание поддельных продуктов на рынок.
Недвижимость
Блокчейн может регистрировать права собственности и облегчать транзакции по владению землей и недвижимостью.
Проверка личности
Блокчейн может обеспечить надежное и неизменное хранение цифровых идентификационных данных в сети. Это может предотвратить мошенничество и кражу личных данных.
Проездные документы также могут быть проверены с помощью блокчейн-сети.
Юридическая индустрия
Смарт-контракты - это форма самоисполняющихся цифровых контрактов, используемых в блокчейне, которые автоматически обеспечивают соблюдение и исполнение соглашений. Условия и соглашения записываются в неизменяемый код, хранящийся в блокчейне.
Невзаимозаменяемые токены (NFT)
Уникальные цифровые объекты, такие как предметы искусства, коллекционирования или даже недвижимость, могут быть представлены на блокчейне в виде NFT.
Последние достижения в области технологии блокчейн
Интеграция блокчейна во многие доменные области все еще находится на зачаточной стадии, но быстро набирает популярность, поскольку она основана на уже существующих и хорошо изученных технологиях, таких как криптография, ведение записей, децентрализация и документация с временными метками
Механизмы консенсуса
Механизмы консенсуса являются основой функциональности блокчейна, аналогичной процессу принятия решений внутри группы. Они играют решающую роль в поддержании безопасности и целостности сети. Узлы, или компьютеры в сети, проверяют транзакции, добавляя эти транзакции в блокчейн, управляемый определенными правилами.
Точно так же, как при групповом принятии решения, когда все должны прийти к согласию, прежде чем двигаться дальше, механизм консенсуса гарантирует согласие всех участников блокчейн-сети относительно текущего состояния реестра до добавления новых транзакций.
Эти механизмы играют важную роль в предотвращении мошенничества и обеспечении достоверности каждой транзакции. Без механизмов консенсуса не было бы надежного способа согласования состояния бухгалтерской книги, что привело бы к потенциальному мошенничеству и ошибкам.
Кроме того, они предотвращают двойные траты. Один и тот же цифровой токен можно было бы потратить дважды в цифровых транзакциях, если бы не эти механизмы. Добавление блоков в блокчейн зависит от определенных правил, таких как Proof-of-Work или Proof-of-Stake.
Proof-of-Work (PoW):
PoW работает по принципу решения, которое очень сложно идентифицировать, но легко проверить. Большинство реализаций блокчейна используют этот PoW в качестве механизма консенсуса. Здесь новые узлы создаются путем решения сложной задачи. Этот процесс требует больших вычислительных ресурсов и требует больших вычислительных возможностей.
Proof-of-Stake (PoS):
Механизм Proof-of-Stake на основе консенсуса требует, чтобы валидаторы стэйкали свои ETH. Валидаторы играют ту же роль, что и майнеры в механизме PoW. Для блокчейна ethereum минимальная сумма ставки, необходимая для того, чтобы стать валидатором, составляет 32 ETH. Согласно консенсусу PoS, валидаторы выбираются случайным образом для создания блоков и проверки блоков, созданных другими пользователями. В обоих случаях валидаторы получают вознаграждение.
Делегированный PoS:
Алгоритм согласования DPoS был разработан Дэниелом Ларимером (Daniel Larimer). Он обеспечивает модификацию обычного консенсуса PoS, поддерживая систему выборов для выбора узлов, называемых свидетелями, для проверки блоков.
Практическая Византийская отказоустойчивость (pBFT):
Алгоритм (pBFT) был представлен Мигелем Кастро (Miguel Castro) и Барбарой Лисков (Barbara Liskov). Согласованный алгоритм pBFT используется в Hyperledger Fabric и Zilliqa. pBFT работает путем репликации практического
устройства Byzantine, который допускает вредоносные узлы (ошибки Byzantine). pBFT был разработан для эффективной работы в асинхронных (без верхней границы времени получения ответа на запрос) системах. Он оптимизирован для минимальных затрат времени.
Proof-of-Activity (PoA):
PoA сочетает в себе согласованные алгоритмы PoW и PoS. Процесс первоначального анализа данных такой же, как и при использовании PoW. Однако, как только блок добыт, консенсус PoS используется для выбора случайной группы валидаторов, которые затем проверяют только что добытый блок.
Proof-of-Burn (PoB):
PoB предоставляет энергоэффективную альтернативу алгоритмам консенсуса PoW. В соответствии с консенсусом PoW мощность майнинга майнера определяется количеством сжигаемых монет. Чем больше сгорает монета, тем выше мощность майнинга майнера.
Proof-of-Capacity (PoC):
На основе консенсуса PoC определяются права на майнинг с использованием выделенного пространства на жестком диске устройств для майнинга. Возможные решения заранее сохраняются на жестком диске устройств для майнинга. Алгоритм использует двухэтапный процесс построения графика и интеллектуального анализа данных.
Proof of Elapsed Time (PoET):
Консенсус PoET основан на концепции честной лотерейной системы. Для принятия решения о правах на майнинг используется случайно сгенерированное время ожидания. Каждый участвующий узел в системе PoET ожидает случайное количество времени. Узел, который завершит время ожидания первым, сможет зафиксировать новый блок в блокчейне.
Категории консенсусных алгоритмов
Преимущества и недостатки популярных консенсусных алгоритмов
Децентрализованный распределенный характер
Архитектура блокчейна зависит от двух основных аспектов. Во-первых, владение инфраструктурой данных, определяющее, является ли блокчейн публичным или частным, и, во-вторых, разрешения, связанные с операциями присоединения, чтения, записи и фиксации. На основе этих аспектов разрабатывается архитектура блокчейна и решения для пользователей. Открытые и закрытые блокчейны основаны на разрешениях на запись, в то время как публичные и частные блокчейны основаны на разрешениях на чтение.
Разница публичных и приватных блокчейнов
Таксономия и поколения блокчейнов
Блокчейн можно условно разделить на три типа, а именно: публичный, федеративный или консорциумный и частный. Эта классификация основана на различных функциях и сервисах, предоставляемых блокчейном
Развитие технологии блокчейн неизбежно, и в результате у нас уже есть три поколения, а четвертое стучится в наши двери. Первое поколение блокчейнов началось с появления биткоина и больше ориентировано на финансовую сферу, а именно на криптовалюты. Второе и третье поколения имеют более широкую область применения, фокусируясь на промышленном применении технологии блокчейн. Четвертое поколение технологии блокчейн может объединить новые технологии, такие как искусственный интеллект, для создания платформы блокчейн как услуги (uBaaS).
Блокчейн против традиционных баз данных
В этом разделе представлено сравнение между традиционными базами данных и механизмами хранения на основе блокчейна
Этапы разработки блокчейна
Разработка блокчейна похожа на любой другой процесс разработки программного обеспечения. Это может показаться сложным, но разбивка на этапы делает его более доступным. Вот упрощенный обзор процесса:
1. Планирование
Чтобы разработать блокчейн, вам необходимо определить конкретные потребности и цели вашего блокчейн-проекта. Проведите тщательное исследование аналогичных приложений, чтобы спланировать свою стратегию.
2. Выберите правильную платформу
Выбор правильной платформы для разработки блокчейна или приложений на его основе имеет важное значение. Разумно выбирать платформу, основываясь на таких факторах, как масштабируемость и поддержка сообщества. Этот выбор влияет на возможности проекта и подход к разработке.
3. Проектирование
Разработайте архитектуру блокчейна (публичную, частную, гибридную или консорциумную) и все необходимые смарт-контракты. Убедитесь, что пользовательский интерфейс интуитивно понятен и доступен.
4. Разработка
Это основной процесс разработки блокчейна. На этом этапе создайте ядро блокчейна и разработайте необходимые API. Также, если этого требует ваш проект, интегрируйте смарт-контракты на данном этапе.
5. Тестирование
После разработки продукта проведите всестороннее тестирование. Это гарантирует надежность и безопасность блокчейна перед запуском.
6. Запуск
Рекомендуется начать с пилотного выпуска для ограниченной аудитории. Затем внимательно следите за производительностью вашего блокчейн-приложения и совершенствуйте его на основе отзывов пользователей.
7. Техническое обслуживание и обновления
Постоянно поддерживайте и обновляйте блокчейн, чтобы внедрять новые технологии и меры безопасности, обеспечивая долгосрочную функциональность.
Соображения безопасности
Важно использовать надежное шифрование, регулярно проводить аудит безопасности и применять строгий контроль доступа. Эти методы защищают блокчейн от уязвимостей.
Рекомендации
Лучше следовать отраслевым стандартам и практикам при разработке вашей блокчейн-платформы. Будьте в курсе последних тенденций, активно взаимодействуйте с блокчейн-сообществом, соблюдайте правовые нормы и ведите подробную документацию для прозрачности и использования в будущем.
Языки программирования и инструменты
Существуют различные языки программирования и инструменты для разработки блокчейн-приложений, таких как приложения и смарт-контракты. Разработчикам необходимо выбрать наилучший вариант после тщательного изучения своих проектов.
Ниже приведены некоторые из распространенных языков и инструментов:
Solidity
Это язык, похожий на JavaScript, который в основном используется для разработки смарт-контрактов на платформе Ethereum. Это самый популярный вариант для разработки dApps.
Vyper
Vyper похож на Python и фокусируется на безопасности и простоте. Это еще один вариант для разработки смарт-контрактов Ethereum.
Rust
Rust известен своей безопасностью и производительностью. Он используется в таких блокчейнах, как Solana и Polkadot. Известно, что этот язык относительно сложен для изучения.
JavaScript
JavaScript адаптирован для разработки блокчейна, особенно для создания смарт-контрактов на таких платформах, как Hyperledger Fabric. Однако он не используется для разработки ядра блокчейна из-за слабой проверки типов.
Yul
Yul, промежуточный язык, используется в Solidity для встроенной сборки или как самостоятельный язык для конкретных случаев.
Truffle
Truffle служит как и в виде среды разработки Ethereum, так и платформы тестирования. Он упрощает процесс написания, тестирования и развертывания смарт-контрактов.
Remix
Remix - это интегрированная среда разработки, работающая в веб-браузере. Она специально разработана для разработки смарт-контрактов Ethereum.
Заключение и будущая сфера применения
Внедрение технологии блокчейн значительно изменило способ обработки транзакций. Ключевые характеристики технологии блокчейн, такие как децентрализация, неизменность, прозрачность и т.д., предоставляют огромные возможности для повышения безопасности, надежности и конфиденциальности транзакций и, таким образом, повышения доверия среди пользователей.
В этой работе я представил вам всесторонний обзор технологии блокчейн, ее применений и основных проблем, связанных с ее широким внедрением. Хотя технология блокчейн считается относительно новой технологией, исторические свидетельства показывают, что она построена на хорошо понятых и широко принятых криптографических принципах. Технология блокчейн обладает значительным потенциалом для того, чтобы принести пользу различным заинтересованным сторонам, таким как предприятия, правительства, организации частного сектора и потребители. Несмотря на то, что блокчейн находится на ранней стадии развития, сегодня он демонстрирует беспрецедентный рост и популярность во многих областях. Однако у этой популярности есть свои плюсы и минусы. С одной стороны, технология обеспечивает прозрачность и неизменность транзакций с помощью различных криптографических принципов, в то время как с другой стороны, такие проблемы, как отсутствие правил, регулирующих использование технологии, проблемы масштабируемости, требования к инфраструктуре и т.д., приводят к нерешительности в отношении использования решений на основе блокчейна. Детальное изучение различных проблем, связанных с этой технологией, показывает, что массовое внедрение блокчейна все еще далеко от реальности.
Хотя исследователи придерживаются разных точек зрения на ажиотаж вокруг блокчейна, его популярность постоянно растет. В будущем технология будет развиваться благодаря инновациям в области улучшения масштабируемости и минимизации энергопотребления. Более того, в будущих поколениях блокчейн-технологий он может быть объединен с другими новыми технологиями, такими как глубокое обучение и искусственный интеллект, для создания интеллектуальных данных с помощью смарт-контрактов, консенсуса и т.д (что уже стремительно развивается). Кроме того, существует несколько систем на базе DAG, которые являются платными и в определенной степени решают проблемы масштабируемости, однако не устраняют их полностью.
Таким образом, можно сделать вывод, что, хотя блокчейн обещает исключительные преимущества для многих областей применения, его следует тщательно выбирать, учитывая требования приложений и связанные с этим затраты на внедрение. Технология блокчейн обладает огромным потенциалом для обеспечения безопасности транзакций. В будущем технология блокчейн может быть изучена для обеспечения многофакторной аутентификации, что обеспечит дополнительный уровень безопасности по сравнению с традиционными подходами. Кроме того, можно изучить подходы MFA, основанные на доказательствах с нулевым разглашением, для обеспечения защиты конфиденциальности и эффективных механизмов безопасности. Еще одной областью, которая может представлять интерес для исследователей, является поведенческая биометрия, с помощью которой можно извлекать явные поведенческие паттерны и использовать их для аутентификации пользователей системы.