Bitcoin

Материал из Lurkmore

Перейти к: навигация, поиск
Drama.pngZOMG TEH DRAMA!!!11
Обсуждение этой статьи неиллюзорно доставляет не хуже самой статьи. Рекомендуем ознакомиться и причаститься, а то и поучаствовать, иначе впечатление будет неполным.
RedHate.pngБЛДЖАД!
Эта статья полна любви и обожания.
Возможно, стоит добавить немного критики?
Сферический в вакууме
В твоём кошельке
Bitcoin-gold.jpg

Bitcoin — это такие торренты, которые вместо файлов позволяют обмениваться эдакими фантиками напрямую, бесплатно и без посредников. Которые можно продать за бабло. Этакие тру интернет-фантико-деньги, находящиеся полностью в Сети, никому неподконтрольные и доступные для всех. И всё это круто замешано на open source, стойкой криптографии и p2p-сетях.

Содержание

Суть

b
Что такое биткоины?
b
Казалось бы, при чём тут кризис?

Bitcoin — штука сложная и разносторонняя, разные люди видят в нём много всего интересного:

  • нерды от криптографии — гениальное криптографическое решение, принципиально новую программную систему;
  • инвесторы и стартаперы Кремниевой долины — новую подрывную технологию с невероятным потенциалом, не менее подрывную, чем сами интернеты были 20 лет назад;
  • спекулянты и любители быстрых денег — новый высокорисковый финансовый инструмент, на котором можно поднять 10000% дохода, если поймать момент;
  • гики и прочие погромисты — новый клёвый софт, который позволяет делать такие штуки, которые нельзя было сделать раньше;
  • чиновники и банкиры — нечто непонятное, вроде как и имеющее отношение к деньгам, но вообще неясно ни что с этим делать, ни как оно работает, ни как его прижать к ногтю;
  • программисты — QR-коды, чтобы их расшифровывать;
  • криптоманьяки и анархисты — способ подорвать мировую диктатуру кредитного капитала;
  • экономисты (особенно австрийцы) видят повод для развития новых теорий (Теорема регрессии Мизеса)
  • наркоманы - возможность невозбранно, без рисков и изъёбов затариваться наркотой в интернетах
  • нормальные люди — ничего не видят в биткоине, им похуй, до них ещё не дошло.

Не вдаваясь пока в технические детали, образно суть биткоина такова — представьте себе маленькие золотые монетки со встроенными телепортами и публичным логом транзакций. Метафора хреновенькая, но лучше пока нет, поэтому ещё раз:

  • маленькие золотые монетки, потому что, как и количество золота, общее количество возможных биткоинов ограничено, создавать новые можно только через майнинг и с небольшой скоростью, а в обозримом будущем создание новых биткоинов прекратится навсегда;
  • с телепортами, потому что биткоины можно передать через интернеты в любую точку мира, и никто не может этому помешать (разве только вырубив весь интернет целиком);
  • и публичным логом транзакций, потому что любая смена владельца любого кусочка биткоинов записывается в общем списке транзакций, который хранится вечно всеми узлами сети и общедоступен для чтения.

И да, всё это основано на стойкой криптографии, то есть на тех же механизмах шифрования, которые используются в SSL, в SSH, в банковских сетях и т. д., которые проверены тысячи раз и на сегодня считаются надёжными. То есть взломать систему шифрования на сегодня шансов нет, а если кто и умудрится — вероятно, попутно взломает все стойкие системы шифрации мира, и тогда биткоин уже не будет никого парить. Более реальной угрозой видится так называемая атака 51%, когда большинство юзеров системы являются фейками и распространяют заведомо ложные данные о транзакциях, но проблема этой атаки в том, что на данный момент 51% от мощности сети Bitcoin — это в 9000 раз больше, чем у самого мощного суперкомпьютера в мире.

Откуда взялся?

Происхождение биткоина — само по себе притча во языцех. Изначально спецификацию биткоина и первую версию кода создал некто, называющий себя Сатоши Накамото. В 2008 году он опубликовал Bitcoin Whitepaper, в 2009 году выложил первую реализацию клиента, ещё немного пооколачивался вокруг, потом исчез и с тех пор не появлялся. Кто такой Сатоши Накамото на самом деле, один это человек или коллективный псевдоним — не сказали. Эту тему неоднократно копали разные журналисты, но более-менее однозначно указать человека, причастного к созданию биткоина, до недавнего времени не удавалось. В общем, Сатоши неплохо понимал, что и зачем он сделал, и судьба Прометея (быть прикованным к скале и кормить своей печенью прикреплённых орлов) — его не прельщала, поэтому как только появилось жизнеспособное сообщество, которое могло развиваться без него — он исчез, правда, не с пустыми руками. Как самый первый майнер, он намайнил себе около полутора миллионов биткоинов, что по курсу на ноябрь 2013 составляло полтора миллиарда баксов.

