Что такое криптовалюты и как они работают.
Биткоины давно перестали быть технологической или экономической новинкой, такого ажиотажа вокруг них, как в 2013 году, уже нет. Сегодня заголовки про криптовалюты почти не "Цепляют", майнер как профессия не вызывает большого удивления, а курс около 600 долларов за пару строчек зашифрованного текста удивит лишь очень далекого от интернета человека. Но, перестав быть сенсацией, биткоины никуда не исчезли - а значит, есть смысл разобраться в том, как они работают.
Ключевое отличие традиционных валют от их криптоаналогов сводится к тому, кто и каким образом контролирует их выпуск и оборот. В первом случае это национальный или наднациональный центробанк, который печатает денежные знаки, снабженные несколькими уровнями защиты (как правило физической. Такую защиту можно преодолеть, пусть это и требует значительных инвестиций, а также преследуется по закону. Во втором случае выпуск криптовалюты и контроль за ее оборотом определяется самим устройством системы, то есть математическим аппаратом, лежащим в ее основе.
Несмотря на то что в свое время биткоин вызвал большой ажиотаж во всем мире, он был далеко не первой попыткой создания криптовалютных систем. Тем не менее, автор системы биткоинов, известный под псевдонимом Сатоси накамото (англ. Satoshi Nakamoto), настолько удачно скомбинировал результаты предыдущих попыток, что ему, без сомнений, удалось создать первую успешную криптовалюту. В ее основе лежали два элемента - блокчейн (англ. Block Chain - "Цепочка Блоков"), или зашифрованная распределенная база данных, в которую записаны все транзакции с момента запуска, и "майнинг" - процесс решения вычислительных задач для проверки достоверности транзакций и контроля выпуска новых денежных единиц. Блокчейн был предложен в 1991 году в качестве механизма для контроля версий и времени создания цифровых документов. А решение хэш - задач, лежащих в основе майнинга, ярче всего проявилось в проекте Hashcash. Он разрабатывался для борьбы со спамом в электронной почте: для того чтобы отправить письмо, компьютеру необходимо было решить простую вычислительную задачу. У одного пользователя это занимало несколько секунд, но для спамера, рассылающего миллионы сообщений, это становилось серьезной преградой. Тем не менее, Hashcash по ряду причин не прижился и уступил более эффективной системе фильтров.
В учебнике принстонского университета по истории и теории биткоинов (есть и такой) приводится список платежных систем, которые в той или иной степени можно считать предшественниками самой известной криптовалюты. В этом списке более 80 компаний, из которых, как отмечают авторы, только Paypal добился широкой известности, и то потому, что отказался от создания криптовалюты в пользу другой деятельности. Ближайшими предшественниками биткоинов были системы b - Money (1998) и Bitgold (2005. Их создатели уже реализовали идеи и зашифрованного "Гроссбуха", в котором хранятся все транзакции, и "майнинга" - решения вычислительных задач для получения виртуальной валюты. Однако в обеих системах отсутствовала синхронизация "Гроссбухов" между пользователями, а также не хватало контроля за "печатью" денег. Система биткоинов, описанная в 2008-м и официально стартовавшая в 2009 году, успешно справилась с обеими задачами, благодаря чему завоевала популярность среди энтузиастов. Тем не менее, долгое время биткоины не имели широкого признания, а их стоимость в традиционных валютных эквивалентах была минимальна: за 10 тысяч биткоинов один из первых пользователей смог купить всего две пиццы. Но с расширением сети пользователей увеличилась и стоимость биткоинов (англ. BTC), испытавшая настоящий бум осенью 2013 года, когда она превысила 1100 долларов США. На момент публикации статьи один биткоин стоил 603, 67 доллара.
Какие ключевые компоненты в систему биткоина входят.
Их несколько, причем по отдельности они так или иначе существовали до появления биткоинов. Именно сочетание этих компонентов в рамках одной системы привело к созданию успешно работающей криптовалюты и стало образцом для многих клонов или похожих проектов.
Хэш - функция.
Биткоин и его аналоги не просто так называются "Криптовалютами" - это слово указывает на наличие зашифрованных данных, содержащихся в системе. В основе шифра лежит особая функция, которая для любых входных данных создает уникальный хэш (англ. Hash) - набор фиксированного числа символов (обычно 256 или 512 бит. Хэш - функции необходимо обладать рядом свойств. Во-первых, она не должна приводить к "Столкновениям" (англ. Collisions), то есть для двух разных наборов исходных данных должны получаться два разных хэша. В случае если задуматься, это условие выглядит невыполнимым, так как входные данные могут быть любого размера, а хэш всегда ограничен по длине. Однако на практике вероятность совпадения двух хэшей для не совпадающих исходных данных необозримо мала, и подделать хэш простым перебором в обозримое время (сопоставимое с временем жизни солнца, например) просто невозможно. Во-вторых, хэш - функция должна быть устроена так, чтобы, владея одним лишь хэшем исходного сообщения, его невозможно было расшифровать. Иными словами, обратная расшифровка хэша должна быть невозможна, система разрешает лишь подтвердить соответствие сообщения его хэшу.
Блокчейн.
В основе системы биткоина лежит блокчейн - особый вид базы данных, в которой хранятся все операции, совершенные пользователями. Строго говоря, сами биткоины - это просто записи в базе данных, никакого другого физического или виртуального эквивалента у этой валюты нет. Блокчейн отличается от других типов баз данных тем, что в нем каждый элемент (блок) содержит не только информацию о нескольких транзакциях, но и указатель на предыдущий блок. Это означает, что можно хранить только последний блок цепочки и при этом всегда иметь возможность убедиться, что в предыдущие блоки никто не вносил изменений. Для этого надо скачать предпоследний блок и посчитать от него хэш: если он совпадет с указателем в последнем блоке, значит изменений не было. Теоретически эту операцию можно повторять вплоть до первого блока, однако весь блокчейн "Весит" несколько десятков гигабайт, поэтому передавать его целиком неразумно.
Пользователи криптовалютной системы обмениваются между собой условными денежными единицами, например биткоинами, существующими только в виде транзакций. Все они периодически записываются в блоки и добавляются в блокчейн, который по определению хранит все операции, начиная с самой первой, и определяет текущие активы всех пользователей (хотя списка активов как такового не существует, они лишь вычисляются на основе транзакций. Сам же блокчейн не хранится на условно взятом сервере организаторов за семью замками. Вместо этого, как только последний блок обновился, блокчейн распространяют программы на компьютерах пользователей так же, как мемы расходятся по социальной сети или фильмы - по торрентам. При этом любой пользователь может проверить целостность блокчейна и достоверность всех совершенных операций.
Цифровая подпись.
Мы привыкли подписывать документы, удостоверяя таким образом свое согласие с их содержанием. Однако как быть с подписями на просторах интернета? Лишь в том случае, если ваша подпись это набор символов (текст или картинка), то ее легко можно скопировать, то есть украсть. Настоящая цифровая подпись устроена сложнее простого росчерка пера и тоже активно пользуется хэш - функциями. Для того чтобы завизировать электронный документ, пользователю необходимо иметь два ключа - закрытый и открытый. Открытым он делится с адресатом своего сообщения, а закрытый хранит как зеница ока и использует для создания самой подписи. Последняя может, например, быть просто хэшем от данных вида "Документ" "закрытый ключ". По хешу нельзя восстановить закрытый ключ, но этого и не требуется. Достаточно, чтобы подпись была узнаваемой, то есть, имея открытый ключ, исходное сообщение и цифровую подпись, можно было сказать, что эта подпись действительно принадлежит владельцу закрытого ключа.
Все становится еще проще, когда мы узнаем, что в сети биткоин нет как таковых аккаунтов. Пользователем этой криптовалюты считается владелец закрытого ключа. Любая транзакция выглядит следующим образом: "открытый ключ а отправляет открытому ключу б N биткоинов. Подписано: открытый ключ а". Теперь любой другой пользователь может проверить, что это сообщение действительно зашифровано не кем иным, как владельцем закрытого ключа а значит, подпись достоверна. В большинстве криптовалют соблюдается определенная анонимность, основанная на том, что обмен биткоинами идет только между ключами (своего рода "Электронными Кошельками"), причем у одного человека может быть любое число таких ключей, он даже может создавать новый кошелек для каждой новой транзакции. Отследить движение средств между кошельками очень легко - вся информация о транзакциях открыта. Но связать "Кошелек" с его реальным владельцем, пользуясь только информацией из системы биткоин, как правило, невозможно.
Майнинг.
Так как у биткоинов нет центробанка, который отвечает за достоверность транзакций, их надо проверять, перед тем как вносить в блокчейн. Пользователь, которому выпала честь составить "Официальный" вариант нового блока, теоретически может повлиять на происходящие транзакции. Однако если он решит заняться черной бухгалтерией, любая проверка на следующем этапе с огромной вероятностью это выявит подлог. Поэтому резонов заниматься махинациями у "Временного Центробанка" нет.
Создатель биткоина нашел решение сразу двух проблем: мотивации проверяющего и выпуска новых денежных единиц. Тот, кому выпал шанс добавить в цепочку новый блок, получает в качестве бонуса право на уникальную транзакцию: создание новых биткоинов и присвоение их своему ключу, причем размер этой награды фиксирован - например, сейчас он составляет 12, 5 биткоина. Чтобы стать их счастливым обладателем, необходимо раньше других решить особую задачу (англ. Puzzle) и предъявить "Доказательство (Проделанной) Работы" (англ. Proof - of - Work: необходимо найти такое число, которое в сочетании с хэшем предыдущего блока и списком транзакций нынешнего блока даст хэш, попадающий в заранее оговоренный интервал. Сложность этой задачи обусловлена тем, что она решается только перебором, поэтому номинально у всех "Майнеров" (англ. Miner - "Шахтер") есть равные шансы найти ответ первым.
В реальности награда оказывается велика, так как вдобавок к 12, 5 биткоина пользователь получает и комиссию, предусмотренную транзакциями, попавшими в новый блок. По этой причине пользователи готовы инвестировать большие средства в создание "Ферм", то есть специальных компьютеров, решающих хэш - задачи. Получается, что шансы пользователя пропорциональны мощности его фермы, а это в перспективе может привести к монополизации и обвалу всей системы. Кроме того, растет и суммарная мощность сети. По этим причинам сложность задач автоматически адаптируется каждые 2016 блоков: для этого уменьшается интервал, в который должен попасть хэш. Этот порог рассчитывается так, чтобы в среднем новый блок создавался каждые 10 минут.
Проблема инфляции решается так же в рамках майнинга, так как он представляет собой единственный способ "Печати" новых денежных знаков. Каждые 210 тысяч блоков награда уменьшается в два раза, поэтому общее число биткоинов в системе строго ограничено. По текущим оценкам, награда станет минимальной к 2030 году, а всего будет "Напечатан" 21 миллион биткоинов. Эта сумма не будет увеличиваться, но может уменьшаться: например, в скриптовом языке системы биткоин есть возможность уничтожить свои деньги. Это может оказаться полезным, если пользователь захочет сохранить какую-то информацию в блокчейне, так как она (вместе с временной отметкой) сохранится до тех пор, пока работает биткоин. Другой способ уменьшить объем денежных единиц - потерять или уничтожить закрытый ключ. В этом случае пользователь полностью доступ к биткоинам теряет. В такую ситуацию, например, попал британец Джеймс хоувелс, который выкинул ноутбук, на котором хранился закрытый ключ, потеряв таким образом 7500 биткоинов. На ноябрь 2013 года их эквивалент составлял 7, 5 миллионов долларов.
Как получить и где потратить биткоины.
Из сказанного выше следует, что лучший способ получить биткоины - это заняться их майнингом. Однако на сегодняшний день этот способ оказывается не таким уж и выгодным, особенно для новичков: награда за новый блок снижена вчетверо, а сложность задачи, наоборот, многократно возросла. Поскольку вероятность намайнить блок пропорциональна доле ваших вычислительных мощностей в общей сети, то, чтобы рассчитывать на какую-то, пусть даже минимальную, окупаемость, вам придется серьезно вложиться в оборудование, так как за годы существования биткоина количество и производительность "Ферм" по всему миру значительно превысили возможности одного, даже очень хорошего домашнего компьютера.
Однако помимо прямого майнинга есть и альтернативы, например облачный майнинг. В этом случае сервисы дают в аренду свое оборудование всем желающим попробовать себя в роли майнеров. Такие площадки, как правило, владеют разнообразными конфигурациями "Ферм", оптимизированных под разные криптовалюты (на ваш выбор. Чем больше вы арендуете мощностей, тем выше шансы намайнить блок, тем быстрее ваши вложения могут окупиться. Серьезным преимуществом облачных сервисов является сама возможность попробовать и бросить, если не понравится, а также отсутствие лишнего шума и источника тепла в вашем доме - все "Фермы" так или иначе "славятся" этим. Например, популярным сервисом облачного майнинга является спонсор этого материала, проект Hashflare.
Наконец, если вы хотите получить биткоины, но не собираетесь заниматься майнингом, криптовалюту можно просто купить на бирже, как доллары или евро. Многие онлайн - биржи предлагают создать собственный онлайн - кошелек, в котором будут храниться ваши сбережения. В такой системе вам не надо отдельно качать программу - клиент для сети биткоин, а также самому создавать открытый и закрытый ключи - биржа все берет на себя и операции с биткоинами в этом случае оказываются не сложнее, чем с любым другим олнайн - кошельком.
А на что биткоины потратить можно? Эпоха, когда десятка тысяч биткоинов едва хватало на пиццу, давно прошла, и сегодня эта валюта вполне конкурентоспособна на глобальном рынке. Биткоины принимают по всему миру в качестве оплаты в самых разных сферах: ресторанах, пабах, интернет - магазинах и т. д. существуют специальные карты, например, Coinmap. org, где можно найти ближайшие к вам точки расчета в биткоинах. Оплата в таких местах происходит несколькими способами: или вы заранее создаете учетную запись в понравившемся магазине или кафе, переводите средства на свой счет и дальше ими расплачиваетесь, или платите биткоинами так же, как платили бы банковской картой, воспользовавшись, например, мобильным приложением.
Более того, с помощью специальных мобильных сервисов (например, Shakepay) можно выпустить одноразовую кредитную онлайн - или офлайн - карту для мгновенной конвертации биткоинов со своего счета в доллары или евро для расчетов. Так, в апреле этого года с помощью подобного метода удалось всего за 2, 413612 биткоина оформить предзаказ на автомобиль Tesla Model 3 (компания Tesla Motors обещает открыть продажу этих электромобилей в 2017 году по цене от 35 тысяч долларов за штуку.
Правда, для желающих потратить биткоины в России время сейчас не самое подходящее. Еще несколько лет назад криптовалюты, на которые еще не успело обратить внимание государство, находились в относительно свободном обороте: можно было, например, сходить в бар и выпить пива на честно намайненные "Монетки". В конце 2014 года власти сделали первую попытку законодательно запретить денежные суррогаты, к которым приравняли и биткоины, но проект был отвергнут экспертами как слишком неконкретный. С тех пор еще несколько раз готовились соответствующие законопроекты, но ни один из них так и не стал законом. В последний раз в августе 2016 года минфин заявил, что "Лобовой Запрет" на биткоины вводить нецелесообразно. Сегодня большая часть российских площадок, имеющих отношение к биткоинам, - это биржи и обменные пункты. Например, наличные рубли можно обменять на биткоины, а потом потратить их в зарубежных интернет - магазинах. Какие еще криптовалюты после битк появились.