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

Проще говоря, что такое блокчейн?

Блокчейн - это децентрализованный распределенный реестр транзакций (блоков), каждая из которых содержит ссылку на предыдущий блок. Следовательно, название «цепочка блоков» относится к связыванию или объединению блоков в цепочку.

Централизованная экономика транзакций

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

Централизованный Интернет

Наша текущая модель Интернета также является централизованной системой. Данные хранятся на веб-серверах. Когда мы хотим получить данные в Интернете, например просмотреть веб-сайт или загрузить файл, наш веб-браузер отправляет запрос на веб-сервер, на котором размещены эти данные, и веб-сервер отвечает на этот запрос, предоставляя запрошенные данные. Централизованный Интернет не является отказоустойчивым: если сервер выходит из строя, это влияет на всю систему.

Что такое блокчейн комплексно?

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

Блокчейн с точки зрения программиста

Следующие ниже фрагменты кода основаны на этом учебнике YouTube от YouTuber Ivan on Tech о том, как кодировать простой блокчейн на Java.

Объект Block будет хранить три поля: хеш-значение предыдущего блока, строковый массив, содержащий список транзакций, и собственное хеш-значение. Новый блок создается путем передачи хеш-значения предыдущего блока и массива транзакций конструктору блока. Хеш-значение блока генерируется путем передачи предыдущего хеш-значения и хеш-кода массива транзакций в функцию хеш-кода. Блокчейн неизменен в том смысле, что после создания его поля инкапсулируются в блок и могут быть доступны только через методы получения.

Блокчейн просто представлен как ArrayList блоков. Первый блок в цепочке блоков называется генезис-блоком. Чтобы построить генезис-блок, мы просто передаем 0 в качестве предыдущего хеш-значения вместе с соответствующим массивом транзакций. После построения блока генезиса мы добавляем его в блокчейн. Затем создается второй блок с использованием хэш-значения блока генезиса и массива транзакций.

Запуск этой программы дает следующий результат:

Идея в том, что транзакцию нельзя изменить после того, как она была создана. Изменение даже всего одного символа, например изменение транзакции генезиса с 10 монет на 100 монет, приведет к совершенно другому результату функции хеш-кода.

Децентрализация с помощью блокчейна

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

Вовлекают крупные компании

Технология блокчейн может решить проблемы в транзакционной экономике. Поэтому неудивительно, что блокчейн привлек внимание крупных банков и компаний. Microsoft - одна из многих компаний, участвующих в Decentralized Identity Foundation (DIF). Миссия проекта - решить проблемы, связанные с онлайн-идентификацией, с помощью технологии блокчейн. Это лишь один из многих примеров. В настоящее время многие компании, включая IBM и Microsoft, ищут разработчиков блокчейнов. Прочтите эту статью, чтобы увидеть список других компаний, участвующих в технологии блокчейн.

Начать обучение

Посетите https://blockchaintrainingalliance.com/, чтобы начать свое образование в области блокчейна.