Матчасть

Терминология

  • блокчейн (blockchain) — база данных, в которой хранятся все транзакции, когда-либо происходившие, и все данные всех когда-либо существовавших кошельков. Она состоит из блоков публичных данных, связанных между собой. При этом применяемая шифрация никак не мешает читать содержимое блоков, а вместо этого математически связывает блоки между собой, и ни одну запись ни в одном блоке нельзя заменить — возникнут несоответствия в математике между блоками, и потребуется менять следующий блок, за ним следующий и так всю цепь. При этом блокчейн — распределённая база данных, то есть копии его хранятся независимо каждой программой биткоин-кошелька (кроме мобильных кошельков). То есть получается, что каждый клиент имеет у себя и независимо проверяет свою копию блокчейна, и любое несоответствие, которое попытается внести любой из узлов, будет мгновенно выявлено, и такой блок будет отвергнут другими узлами и не присоединён к цепи.
    Блокчейн открыт и публичен, и просмотреть его содержимое можно без проблем. Для этого есть или программы-парсеры, или онлайн-сервисы вроде blockchain.info.
  • кошелёк (wallet) — программа, клиент сети Bitcoin, а также созданный ею специальный файл wallet.dat. Программа работает как узел сети (синхронизирует блокчейн, передаёт дальше новые блоки), а также даёт возможность юзеру посылать-принимать транзакции, смотреть историю своих транзакций и т. д. Wallet.dat — файл, в котором хранятся все данные кошелька. Проебал файл — проебал кошелёк и бабло, если не сделал бумажную копию кошелька, конечно. Программы-кошельки легко гуглятся. Программа Electrum — узкий клиент, не хранит локально всю историю блоков, а подгружает нужные части с серверов, при этом сам кошель хранится только локально.
  • адрес — неудобочитабельная последовательность из 27-34 латинских букв и цифр. Пример: 1Jhbck6ziWRmQBp67GVDgLSJ9eFF5xNXgB. По сути — это всё, что нужно знать от получателя для перевода ему денег (намёк понятен?). В одном кошельке может быть сколько угодно адресов, но адреса между собой никак не связаны. Зная только адрес, можно выяснить, сколько денег было получено на него и с него отправлено, но нельзя выяснить, чей он, кто отправлял деньги и зачем.
  • подтверждение транзакции (confirmation) — запись транзакции в блок и прикрепление блока к блокчейну, а также добавление новых блоков поверх блока с этой транзакцией. В сети Биткоин нормой считаются шесть подтверждений, то есть прикрепление шести блоков к блокчейну после отправки транзакции.
  • вознаграждение за транзакцию (transaction fee) — необязательное добавление небольшой суммы к транзакции, которое отходит майнеру, успешно создавшему блок для этой транзакции. Ускоряет проведение транзакции. Без него транзакция иногда может идти до нескольких дней. Устанавливается и оплачивается всегда отправителем денег, дефолтное значение сейчас — ฿0.0001.
  • майнинг — процесс создания новых блоков и записи в них транзакций, а также попутно — создания новых биткоинов. Майнинг нужен для существования сети Биткоин, именно майнеры создают новые блоки и записывают в них все транзакции, которые произошли с момента создания предыдущего блока. Процесс майнинга требует решения математически сложной задачи, а значит, требует нехилых вычислительных ресурсов. Чтобы люди не забили на процесс майнинга, к нему добавлена плюшка — каждый вновь найденный блок не только записывает свежие транзакции, но и даёт майнеру немного биткоинов (฿25 за блок в сентябре 2013).
  • сложность майнинга (mining difficulty) — вычисляемый параметр, который определяет, насколько сложна математическая задача для нахождения блока. Сложность сделана для того, чтобы майнеры в погоне за профитом не добыли все блоки сразу. Сложность авторегулируется каждые две недели по всей сети, сразу исходя из количества блоков, добытых за прошлые две недели. Сложность регулируется так, чтобы при данной скорости майнинга находилось по одному блоку каждые 10 мин.
  • хэшрейт (hash rate) — количество хэшей SHA256 в секунду, производимое всей общемировой сетью майнеров. Не определяет непосредственно скорость майнинга, так как при увеличении хэш рейта автоматически увеличивается и сложность.
  • сатоши — мельчайшая часть биткоина, которая может быть отправлена, носит название в честь предполагаемого основателя Сатоши Накамото. 1 сатоши = 0.00000001 BTC (технических ограничений на мельчающую частицу нет, и в будущем она может быть равна 10^-100500).

