Что такое биткоин?
Это валюта и средство платежа. Для лучшего определения посмотрим на другие валюты – например, доллар. У него есть централизованная система, которая поддерживает жизненный цикл валюты: банки, государство, центробанк. Если вы хотите открыть счет, вам нужно пойти в банк и показать паспорт – документ, подтверждающий вашу личность. При желании переместить деньги в другое место вы должны опять прийти в банк с паспортом либо воспользоваться электронной системой банка. В любом случае, банк вовлечен в операции с валютой. Как и государство в лице центробанка, который печатает деньги и проводит монетарную политику.
Основная идея биткоина: валюта без централизации. Тут нет банков и государства. Роль этих институтов выполняют алгоритмы.
Что за алгоритмы?
Когда вы работаете с обычным банком, вы получаете от него счет. В мире биткоина аналогом счета является пара из приватного и публичного ключа. Они служат двум разным функциям. Публичный счет используется в качестве номера счета. То есть каждый, зная этот номер, может перевести вам деньги. Приватный ключ используется в качестве подтверждения личности.
При открытии счета в обычном банке, счет связывается с вашим физическим лицом. В теории государство может обратиться ко всем банкам и узнать, сколько у вас денег. В случае с биткоином вместо открытия счета вы просто нажимаете на кнопку и генерируете пару публичного и приватного ключа. Никакой связи с вами как человеком в этой системе нет в принципе.
Сколько может быть ключей?
Сколько угодно. Одна из рекомендаций в работе с биткоином — на каждую транзакцию генерировать новую пару публичного и приватного ключа. То есть у вас их могут быть тысячи. Никто со стороны не может узнать, что это ваши деньги или что конкретные публичные ключи принадлежат именно вам.
Как в мире биткоина работают переводы?
Когда вы переводите деньги в нормальном банке, то обычно пользуетесь платежной системой: VISA, MasterCard или «Мир». Для этого вы обращаетесь к банку, формируете заявку, и банк ее подтверждает.
В мире биткоина аналог платежной системы — это b2b сеть. Она работает так, что ваш компьютер связан с определенным количеством других компьютеров. Важно отметить, что компьютер не связан со всеми устройствами в сети одновременно — они формируют группы, но не связаны со всеми. Центрального звена в этой схеме тоже нет.
Если вы хотите инициировать перевод, то подтверждаете транзакцию с вашего компьютера и отправляете ее во все связанные компьютеры. После этого происходит магия, и сеть подтверждает транзакцию.
Что за магия?
Когда обычный банк подтверждает транзакцию, он на самом деле подтверждает две вещи: это действительно ваш счет и у вас действительно есть деньги.
В мире биткоина проверить то, что вы имеете право делать переводы, довольно просто: достаточно подписать транзакцию приватным ключом. Если вы знаете приватный ключ, значит, это правда вы.
С проверкой наличия денег все немного сложнее. В том же «Сбербанке» счет — это часть централизованной базы данных, в которой записано, что у вас есть 1000 рублей. Допустим, от вас поступило две заявки: «перевести 700 рублей Паше» и «перевести 700 рублей Маше». В любом случае эти заявки встретятся в базе данных, и какая-то из них придет первой и будет обработана, а какая-то придет второй и будет отклонена. В централизованной системе невозможно одни и те же деньги потратить дважды.
А в децентрализованной — можно. Так как обработка происходит не мгновенно и разными частями сети, они могут принять обе транзакцию. И получится, что одни и те же деньги используются несколько раз.
Основная инновация биткоина в том, что он решил эту проблему с помощью технологии блокчейн, которая защищает от двойной траты.
Как работает блокчейн?
Блокчейн — это история всех транзакций, которые когда-либо происходили в сети биткоин. Как следует из названия, это цепочка блоков. Все транзакции разделены на блоки и идут в хронологическом порядке. В структуре блока записана информация о транзакции: данные об участниках, времени перевода и другое. Часть данных старого блока идет в новый блок. И так формируется цепочка.
Это значит, что, если мы хотим задним числом подправить какие-то данные, нужно перегенерировать данные всех блоков в истории. Отсюда свойства проверяемости и неизменяемости блокчейна. Кто угодно может проверить всю цепочку и убедиться, что ничего не подтасовано и данные целостны.
Представим, что у нас все-таки есть злоумышленник, который хочет подменить прошлое. Казалось бы, что ему мешает перегенерировать блоки и сделать новый блокчейн? Ему будет противостоять процесс генерации данных в системе, который намеренно сделан очень сложным. Вообще, для создания цепочки блоков и сбора всех данных о транзакциях нужно затратить много вычислительной мощности. Весь этот процесс генерации и поиска ключей называется майнинг.
А зачем майнить?
За награду. В алгоритм биткоина зашита такая история: если кто-то сгенерировал новые данные, но при этом в блок он добавляет одну транзакцию, то эта транзакция из ниоткуда дает определенное количество биткоинов. Их точное количество зафиксировано в алгоритме и со временем работы системы становится все меньше и меньше. Было, например, 25, а стало 12. То есть сейчас майнерам уже не заработать столько денег, сколько можно было получить во время пика популярности биткоина.
Описание технологии коротко
У нас есть b2b сеть, где каждый компьютер подсоединен к определенному количеству других компьютеров. Участники сети делятся на два типа: те, кто просто отправляют транзакцию (большинство), и те, кто пытаются получить награду (майнеры).
Допустим, вы инициируете две транзакции: «перевести 700 рублей Паше» и «перевести 700 рублей Маше». Они отправляются по сети другим компьютерам и в какой-то момент настигают двух разных майнеров. Те собирают другие заявки на составление блока и информацию о транзакциях. Затем в какой-то момент один них будет первым и подтвердит перевод денег, а второй поймет, что транзакция некорректна.
Проблемы биткоина
На появление первой информации о биткионе многие люди отреагировали позитивно и решили, что банки больше не нужны — будем делать переводы с помощью криптовалюты. Но технология не вошла в широкий обиход, и тому виной несколько причин. Во-первых, долгое подтверждение. Меньше, чем за десять минут, вы вообще не узнаете, приняли вашу транзакцию или нет. А чтобы узнать точно, нужно получить шесть подтверждений, то есть прождать час. Купить булку в продуктовом с такими скоростями будет неудобно.
Во-вторых, нет никакой связи между человеком и приватными ключами. Единственное, что подтверждает ваше право на владение деньгами, — ключ. А теперь представьте, что вы его забыли. Никакой банк тут не поможет, все сбережения будут потеряны как для вас, так и для системы.
В-третьих, транзакции с биткоином невозможно отменить. Просто нет механизма. Допустим, кто-то обманом забрал ваши деньги, а за помощью идти не к кому.
Наконец, обеспечение валюты. Нормальные валюты обеспечены репутацией государства, которое ее выпустило. Российская валюта обеспечена резервом долларов, американский доллар — неким резервом золота. Конечно, резерв покрывает только маленькое количество валюты, но если надо сдать, допустим, рубли, то центробанк их всегда примет и предложит что-то взамен.
У биткоина аналога центробанка нет — все держится на том, что кто-то хочет купить, а кто-то — продать. Следовательно, если все люди с биткоином захотят одновременно его продать, то цена криптовалюты станет равна нулю. Это вызывает крайне нестабильный курс биткоина, что делает его использование как средство платежа неудобным.
Развитие идеи — умные контракты
Снова вспомним обычный мир. Мы даем человеку деньги — он предоставляет свои услуги, будь то товары или сервисы. При этом две части этого договора ничто физически не связывает. Кроме уголовной или другой ответственности, человека ничто не останавливает принять плату и не оказывать услугу.
Но с помощью технологий можно сделать инструмент, который соединит два процесса в единое целое. В этом и заключается идея умных контрактов, то есть контрактов, которые выполняют себя сами. Эта задумка зародилась еще до биткоина, но после появления криптовалюты разработчики попробовали применить технологию на практике, встроив в блокчейн код.
Так придумали новую криптовалюту — Ethereum. Ее особенность заключается в использовании счетов двух типов: те, которыми владеет человек (стандартное управление с помощью приватного ключа), и те, которыми не владеет никто. Они называются контрактами. Это деньги, которые владеют сами собой. Пользователи посылают им сообщение и тем самым активируют их код. К примеру, у нас есть машина, которая предоставляет управление только тому, кто демонстрирует владение приватным ключом. В этой ситуации мы делаем контракт, который, получая деньги за каршеринг, переводит деньги владельцу машины.
Что такое ICO
Особенное применение умных контрактов — это ICO, или Initial Coin Offering. Представим, вы делаете стартап и ищите инвестирование. У вас две опции: либо пойти за частными инвестициями к компаниям и фонду, либо пойти сразу ко многим людям (это IPO, или Initial Public Offering). По сути, вы выпускаете акции, с покупкой которых человек получает маленькую долю в компании. Но это очень дорого и неподъемно для проектов ранней стадии развития, а частные инвестиции найти сложно.
ICO – это идея краудфандинга, настроенного на умных контрактах. Для привлечения инвестиций компания выпускает токены на Ethereum. С их покупкой человек получает право на владение частью компании, закрепленное в контракте.
С появлением ICO вокруг технологии возникла нездоровая сенсация. Только услышав про использование токенов, все бежали сдавать деньги, совершенно не обращая внимания на качество продукта стартапа. Задумай люди хоть делать чапельники за миллион долларов за штуку, стоило им написать про ICO, как все ринулись бы вкладываться. Многие компании даже не связывали умные контракты со своими токенами, а просто зарабатывали на популярном слове.
Потому и случился бум криптовалют. Миллионы компаний вышли на ICO, миллионы людей купили Ethereum. Широкие народные массы узнали про новую технологию и решили, что это классный инструмент вложения денег. Потом другие люди решили майнить, и так резко выросла цена на видеокарты. Сформировался «пузырь». Одни считают, что он уже лопнул, а другие думают, что он просто подсдулся и еще остается потенциал для падения. Одна из моих знакомых удачно купила машину на подъеме криптовалют, а другая потеряла деньги на квартиру на спаде.
Будущее
Эксперты прогнозируют самое разное будущее криптовалют, однако, как мне кажется, самой технологии блокчейн мы найдем более достойное применение в ближайшем будущем. Возможно, лет через пять-десять мы будем активно пользоваться ею для внедрения интернета вещей и настройки умных производств.