Блокчейн
-
Blockchain (в переводе с английского цепочка блоков). Блокчейн - это непрерывная последовательность блоков, каждый из которых соединен с предыдущим и содержит определенную информацию.
В каждом последующем блоке хранятся сведения о новых транзакциях, которых нет в предыдущем блоке. Период времени между созданием блоков составляет около 10 минут. Процесс создания блока заключается в вычислении его криптографического оттиска или хеша, соответствующего заданным требованиям. Массивы данных соединяются между собой посредством математических алгоритмов. Таким образом, работа блокчейн технологии напоминает строительство бесконечной стены из отдельных кирпичей.
Блокчейн, что это такое простыми словами
Рассмотрим более подробно процесс создания новых блоков. Генерирование массивов данных производится с помощью компьютеров, объединенных в общую сеть. Каждый пользователь, имеющий выход в Интернет, может стать частью криптосообщества и приступить к майнингу (то есть получению блоков). Создание блока заключается в расчете выходных данных заголовка блока (хеша). С помощью математических алгоритмов находится особый код, который и дает возможность записать хеш. На этом этапе рождается новый блок, который в дальнейшем невозможно каким либо образом модифицировать или уничтожить. Все участники данного процесса могут ознакомиться с находящимися в блоках данными.
Криптографический хеш представляет собой очень большое число, благодаря чему блокчейн обладает надежностью и высокой взломостойкостью. Система устроена так, что невозможно прочитать исходные данные, даже имея ключ.
Еще одним важнейшим свойством хеша является уникальность. То есть одному набору данных соответствует один уникальный хеш. Если исходные данные изменяются, то результирующий хеш также будет другим. Сведения, находящиеся в блоках, может прочитать любой участник сети. Информацию можно проверить, убедившись в ее достоверности.
Работу системы можно наглядно проиллюстрировать на примере сервиса по отправке электронных писем. Пусть каждое электронное письмо будет эквивалентно одному биткойну. Вы может отправлять монеты любому адресату, при этом ваш текущий счет будет уменьшаться. При получении от кого либо монет счет будет расти. Все ваши сообщения защищены от несанкционированного доступа, а информация от транзакции записывается таким образом, что ее впоследствии нельзя изменить или стереть.
Но в отличие от электронной почты, где все письма хранятся на серверах, блокчейн не привязан к какому либо объекту. Он полностью децентрализован, не привязан к какому либо месту географически или юридически. Поэтому никто не может остановить работу блокчейна, заблокировать или перенаправлять транзакции.
Так же в процессе передачи биткойнов между абонентами нет необходимости в третьей стороне. Например, если вы оплачиваете какой либо банковский счет, то ваши средства приходят к получателю не напрямую, а через банк, который берет за это определенную комиссию. Блокчейн убирает посредников и позволяет передавать биткойны напрямую.
В наши дни технология блокчейна используется не только в обращении цифровых валют. Она вышла на новый уровень и внедряется во все большее количество приложений. Еще несколько лет назад блокчейн использовался только для хранения информации, а сегодня с его помощью создаются эффективные инструменты учета и обработки информации.
Алгоритмы
В основе любой криптовалюты лежит алгоритм хеширования. Первая хеш-функция была разработана в 2002 году Агентством национальной безопасности США и получила название SHA-2. В 2008 году усовершенствованный алгоритм SHA-256 стал основой самой первой цифровой валюты. Хеширование представляет собой процесс преобразования массива данных любой длины в итоговую строку заданного размера. Наиболее широкое распространение хеш-функции получили в области защиты информации. Блокчейн также использует данную технологию.
Для завершения формирования блока следует перебрать множество вариантов и выбрать верный хеш. Может показаться, что результирующая строка содержит хаотический набор символов, но это не так. В действительности каждая буква или цифра появляется не случайно, а является следствием обработки исходных данных. Если хотя бы один бит будет изменен, то результирующий хеш примет совсем иной вид.
Рассмотрим процесс хеширования более подробно на примере алгоритма SHA-256. Исходные данные делятся на блоки, которые впоследствии разбиваются на 16 частей. Затем блоки циклически обрабатываются с помощью алгоритма 64 или 80 раз. В результате для каждого блока получается определенная сумма. Результирующая хеш-функция получается путем сложения значений, полученных для каждого блока.
Скорость вычисления хеша напрямую зависит от производительности оборудования. Современные компьютеры позволяют обрабатывать несколько миллиардов функций в секунду. Существуют и специализированные устройства, предназначенные для вычисления хешей, так называемые ASIC. Их производительность в десятки раз превышает возможности обычного компьютера.
Чтобы не допустить возможных злоупотреблений со стороны владельцев ASIC, был разработан алгоритм Scrypt-хеширования. Он не имеет принципиальных отличий от традиционных алгоритмов, но для эффективной работы требуется большой объем оперативной памяти. В процессе выполнения операций в ОЗУ хранится более 1000 промежуточных результатов. В конечном итоге они комбинируются в искомый хеш.
Различные форки цифровых валют часто используют так называемые алгоритмы группы Х. Их характерной особенностью является тот факт, что для майнинга не нужно использовать специальное дорогостоящее оборудование, достаточно обычной видеокарты.
Еще одним популярным алгоритмом является Blake. Первый его вариант разделяет блоки на части длиной 32 бита и вычисляет хеш длиной 256 бит. Второй вариант делит блоки на 64-битные части и выдает 512 битный хеш. Это только малая часть алгоритмов, применяемых в криптовалютах. С каждым годом их количество только увеличивается.
Создатели новых алгоритмов руководствуются благими намерениями, но это иногда приводит к парадоксальным результатам:
- Противодействие эффективному использования Асиков.
На самом деле специализированное оборудование выпускается под любые алгоритмы. Существуют ASIC под самые разные виды алгоритмов. - Децентрализация майнинга.
Теоретически майнить может любой владелец компьютера. Но, как показывает практика, значительных результатов можно достичь только используя специализированное оборудование. Существенная часть криптовалюты майнится на централизованных фермах или пулах.. - Применение обычного оборудования.
Поскольку майниг подразумевает использование персональных компьютеров под управлением наиболее распространенных операционных систем, то имеет место уязвимость для вредоносных программ. - Большинство новых алгоритмов не проходят серьезного тестирования. Никто не может быть уверенным в отсутствии у них уязвимостей.
Смарт контракт
Смарт-контракт представляет собой особым видом оформленное условие, при соблюдении которого участники могут обменяться какими либо активами. В качестве объекта обмена могут выступать деньги, движимое или недвижимое имущество и другие материальные ценности.
Для успешного функционирования таких контрактов необходимо наличие децентрализованной сети с равноправными участниками. Наиболее часто смарт-контракты применяются для обмена криптовалютой. Основным преимуществом при этом является полное отсутствие посредников и, как следствие, комиссионных сборов. В процессе совершения сделки проверка условий производится самими участниками.
Можно выделить три составляющих смарт-контракта:
- Участники договора, которые с помощью электронной подписи подтверждают свои намерения.
- Предмет договора, к которому программа должна иметь постоянный доступ. В качестве предмета договора чаще всего выступает цифровая валюта, но это может быть и любой другой предмет.
- Условия договора, представляющие собой однозначно и недвусмысленно прописанный математический алгоритм.
Смарт-контракт, по словам основателя одной из криптовалют, работает так: активы для обмена преобразуются с помощью алгоритмов в машинный код. Затем программа начинает отслеживать условия контракта. После выполнения условий выдается разрешение на перемещение активов. Таким образом покупатель получает товар, а продавец - условленную сумму. Поскольку смарт-контракт находится в распределенном реестре, то ни одна сторона не может изменить условия договора в свою пользу.
Применение смарт-контрактов не ограничивается обменом криптовалют. Сегодня они применяются в страховании, торговле, оплате налогов и даже в азартных играх.
Можно выделить следующие преимущества смарт-контрактов:
- Безопасность. Благодаря блокчейн технологии контракт хранится в распределенном реестре и его невозможно изменить в процессе сделки.
- Независимость. Поскольку сделка совершается напрямую, то нет необходимости прибегать к услугам посредников.
- Экономия финансов. Отсутствие посредников освобождает от необходимости оплачивать их услуги.
- Экономия времени. После того, как условия договора считаются выполненными, стороны сразу же обмениваются активами.
Но у смарт-контрактов есть и свои недостатки:
- Высокая квалификация участников. Каждая сторона должна четко представлять какие риски может нести небрежно составленный договор. Поэтому в контракте необходимо прописывать все возможные варианты развития событий.
- Инерционность пользователей. Подавляющее большинство людей слабо понимают, что представляет собой смарт-контракт. Поэтому они отдают предпочтение традиционным формам договоров.
- Неопределенный правовой статус. Наиболее часто в качестве предмета договора выступает криптовалюта. На сегодняшний день государство еще не выработало однозначного отношения к цифровым валютам, поэтому они не могут рассматриваться как финансовые инструменты.
Смарт-контракты интегрированы в различные платформы, в основе которых лежит технология блокчейна.
Самые популярные из них следующие:
Bitcoin - наиболее распространенная цифровая валюта. Она хорошо оптимизирована для транзакций, но вследствие ее структуры смарт-контракты не могут реализовать весь свой функционал.
Side Chains - это блокчейн, который является аналогичным биткойну. В данной технологии смарт-контракты имеют больше возможностей, чем в предыдущем случае.NXT - платформа, которая в силу своих особенностей ограничивает количество контрактов. Участники могут пользоваться готовыми шаблонами, которые невозможно модифицировать в соответствии со своими условиями.
Ethereum - наиболее оптимизированная под смарт-контракты онлайн платформа. Пользователи могут составлять любые условия договора, но за эту возможность необходимо заплатить цифровой валютой Ethereum.
- Противодействие эффективному использования Асиков.