Как это работает

Для начала надо ещё раз сказать, что это децентрализованная система. Для того чтобы поменять или что-то изменить в алгоритмах, надо обновить все узлы сети или хотя бы большую их часть.

В отличие от, например, WebMoney, в котором при передаче средств идёт запрос серверу «вот мой счёт, переведи с него на другой счёт 100 рублей», а после владельцы сервера решают, надо переводить или нет. С биткоинами всё не так, так как серверов очень много, и они принадлежат разным людям. Транзакция выглядит так: пишем сообщение «перевожу 100 рублей со счёта А на счёт Б», подписываем его ключом, подходящим к счёту А, и отправляем это сообщение другим узлам, коих тысячи, и каждый из них независимо решает, стоит транзакция того, чтобы её включить в общий список, или нет.

Наглядное описание процесса

То есть, чтобы повлиять на происходящее в системе WebMoney, нужно выкрутить руки людям, владеющим сервером WebMoney, что вполне реализуемо, а чтобы повлиять на сеть Bitcoin, надо выкрутить руки миллионам несвязанных майнеров, разбросанных по всему миру, что значительно сложнее. Есть теоретические способы добиться и этого, они изложены тут, но всё это требует одновременно и многомиллионных вложений, и нетривиальных технических изъёбств, и всё равно остаётся легко обнаружимо и решаемо. Впрочем как получателю так и отправителю, если они известны, все-таки можно вывернуть руки или шею.

Биткоины — это такие же фантики, как и доллары, так как ни те, ни другие ничем не обеспечены. Но если копнуть глубже, становится ясно, что бакс имеет ненулевую стоимость, и на это есть причины. Вокруг этих причин и насколько они играют роль для битка разворачиваются нешуточные холивары. А разгадка проста, для экономики нужен «всеобщий эквивалент», расчетное средство. Есть вера и предпосылки, что биток станет таким универсальным расчетным средством на просторах этих ваших интернетов.

Впрочем есть определенное сходство с золотом и различие с баксом: общее количество возможных биткоинов заранее всем известно — и может быть строго не больше 21 миллиона, из которых половина уже добыта, а вторую будут добывать приблизительно следующие 150 лет. Это значит, что, допустим, если есть 1000 BTC, то у обладателя в наличии примерно одна двадцатитысячная доля всех биткоинов, причём включая те, которые ещё будут добыты в обозримом будущем. А если есть миллион долларов, даже миллиард, то это не значит ровным счетом ничего, потому как сколько новых долларов завтра напечатает FED — не знает даже сам FED.

Если кто-то потеряет файл кошелька, то бесследно пропадут все деньги, которые в нем лежали. Какая-то часть биткоинов выйдет из оборота. Если с обычными деньгами возможна замена рваных купюр на новые, то с биткоином и золотом ситуация другая: испортил — сам виноват. В этом контексте, количество биткоинов даже будет уменьшаться в долгосрочной перспективе. Впрочем, так как сейчас один сатоши — ฿0.00000001, а при необходимости можно легко увеличить количество знаков после запятой — постепенная потеря части биткоинов на функционирование системы не повлияет, только курс будет незначительно расти со временем.

Как этим пользоваться

Для начала — скачать программу-клиент или завести онлайн-кошелёк. Официальной программе-клиенту потребуется время и четыре десятка гигабайт трафика для синхронизации всего блокчейна, онлайн-кошелёк готов сразу, но в онлайне безопасность обеспечивают владельцы сервиса, а десктопный клиент — твой собственный, и безопасность тоже твоя. Можно качать «лёгкие» клиенты, хранящие у тебя не все гигазы, а только новейшую историю транзакций.

Следующим пунктом надо достать биткоинов. Если есть знакомые — попроси продать лично, если нет — см. ниже. Чтобы получить деньги от кого-то — скопируй и отправь им свой адрес. Адреса можно генерировать в кошельке, их может быть неопределённо много.

Достав биткоинов и переведя их в свой кошелёк — ты готов к участию в экономике дивного нового мира. В любом месте, где тебе встретится оплата биткоинами, тебе дадут адрес, на который платить, его скопипастишь/отсканируешь в свой клиент и отправишь деньги. Всё.

Биткоин — анонимен или нет?

Вопрос «анонимен биткоин или нет?» по-прежнему вызывает отдельные срачи, но суть тут проста — есть блокчейн, в нём видны абсолютно все транзакции, связывающие все когда-либо использованные кошельки друг с другом и позволяющие отследить каждое движение каждого сатоши. С другой стороны — отследить можно движение монеток между кошельками, а вот связать отдельные кошельки с реальными владельцами и движением товаров IRL куда сложнее, хотя и реально. Пользуешься дефолтным клиентом с настройками по умолчанию — все узлы сети будут знать твой IP, и при совершении транзакции узлы, через которые транзакция вбрасывается в сеть, могут соотнести IP и адрес твоего кошелька. Если такой узел был запущен плохими дядьками, то они смогут сопоставить это с предоставляемой провайдерами инфой об IP пользователей и схватить за яйца владельца кошелька. Или не схватить, а записать в свою базу и дальше отслеживать все транзакции, идущие с этого адреса — вдруг попадётся что интересное? То есть хоть биткоин и не требует никаких регистраций, сам по себе от отслеживания концов не защищает, а также позволяет проследить цепочки перемещения денег и — возможно — связать воедино множество разрозненных транзакций.

Есть способы использовать биткоин достаточно анонимно, но они требуют дополнительных телодвижений и прямых рук. Задача анонимности расчётов состоит из:

  1. получение в распоряжение кошелька с деньгами, который никак нельзя связать с личностью;
  2. защита от прослушки, когда этим кошельком будешь пользоваться.

С последним всё ясно — Tor в помощь, или бесплатные публичные Wi-Fi, или ещё что-то в том же духе. А вот как получить анонимные монетки — вопрос новый.

Есть немало служб обмена других электронных валют и AFK-денег на биткоины. Если есть счёт в такой виртуальной валюте (например, Qiwi), который не выводит на тебя, то, обменивая его через тор на биткоины, получаем анонимный счет в биткоинах.

Ещё есть специальные деньгоотмывалки — mixing services. Это специальные конторы, которые принимают биткоины с нескольких адресов и пересылают их на несколько других. Получается единая транзакция, у которой получатели — известны, отправители тоже, но кто именно из них кому и что именно передал — знает только сам миксер. По идее — несколько уровней смешивания дают достаточную анонимность, без идеи — за миксером тоже могут быть нехорошие дяди, а также он сам анонимен и может тупо кинуть, и все выходящие адреса транзакции будут вести в карман ему.

Ну и можно купить биткоины за нал, не раскрывая торговцу свою личность и переведя всё купленное на свежесозданный кошелёк без истории — получатся вполне анонимные монетки, никак не связанные с личностью реального владельца.

Важно потом не выводить сдачу, а лучше — использовать анонимный адрес один раз и никогда к нему не возвращаться. Ибо все транзакции в блокчейне сохранены навсегда (или пока вся система не навернётся), и через лет 10 кто-то может и внезапно найти чью-то неосторожную связь с кошельком, с которого ты оплатил убийство своей жены на Silk Road, например.

Преимущества и недостатки по сравнению с фиатными валютами (долларом, евро, рублём etc)

Pro

  • Инфляция невозможна. Дядя Сэм, дядя Пу или враги не напечатают себе ещё стопицот денег и не смогут легально и незаметно отбирать у тебя заработанное честным трудом; Узкоглазый властелин правда успел намайнить себе чуть более чем 100500 биткоинов, чем уже обеспечил себе как минимум безбедную старость, а в пределе, если допустить что биткоин станет общемировой валютой он будет держать внушительную часть ее запаса, но в отличие от владельцев печатного станка потратить своё добро он сможет только один раз.
  • Чтобы пользоваться всеми плюшками электронных денег, не нужно доверять деньги посреднику — банку, бирже, или «шлюзу в Интернете».
  • Это распределённая система. Работоспособность обеспечивает огромное количество рядовых пользователей-узлов, каждый из которых сам принимает решение о (не-)валидности транзакций, а значит, цензура сети, ограничения на (не-)передачу денег по политическим мотивам — невозможны.
  • Это распределённая система. То есть нет никакого единого центра, организатора системы, на которого можно надавить газом, ядовитым, или, наоборот, безвредным и полезным при сжигании, или авианосцами; куда можно выслать маски-шоу, чтобы ограничить хождение валюты или принудить отчитаться.
  • Высокая скорость. Обработка международных транзакций занимает минуты, а не дни и недели, и стоимость любой транзакции некогда составляла 0,0001฿ (по курсу на 20.04.14 — уже 0.05 USD) и в соседний дом, и на другой конец Земли.
  • Логи всех транзакций публичны. Стало быть, все перемещения денег можно отследить: например, при (гипотетической) уплате налогов биткоинами можно проверить, куда именно пошёл каждый уплаченный сатоши[3].
  • Без регистрации, без смс, без сканов паспортов и прочего. «Открытие счета» в клиенте производится нажатием одной кнопки. При должной сноровке биткоин позволяет организовать онлайн-расчёты настолько же анонимные, как покупка за кэш в подворотне. Если предпринять дополнительные телодвижения — то никто не узнает, что именно ты оплатил VIP-доступ к сайту с мультиками.
  • Сверхмалая стоимость транзакций открывает принципиально новые возможности бизнеса. Например, донаты за хороший контент в размере считанных копеек с носа, или автоматическая уплата тех же копеек соседу за пользование его интернетом. Текущая рекомендованная стоимость транзакции — ฿0.0001, и даже это можно не платить в большинстве случаев.
  • Счёт в биткоинах нельзя заблокировать, также нельзя отказать в обслуживании отдельным личностям по политическим мотивам.
  • Биткоины нельзя отобрать через суды или давлением на банки, единственный вариант — терморектальное воздействие непосредственно на анус владельца, либо украсть секретный ключ кошелька.
  • Неограниченные транзакции. Работает везде, где есть интернеты, игнорирует любые границы, загоны и подвыперды местных законов.
  • Если не косячить с безопасностью — полностью теневая экономика. То есть налоговая в курсе, что бабло где-то есть и от кого-то к кому-то перетекает, но вот поймать тебя лично за руку и стрясти десятину — очень затруднительно.
  • Поиск бенефициантов. Мошенники обманули твою бабушку и вытянули у неё кругленькую сумму? Не беда — ведь известно куда ведут концы (только если мошенники совсем дураки и не знают про пункт 8).

Contra

  • Поиск бенефициантов. Мошенники обманули твою бабушку и вытянули у неё кругленькую сумму, а потом оплатили этими деньгами непотребщину? Беда-беда. Концы ведут к тебе. Пативен уже выехал.
  • Достаточно трудно объяснить обывателю, зачем ему всё это и как оно работает.
  • Потерял пароль к кошельку — потерял всё бабло (решаемо с помощью бумажного бэкапа).
  • Ты — сам себе банк. Троян зохавал винду и грабанул кошелёк — ССЗБ. Впрочем есть онлайн-кошельки, которые делают доступ простым для технически неподготовленных пользователей, но и вся безопасность в таком случае на их стороне, если наебут или накосячат — ничего не сделаешь и не докажешь. Есть также и онлайн кошельки, которые не имеют доступ к секретным ключам, своего рода веб-программы (почти также безопасны, как и обычные программы). Но разбираться что к чему все равно надо — это как выбирать сейф для бумажных денег.
  • Софт всё ещё в бете. Найдут критический баг — всё навернётся, и пиздец баблу. Хотя искали уже очень много и старательно — пока не нашли.
  • Нестабильный курс. Для трейдеров это конечно профит (даже при обвалах медведи фиксируют прибыль), но большое неудобство для торговли.
  • Файл базы транзакций на май 2015 занимает 40 ГБ. А что будет, если весь мир захочет перейти на Bitcoin? С другой стороны каждому узлу в сети не обязательно держать полную базу транзакций у себя на локальном жёстком диске, есть режим «лёгкого» клиента, который проверяет только несколько последних транзакций, а по поводу остальной истории — доверяет «полным» клиентам.
  • В Рашке за биткоин скоро будут закрывать в цугу