Открыть изображение »
Блокчейн изнутри: как устроен биткоин
Разбираемся раз и навсегда человеческим языком
17 сентября 2017 :: 171 комментарий :: 105555 просмотров :: 7375 слов
Два года назад я писал пост «Дивный децентрализованный мир», где рассказывал о децентрализованных сетях. В пост уложилась краткая история Фидонет, Napster, Gnutella, TOR, BitTorrent с его расширением в виде DHT, но про Blockchain там было лишь вскользь.

Сегодня, когда половина моих друзей играет на криптобиржах, а вторая готовится к ICO, даже среди них лишь единицы понимают как всё устроено изнутри. Этот пост должен всё исправить.
 +
В этом посте я хочу рассказать зачем придумали блокчейн, как устроены криптовалюты и почему это самая красивая система за последние годы с точки зрения логики.

Я далек от хайпа вокруг курса биткоина и бирж, для меня блокчейн — это технология. Новая, странная, непонятная, но похоже меняющая мир, в отличии от этих ваших сторис. Судя по всему, она с нами надолго.

Этот пост я писал так, как будто рассказываю про блокчейн своим родителям. Я даже могу скинуть его друзьям-гуманитариям и буду уверен, что они поймут.

А поможет мне в этом Олег. Если Олег вам не понравится, я его выгоню.
6
Герман Надо было Германа позвать

Основы: зачем нам блокчейн?

Блокчейн был описан в статье Сатоши Накамото «Bitcoin: A Peer-to-Peer Electronic Cash System». Там всего на восьми страницах автор описал основы криптовалюты Биткоин, в основе которой лежал как раз алгоритм Блокчейна.

Блокчейн появился вместе с биткоином, но может использоваться независимо от него и даже модифицироваться. Любой может сделать свой блокчейн хоть у себя на ноутбуке.
0
rebooter "в статье"?
0
vas3k rebooter, а как лучше? Научной работе? Исследовательской статье? Взял прямую кальку с английского "article".
2
s_mordvinov Может, имеется в виду, что ты пропустил предлог "в" ;-)
0
Noy Manifesto

Список, который нельзя изменить

Блокчейн — цепочка блоков или другими словами связный список. В таком списке каждая следующая запись ссылается на одну предыдущую и так по цепочке до самой первой. Как вагоны поезда, каждый тащит за собой следующий. По поводу списков есть годная статья Никиты Лихачева на TJ, где то же самое объяснено для совсем новичков. Аналогии отчасти взяты оттуда.

Разберем на примере.

Друзья Олега постоянно занимают у него деньги. Олег добр, но крайне забывчив. Через неделю он уже не помнит кто не вернул ему долг, но стесняется всех об этом расспрашивать. Потому однажды он решил положить этому конец, заведя у себя дома на доске список друзей, которым он занимал денег.
Теперь Олег всегда может подойти к доске и убедиться, что Макс всё вернул, а вот Ваня не отдает уже 700 рублей. Однажды Олег приглашает Ваню выпить к себе домой. Пока Олег отходит в туалет, Ваня стирает запись «Занял Ване 200 рублей» и вписывает вместо неё «Ваня отдал 500 рублей».

Доверявший своему списку Олег забывает про долг и теряет 700 рублей. Он решает как-то с этим бороться.
0
Дима Для программистов это конечно может и кажется безумно крутой идеей, но на первуом курсе бухгалтерского техникума рассказывают, что это называется словами бухгалтерская книга, гроссбух, ledger и бог ещё знает как.
2
vas3k Дима, ledger'ом его называют и здесь. По сути это он и есть, да. А безумно крутая идея как раз описана ниже, где этот гроссбух начинает жить без бухгалтера децентрализовано.
2
getra "одолжить" - это ДАТЬ взаймы, а "занять" - это ВЗЯТЬ взаймы
0
vas3k getra, и правда. Сделаю Олегу втык за его безграмотность!
(красиво выкрутился)
2
Дмитрий неверно. можно одалживать и у кого то, и кому то, и обе фразы верны
0
Алек "Олег забывает про долг и теряет 500 рублей" - Олег теряет 700р.
1
Карапуз так и надо
1
Олег Во лох
В прошлом году Олег ходил на курсы по программированию, где ему рассказали про хеширование. Он помнит, что любую строку можно превратить в однозначный набор символов — хеш, и изменение любого символа строки полностью изменит его.

Добавление точки в конце изменило итоговый хеш до неузнаваемости — этим можно воспользоваться.

Олег берет общеизвестный хеш SHA-256 и хеширует им каждую запись, дописывая результат в конце. Теперь Олег может удостовериться, что его записи никто не изменял, захешировав их заново и сравнив с зелёненьким.
 +
Но ЗЛОЙ РЮСЬКИЙ ИВАН тоже умеет в SHA-256 и легко может изменить запись вместе с её хешем. Особенно, если хеш написан прямо рядом на доске.

Потому для большей безопасности Олег решает хешировать не саму только запись, а складывать её вместе с хешем от прошлой записи. Теперь все следующие записи зависят от предыдущих. Если изменить хотя бы одну строчку, то придется пересчитать хеши всех остальных ниже по списку.
Так у Олега появляется личный связный список.
1
gOuTM Не совсем понятно зачем включать в один список и Макса, и Ивана - по сути это же два отдельных списка?
0
vas3k gOuTM, тогда у тебя будет куча маленьких. Я свой список долгов тоже в одном месте веду. А вообще считай это всё художественным замыслом!
0
rebooter gOuTM, лучше это мыслить действительно как бухгалтерский список-историю, который содержит весь приход/уход за какое-то время, только каждая следующая запись ссылается на предыдущую
1
Дыц Не сразу понятен смысл фразы "Олег решает хешировать не саму только запись, а складывать её вместе с хешем от прошлой записи", звучит как "... не только лишь каждый...". Приходится несколько раз перечитать.
Но однажды Иван прокрадывается ночью, изменяет нужную ему запись и обновляет хеши для всего списка до конца. У него это занимает несколько часов, но Олег всё равно крепко спит и не слышит. На утро Олег обнаруживает абсолютно верный список — все хеши совпадают. Но Иван всё равно его обманул, хоть и потратил на это бессонную ночь. Как еще можно защититься от Ночного Ивана?

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

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

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

В реальности же с уравнениями не всё так хорошо: компьютеры слишком хорошо их решают, да и где хранить столько уникальных уравнений. Потому авторы блокчейна придумали более красивую задачу: нужно найти такое число (nonce), чтобы итоговый хеш всей записи начинался на 10 нулей. Такой nonce сложно найти, зато результат всегда можно проверить просто глазами.
0
Жека "итоговый хеш всей записи начинался на 10 нулей" 1. Итоговый хеш дневника или записи в дневнике? И наверно заканчивается на 10 нулей, а не начинается? Или я вообще ничего не понял))))
0
vas3k Жека, одной записи. Ниже поясняющая мини-игра :)

Мини-игра с хешами

Можете попробовать. Вручную искать начинающийся на 10 нулей хеш слишком долго, так что давайте для интереса поищем на два. В поле «Nonce» ниже пишите что угодно. Как только хеш введенного вами будет начинаться на «00» — игра останавливается.

Вводите любые символы, пока их хеш не будет начинаться на «00»:
Nonce: 
Хеш: f0afe84aa097f6fce31c0b76695ddb1fb980c7522f22482c0ac8e59f8a7e8065
Попыток: 0
[скрыть все] [развернуть все]  79 комментариев
3
Иван 527 попыток
0
Рюське 202
0
Олег 52
3
anonimous 3 попытки: "Вастрикxc\"
0
ReDetection 531, добавлял пробелы в начале строки
2
themylogin Первый:
Вастрикбё 00faf05ed6aef4ceae2c509725e17fb1560b1dda88520676bbd164fe59f17f44
Первый смешной:
ВастрикхуйЁ 0068e8014706862257a2dacdf8c98f74440f5b4b8e3fa6efe3a59beb812a477a
Первый длинный, но майнящийся меньше минуты
ВастрикРодЪ 000000b91cc78a9a35a514aa9122edc19c48fee64bb2672a1e6197138118abf7
2
e5pecial "блокчейнБигдата" ВНЕЗАПНО
0
Иван 362 попытки
0
Дима 54 попытки. хорошо придумал
5
trampler 629
" ты пидор"
0
Matvey 405
0
Олег 268
0
Кирилл 41
уупп442536346, тупо тыцал
0
Кирилл 183
0
Denis 74 попытки. Довольно быстро рандомно жмякая по клавиатуре. секунд 10 понадобилось
0
Имя 42
0
R L liu, 5 попыток, случайно, лол
0
Giedrius 144
0
Eimis Ушло попыток: 1142
0
Mor 93
0
Tadas 524
0
Skirmantas 7
ujjdr
0
Rob 140 140
0
s_mordvinov 26
0
I'll 190
0
Tadas 46
0
3213213213123213 Ушло попыток: 13
0
Mantas 121212121212124
0
MrBonD гострик
0
MrBonD 72
0
Sydin 35
0
Sydin 25
0
3,14 Сотой попыткой был йелый алфавит и все цифры после него (совпадения случайны), после чего бросила
0
Vilius Qwertyuion 66
0
DDD 186, в процессе случайно закрыл браузер
0
Fghj 148
0
876974 21 попытка
0
Sealancer 58 хотя это не объективно, я писал фразы по одной букве. На практике с 4-ой или 5-ой попытки подобрал
0
sumasbro 309
0
Прогыз Хотел написать "на хер" и не успел
1
Внукс 88, просто убивал буквы от балды
0
Сид 10 йц ввел
1
Эдв 2 попытки! сразу! чч только добавил.
0
Сашок 212
0
66rr 655
0
ыеы 241
0
April 139
0
Test 127
0
www 347
0
Ушло попыток 1568
0
Олег 7 попыток
0
Nks 575
0
Юля 16
0
Алекс 291
0
NRT 159
0
nik 90
0
meow 384
0
Женя 74
0
Anton 240
0
Маша Не получается, бросила на 339 попытке
0
Vadim 61
0
Evgen 211
0
igor 120
0
gesg 5
0
Anton 271
0
Vombat 199
0
Владимир "деньги -- это специальный товар, биткоины не товар, значит, биткоины и не деньги. Ценность их равна нулю. "
0
Игорь 1241
0
DeepBlue 128
0
Мерседес 157
0
Катя 14
0
Melena 18
0
Tigriskin Ушло попыток: 2
0
olga 213
0
Ольга Случайно) сознательно не получалось
1
Женек 234
0
pampam pompom
0
pampam 144
Теперь Олег сверяет все хеши и дополнительно убеждаются, чтобы каждый начинался на оговоренное количество нулей. Хитрый Иван, даже вооружившись мощным ноутбуком, не успеет за ночь пересчитать все хеши так, чтобы они удовлетворяли условию — не хватит времени.

Такой список по сути и есть домашний блокчейн на коленке. Его безопасность гарантирована математиками, которые доказали, что эти хеши нельзя вычислить как-то быстрее, кроме как перебором. Такой перебор хешей к каждой записи и есть майнинг, о котором сегодня будет много и подробно.
0
Олег Но на картинке нет нулей…
0
Антон Так и не понял, как для одной, неизменной записи можно осуществить перебор хешей, если хеш детерменирован
0
vas3k Антон, к записи добавляется рандомный nonce, он и меняет хеш каждый раз

Централизация доверия

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

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

В кругу друзей все доверяют друг другу и можно просто выбрать на эту роль самого ответственного. Но что если вопрос касается незнакомых людей? Целого города, страны, или всего мира, как в случае с биткоином? Там вообще никто никому не может доверять.
 +

Децентрализация: никто не доверяет никому

Так придумали альтернативный подход: хранить копию списка у каждого. Таким образом злоумышленнику придется не просто переписать один список, но и прокрасться в каждый дом и переписать списки там. А потом выяснится, что кто-то хранил у себя дома аж несколько списков, о чем никто не догадывался. Это и есть децентрализация.

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

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

 +

Транзакции

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

Наши записи типа «Занял Ване 500 рублей» — тоже транзакции. Но у нас нет банка, авторизующего автора транзакций. Как нам проверить, что Иван втихую не добавил запись «Макс должен Олегу 100500 рублей»?

В блокчейне для этого используется механизм публичных и приватных ключей, айтишники давно используют их для авторизации в том же SSH. Я на пальцах объяснял его в посте «Зашита, шифрование, киберпанк» в разделе «Введение в шифрование».

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

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

Этим достигается открытость и безопасность сети. Если раньше за это отвечали банки, то в блокчейне за это отвечает математика.

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


Простым пользователям, не желающим разбираться как выпускать и хранить приватные ключи, помогут сервисы онлайн-кошельков. Чтобы копировать длинные публичные ключи, там делают удобные QR-коды. Лично я пользуюсь Blockchain Wallet, потому что у него есть удобное мобильное приложение и он поддерживает две главные криптовалюты — BTC и ETH.
3
Олег: "Транзакция подписывается приватным ключом и вместе с публичным ключом отсылается в специальное хранилище — пул неподтвержденных транзакций"
Что есть пул транзакций? Он ведь тоже должен быть децентрализован, чтобы никто не изменил ничего?
Если так, то записи о новых транзакциях тоже рассылаются всем участникам сети?
4
s_mordvinov Я РУФЕР, У МЕНЯ ЕСТЬ УНИВЕРСАЛЬНЫЕ КЛЮЧИ!!!!11
1
Nemo какая-то путаница в начале страницы: шифруют публичным ключом, подписывают приватным, а у вас шифруют и тем и другим.
3
vadipp >Если вы расскажете публичный ключ всем друзьям, они смогут _подписать_ им любое сообщение так, что прочитать его сможете только вы, так как владеете приватным.
Не подписать, а зашифровать.

Отсутствие понятия «баланса»

Как и наша доска, блокчейн по сути состоит только из истории транзакций. Он не хранит баланс каждого кошелька, иначе бы нам пришлось изобретать дополнительные способы защиты.

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

Раз у нас нет баланса — это должны доказывать вы. Потому в транзакцию блокчейна входит не только ваша подпись и сколько вы хотите потратить, но и ссылки на предыдущие транзакции, в которых вы получили нужное количество денег. То есть если вы хотите потратить 400 рублей вы пробегаете по всей своей истории доходов и расходов, и прикрепляете к своей транзакции те доходы, где вам дали 100 + 250 + 50 рублей, тем самым доказывая, что у вас есть эти 400 рублей.

Каждый участник сети еще раз обязательно проверит, что вы не прикрепляли доходы дважды. Что те 300 рублей, что дал Макс на прошлой неделе, вы действительно еще не потратили.

Такие прикрепленные к транзакции доходы в блокчейне называются инпутами (input), а все получатели денег — аутпутами (output). Сумма всех инпутов редко бывает ровно такой, сколько вы хотите перевести за раз — потому один из аутпутов чаще всего будете вы сами. Другими словами транзакция в блокчейне выглядит как «мне дали 3 и 2 BTC, я хочу из них перевести 4 BTC и оставшийся 1 BTC вернуть себе обратно».

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


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

Однако если вы потеряете свой приватный ключ, ваш диск умрет или украдут ноутбук, ваши биткоины будут потеряны навсегда. Никто не сможет использовать их в качестве инпутов для новых транзакций. Эта сумма будет недоступна для всего мира навсегда — как если бы вы сожги пачку банкнот. Здесь нет единого банка, куда можно написать заявление с копией паспорта, и он еще напечатает. Для этого нужен еще дополнительный выпуск новых биткоинов «из воздуха».
7
Дима Ну на самом деле с учётом конечности биткоинов потеря кошелька ± ровна раздаче своих биткоинов всем поровну. Т.к. ценность оставшихся вырастет.
1
gOuTM Дима, а разве "потеря" биткоинов как-то фиксируется системой?
0
Герман Не фиксируется, просто возникает небольшой дефицит. Возможно, ты сам захочешь купить еще битков взамен утраченных, хотя мог бы не покупать
0
Zsts "если вы знаете приватный ключ всех инпутов..."
Здесь нет ошибки? Зная приватный ключ я ведь являюсь и владельцем этих кошельков
0
vas3k Zsts, вроде всё верно. Другими словами здесь сказано, что можно прикреплять транзакции с разных кошельков, которыми владеешь. Не обязательно с одного.
1
samogon если ты сожжешь пачку банкнот, то никакие заявления с копией паспорта тебе не помогут, банк тебе хрен "еще напечатает"! Для этого мира твоя пачка денег также будет потеряна.... А вот если ты забыл пин-код или потерял карту, в этом случае заявление в банке может помочь восстановить доступ к своим деньгам. А вот в случае с криптовалютой, такой возможности нет и это жирный минус!
0
Дима-2 Мне не очень понятно, зачем человек должен что-то доказывать про свои предыдущие транзакции. Разве вся история не хранится на каждом сервере? Ведь если так, то система должна уметь автоматически распознать, сколько у меня суммарно биткоинов, должно быть достаточно только моего публичного ключа, не так ли?

Проблема двойной траты

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

Потому что сигналы из пункта А в пункт Б всегда идут с задержкой. Две транзакции могут пойти абсолютно разными путями. И транзакция, которая была инициирована первой, может дойти до получателя позже, потому что шла более длинным путём. Так получается двойное расходование, когда одни и те же деньги были отправлены сразу двум адресатам, о чем они даже не догадаются. Это вам не купюры из рук в руки передавать.

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

Как же убедиться, что одна транзакция была раньше другой?

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

Блоки — основа блокчейна

Каждый работающий компьютер в сети выбирает из общего пула любые транзакции, которые ему нравятся. Обычно просто по самой высокой комиссии, которую он может на ней заработать. Так он набирает себе транзакции, пока их суммарный размер не достигнет обговорённого лимита. В Биткоине этот лимит на размер блока равен 1 Мб (после SegWit2x будет 2 Мб), а в Биткоин Кеше — 8 Мб.

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


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

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

В комментариях пояснили почему именно дерево. Потому что появляется возможность удалять ненужные (потраченные) транзакции из блока. Т.е. например есть две транзакции, объединённые хэшом, одна или обе уже не нужны т.к. это уже всё давно отдано другими транзакциями - так вот эти старые можно удалить, а хэш оставить, в итоге ничего не нарушается. См.пункт "7. Reclaiming Disk Space" в оригинальной статье Стоши.
Так как актуальный блокчейн уже скачан, наш компьютер точно знает какой в нём сейчас последний блок. Ему остается только добавить ссылку на него в заголовок блока, захешировать всё это и сообщить всем остальным компьютерам сети «смотрите, я сделал новый блок, давайте добавим его в наш блокчейн».

Остальные должны проверить, что блок построен по всем правилам и что мы не добавили туда лишних транзакций, а затем добавить к себе в цепочки. Теперь все транзакции в нём подтверждены, блокчейн увеличен на один блок и всё идет хорошо, не так ли?

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

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


Как в школе, когда все решали сложную контрольную, очень редко бывало так, что даже отличники сдавали ответы абсолютно одновременно.

Но если для человека сложная задача — это спланировать отпуск, чтобы и на майские праздники попал, и билеты на море недорого, то для компьютера — это добавить в конец блока такое число (nonce), чтобы в результате хеш SHA-256 для всего блока начинался, скажем, на 10 нулей. Это и есть та задача, которую надо решить, чтобы добавить блок в сеть Bitcoin. Для других сетей задачи могут отличаться.

Так мы приходим к понятию майнинга, на котором все так помешаны в последние годы.
0
Док >весит сейчас сотни гигабайт и должен быть полностью скачан на все компьютеры, которые хотят принимать участие в работе сети

Кстати, может подскажет кто, никак не могу полностью синхронизировать Ethereum Wallet уже недели две мучаюсь, не хочет до конца качать блоки 300-400 остается и все, стоит.
0
Олег: "Остальные должны проверить, что блок построен по всем правилам и что мы не добавили туда лишних транзакций, а затем добавить к себе в цепочки."
А если майнер, решивший блок раньше других, изменил транзакцию, перенаправив чьи-то деньги себе в карман? Остальные не одобрят этот блок, не добавят к себе в цепочки..
Получается противоречие. Как оно решается?
Ниже озвучено правило, что более длинная цепочка признается единственно верной. А у майнера-злоумышленника уже преимущество в один блок, т.к. он сам одобрил свой блок.
0
vas3k Олег:, правило более длинной цепочки подробно рассказано ниже в разделе «Пытаемся обмануть блокчейн». Если все эти детали сразу объяснять, получится каша.
А если майнер добавил какую-то свою транзакцию в блок, то остальная сеть даже принимать его не будет, да.
1
mikha Почему именно дерево: потому что появляется возможность удалять ненужные (потраченные) транзакции из блока. Т.е. например есть две транзакции, объединённые хэшом, одна или обе уже не нужны т.к. это уже всё давно отдано другими транзакциями - так вот эти старые можно удалить, а хэш оставить, в итоге ничего не нарушается. См.пункт "7. Reclaiming Disk Space" в оригинальной статье Стоши.
0
vas3k mikha, теперь понятно. Добавлю твой комментарий прям в пост :)
0
ZmZm А еще, как раз за счет этих деревьев «легкие» кошельки, которые не требуют выкачивания всего блокчейна, действительно легкие :)

Майнинг

Майнинг биткоина — не какое-то там священное таинство. Майнинг не связан с поиском новых биткоинов где-то в глубинах интернета. Майнинг — это когда тысячи компьютеров по всему миру гудят по подвалам, перебирая миллионы чисел в секунду, пытаясь подобрать хеш, начинающийся на 10 нулей. Им даже не обязательно для этого находиться в сети.

Видеокарты с их сотнями параллельных ядер, решают эту задачу быстрее любого CPU.


Почему именно на 10 нулей? А просто так, в этом нет никакого смысла. Так придумал Сатоши. Потому что это одна из тех задач, на которую точно всегда есть решение, но оно точно не может быть найдено быстрее, чем долгим монотонным перебором вариантов.

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

Чтобы найти начинающийся на 10 нулей хеш, у одного компьютера уйдет несколько десятков лет. Но если объединить тысячи компьютеров в единую сеть и искать параллельно, то по теории вероятностей эта задача решается в среднем за 10 минут. Это и есть время появления нового блока в блокчейне биткоина. Каждые 8-12 минут кто-то на земле находит такой хеш и получает привилегию анонсировать свою находку на всех, избежав тем самым проблемы кто был первым.

За нахождение ответа компьютер (по данным на 2017 год) получает 12.5 BTC — это сумма вознаграждения, которая генерируется системой биткоин «из воздуха» и уменьшается каждые четыре года. Технически это означает, что каждый майнер всегда добавляет в свой блок еще одну транзакцию — «создать 12.5 BTC и отправить их на мой кошелек». Когда вы слышите «количество биткоинов в мире ограничено 21 млн, сейчас наймайнили уже 16 млн» — это и есть такие генерируемые сетью вознаграждения.

Сходите посмотрите на настоящий живой блок Биткоина на одном из специальных сайтов. Там есть и транзакции с инпутами и аутпутами, и аж 18 нулей в начале и все описанные выше хеши.
3
lel Тут надо отметить, что сложность сети пересчитывается каждые несколько дней в зависимости от количества майнеров. Количество нулей подбирается так, чтобы по всему миру блоки генерировались в среднем 1 раз в 10 минут.
Если майнеров станет меньше, то майнить тоже будет легче, как это и произошло с bitcoin cash
1
ReDetection Классная ссылка! Получается, ты (или тебе) скинули из обменника, раз там в одной транзакции овердофига BTC и кошелёк источника ну прям кишит транзакциями
0
Герман Стало быть, отключаем электричество конкурентам и получаем больше денег?
0
Рампа Интересно, можно ли реализовать решение каких-то полезных задач, вместо вычисляния хешей с 10-ю нулями? Ну там фолдинг белков или еще какие-нибудь задачи, решение которых имеет практическое или теоретическое значение. Понятное дело, что проверять хэши будет труднее, но польза зато какая...
0
Рампа Сорян, прочитал ответ ниже.
0
Марк Вознаграждение уменьшается в 2 раза каждые ЧЕТЫРЕ года, не два. В 2009 году начиналось с 50 битков, потом 25, год назад уменьшилось до 12,5.
Любой блокчейн существует только пока существуют его майнеры.


Именно майнеры добавляют появляющиеся транзакции в блокчейн. Так что если кто-то рассказывает вам, что он «сделает блокчейн для ***», первый вопрос, на который он должен ответить — кто и зачем будет майнить на нём. Чаще всего правильный ответ — «будут все, потому что за майнинг мы даём наши коины, которые будут расти и майнерам это выгодно». Но это применимо не для всех проектов. Например какой-нибудь Минздрав завтра создает свой закрытый блокчейн для докторов (а они хотят), кто его будет майнить? Терапевты по выходным?
 +
Но какая выгода майнерам будет потом, когда вознаграждения исчезнут или станут мизерными?

По задумке Создателя, к тому времени люди должны будут поверить в реальность биткоина и майнинг начнет окупаться суммой комиссий, включенных в каждую транзакцию. К этому всё и идет: еще в 2012 году все комиссии были нулевые, майнеры майнили только за вознаграждения от блоков. Сегодня же транзакция с нулевой комиссией может провисеть в пуле несколько часов, потому что появилась и конкуренция, и люди готовы платить за скорость.
0
vadipp Справедливости ради надо сказать, что никто не запрещает эксплуатировать и недецентрализованный блокчейн - для хранения информации, несанкционированную модификацию которой хочется усложнить. Майнить тут может уже не публика, а закрытые узлы организации.
То есть суть майнинга в решешии бессмысленных задачек. Разве нельзя пустить все эти мощности на что-то более полезное — поиск лекарства от рака, например?

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

Но задача должна быть одновременно и сложной, чтобы ответ не нашли сразу все пользователи сети. Потому что в таком случае они анонсируют в сеть много блоков с одинаковыми транзакциями и будет вероятность «двойной растраты», о которой я говорил. Или еще хуже — разделения единого блокчейна на несколько веток, в которых уже никто не сможет разобраться какая транзакция подтверждена, а какая нет.
1
autoclosure решешии в тайтле
0
Артёмка > Разве нельзя пустить все эти мощности на что-то более полезное — поиск лекарства от рака, например?

Блокчейн уже прикрутили поверх BOINC, назвали Gridcoin. Это чудо худо-бедно живет, хотя последние полгода из нормально так потряхивает — то форки прут, то блоки не генерятся
1
Марк А еще можно использовать алгоритм PoS. Т.к. действительно столько сжигать электричества - на самом деле просто ужас. Появляются конечно другие проблемы типа “Nothing at Stake” и “Long-range attacks”, но и они решаемы.
Если награда в 12.5 BTC вручается лишь раз в 10 минут и только одному нашедшему блок, получается мне надо впустую жечь видеокарты несколько лет в надежде, что однажды мне упадет $40000 (по текущему курсу)?

Для биткоина именно так. Но так было не всегда. Раньше сеть была меньше, сложность ниже, а значит и выше вероятность единолично найти хеш для нового блока. Но и биткоин тогда стоил не так дорого.

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

Но одиночный майнинг вполне возможен в других сетях. Вот еще недавно было легко майнить Ethereum, где блоки находятся каждые 10 секунд. Вознаграждение за блок там намного ниже, но вероятность заработать копеечку получается выше.
1
Марк В эфире уже из-за бомбы сложности блоки находятся каждые 30 секунд: https://etherscan.io/
0
Эхе Нда
Значит мы так и будем сжигать тысячи видеокарт впустую и никакого выхода нет?

Да, но есть идеи. Тот майнинг, что я описал, является классическим и называется Proof-of-Work (доказательство работы). То есть каждая машина доказывает, что она работала на благо сети тем, что решает бессмысленные задачки с заданной вероятностью.

Но некоторые ребята начинают делать блокчейны с другими видами майнинга. Сейчас вторая по популярности концепция — это Proof-of-Stake (доказательство доли владения). В таком виде майнинга, чем больше «коинов» на счету у участника сети, тем больше его вероятность вставить в блокчейн свой блок. Как самый громкий парень на деревне.

Можно придумать и другие виды майнинга. Как уже предлагали, все компьютеры в сети могут искать лекарство от рака, только нужно придумать как в таком случае зафиксировать их вклад в систему. Ведь я могу заявить, что я тоже участвую, но отключить свою видеокарту и ничего не считать. Как выразить количественный вклад каждого участника в поиск лекарства от рака? Придумаете — дерзайте пилить свой CancerCoin, хайп в СМИ вам обеспечен.
0
Герман Пруф оф стейк с гнильцой, нет? Опять толстосумы решают все!
1
vas3k Герман, есть такое, ага
0
Марк А пруф оф ворк не с гнильцой? Когда в Китае сконцентрированы >50% мощности сети? При хорошем распределении монет пруф оф стейк будет намного более надежным алгоритмом, плюс никаких огромных затрат на электричество, которые через пару лет в одном битке будут на уровне немалой страны типо Англии.
0
LAV Друзья, я не спец, но все это сильно похоже на перевод человечества на "электрические" деньги (именно НЕ электронные). Суть - раньше был золотой стандарт. Сейчас пробные версии всяких электронных денег. По сути их основа - в расходовании электроэнергии + техническом оснащении майнеров. Толстосумы и раньше и в будущем буду решать все, но для рядовых смертных меняется сама основа системы ценности... Киловатты решают всё? в мире компьютеров - это вполне логично, хотя ещё 10 лет назад я был уверен, что новые деньги будут основаны на запасах воздуха или воды...

Блокчейн

Представим ситуацию, в которой несмотря на всю нашу теорию вероятностей, два майнера всё равно умудрились одновременно найти правильный ответ. Они начинают рассылать два абсолютно верных блока по сети. Эти блоки гарантировано отличаются, ведь даже если они чудом выбрали одинаковые транзакции из пула, составили абсолютно идентичные деревья и угадали одинаковое рандомное число (nonce), их хеши всё равно будут разными, так как каждый пропишет в блок свой номер кошелька для вознаграждения.

Теперь у нас есть два валидных блока и снова возникает проблема кого считать первым. Как поведет себя сеть в таком случае?

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

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

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

С ростом сети такие совпадения из «очень маловероятных» переходят в разряд «ну иногда бывает». Старожилы рассказывают, что бывали случаи, когда отбрасывалась цепочка сразу из четырех блоков.

0
trampler >переходят из «очень маловероятных» переходят
Из-за этого были придуманы три правила безопасности хвоста блокчейна (end of chain insecurity):

1. Вознаграждениями за майнинг, можно пользоваться только спустя еще 20 подтвержденных блоков после получения. Для биткоина это около трёх часов.

2. Если вам переслали биткоины, использовать их в качестве инпутов в новых транзакциях можно только спустя 1-5 блоков.

3. Правила 1 и 2 всего лишь прописаны в настройках каждого клиента. Никто не следит за их соблюдением. Но закон о самой длинной цепочке всё равно уничтожит все ваши транзакции, если вы попытаетесь обмануть систему, не соблюдая их.
1
Олег В транзакции, ссылка на которую дана выше в качестве примера есть двеоперации:
В первой два выхода - перевод и "сдача". И тут же прямо следующей операцией видно, как с этой "сдачи" проводят еще одну операцию.
То есть аутпут из первой транзакции является в рамках этого же блока инпутом для другой транзации.
Ситуация логичная - ты просто сделал два перевода из своего кошелька. Но с точки зрения правил безопасности в этом абзаце - это "нарушение" правила 2?
1
vas3k Олег, этот аутпут со «сдачей» он скорее условный, чисто технический. Чаще всего его даже не указывают отдельным аутпутом, он как бы подразумевается, как и комиссия за транзакцию. Потому сдача возвращается сразу, комиссия списывается тоже сразу. Эти правила только для новых транзакций.

Пытаемся обмануть блокчейн

Теперь, когда вы знаете всё о майнинге, устройстве блокчейна и правиле самой длинной цепочки, у вас мог возникнуть вопрос: а можно ли как-то специально обогнать блокчейн, составив самую длинную цепочку самому, тем самым подтвердив свои фейковые транзакции.

Предположим у вас есть самый мощный компьютер на Земле. Датацентры Google и Amazon вместе взятые в вашем распоряжении и вы пытаетесь просчитать такую цепочку, которая станет самой длинной в сети блокчейн.

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

Если ваша вычислительная мощность будет составлять больше 50% от мощности всех участников сети, то с вероятностью 50% вы сможете построить более длинную цепочку быстрее всех остальных вместе взятых. Это теоретически возможный способ обмануть блокчейн, просчитав более длинную цепочку транзакций. Тогда все транзакции настоящей сети будут считаться неверными, а вы соберете все вознаграждения и начнете новую веху в истории криптовалюты, которая называется «разделение блокчейна». Однажды из-за бага в коде так было с Ethereum.

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

Это примерно как выйти на улицу и пытаться убедить каждого человека в мире, что доллар теперь стоит 1 рубль и успеть до того, как в СМИ вас разоблачат. И вот если вы умудритесь убедить всех, то сможете обвалить мировую экономику. В теории ведь это возможно? Но на практике почему-то ни у кого не получалось.

На этой вероятности держится и блокчейн. Чем больше участников-майнеров — тем больше безопасность и доверие сети. Потому когда в Китае накрывают очередную крупную майнинг-ферму, курс и обваливается. Все боятся, что где-то в мире сидел злой гений, который уже собрал пул майнеров на ~49% мощности.

По факту такое было несколько раз годах в 2014-х, когда один из пулов для майнинга временно стал мощнее остальной сети. Но манипуляций тогда замечено не было.
0
serg Как координируют свою деятельность отдельные узлы? От куда берётся информация о каждом майнере, чтобы они согласовывали свою деятельность и цепочки?
0
vas3k serg, а майнеры ничего не согласовывают. Они ищут свои блоки и потом рассылают их по известным им участникам. Как в битторенте или любой другой децентрализованной сети. Эти участники уже смотрят на результат и проверяют, если правильно — включают. Если вдруг майнер тормоз и прислал им ответ на предыдущий блок, то его отбрасывают. Новые блоки анонсируются так же по всем участникам, и если кто-то видит, что у кого-то более длинная цепочка — он забывает свою и берет чужую как правильную.
0
serg От куда-то же берётся известный список майнеров и участников? И от куда берутся блоки, которые необходимо рассчитать? У битторрента по-моему есть битторрент-трекер, он же сервер, который координирует действия клиентов. Есть ли что-то подобное у биткоинов?
0
serg Интересно, как новый участник узнаёт об остальных, и остальные узнают о новом участнике?
0
vas3k serg, конкретно на эту тему в блокчейн я не углублялся, но вангую, что это всё тот же DHT, который и в битторенте используют, чтобы работать без трекера: https://ru.wikipedia.org/wiki/Распределённая_хеш-таблица
0
Ошибкамэн "на на улицу"

Заключение

Блокчейн не только для криптовалют

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

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

Ethereum

«Эфиры» — второе по популярности слово, которое вы слышите в новостях о криптохайпе, после биткоина. Для обывателей это еще одна криптовалюта и способ делать моднейшую штуку под названием ICO. Разработчики на сайте описывают Ethereum как «конструктор блокчейнов для ваших нужд». Так тоже можно, да.

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

О Ethereum и смарт-контрактах можно рассказывать так долго, что хватит еще на один такой пост. Потому поступим в стиле топ-блогеров: если этот пост будут активно репостить и ретвитить, и до пятницы он наберет хотя бы 1500 уникальных просмотров, я напишу продолжение про Ethereum и смарт-контракты.
0
Yan лайк шэр
0
Олежа подписка колокольчик
0
serg А где кнопочки "Палец вверх" и "Пошарить" для лентяев?
2
vas3k serg, были тут когда-то, но лентяи настолько ленивые, что даже не кликают на них
0
aquarius вах, хачу-хачу. кроме шуток, Василий, пишешь ты прекрасно
0
chainblok +++
1
Lechitel vas3k, про Эфир и смарт-контракты было бы очень интересно

IPFS и Filecoin

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

Идея с IPFS весьма богатая на самом деле, почитайте на официальном сайте, его уже можно прям брать и использовать. Надо только придумать где. У меня вот сразу возникает идея сделать на нём архив пиратской музыки и навернуть поверх сервис стриминга. Napster 2.0.

Но так как денежек за опенсорс не платят, создатели IPFS решили сделать Filecoin — криптовалюту, которую можно зарабатывать, сдавая в аренду место на своем HDD. Ну или тратить, арендуя сторадж у других. Как по мне — идея технически мёртвая, но на ICO они подняли $257 млн. Теперь вся команда может бухать и не работать всю оставшуюся жизнь.
3
serg Почему идея технически мёртвая?
1
Герман Ну вот блядь, им дали денег, а работать они не будут. Я думал это наоборот должно быть!
1
egor +1, почему мертвая?
0
Марк Мертвая потому что это оценочное суждение автора) Время покажет)

Steemit, Golos, Indorse и другие

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

Свои мысли по этому поводу написать не могу, потому что у людей свыше снова появится повод забанить пост. Подумайте сами, идея-то красивая.
1
ReDetection Снова?
0
ReDetection Инфополе чтоли?
1
serg Ссылочек не хватает

Место для ваших идей

Медицинские карточки, Википедия с донатами, распределенный суперкомпьютер и еще где-то проскакивал проект организации открытых выборов на блокчейне. Если вам попадались еще какие-то интересные проекты или пришли в голову свои идеи, пишите их в комментарии прямо здесь.
2
Марк А что на счет браузера с подменой рекламы на ту, за просмотр которой платят криптой? И всё это делает создатель JavaScript? https://basicattentiontoken.org/
0
Алёна Blockchain в электроэнергетике (В Америке уже внедрили) https://www.finextra.com/blogposting/13394/blockchain-may-fuel-the-energy-industry
0
Анон Децентрализованная отслеживающая информационная система для всего общества. Настоящие свобода, равенство, братство. http://reckonism.org/book/technobaza.html
0
LAV какая свобода? это, надеюсь, сарказм? без привата ты никто и звать тебя никак! запасаемся генераторами, а то мало ли кто с проводами стоит...

Использованные материалы

1
o_Ohmy мне не так давно понравилось вот это видео https://www.youtube.com/watch?v=bBC-nXj3Ng4 да и вообще науч.поп канал про матан, не видел чтобы где-то объясняли понятнее. Я бы может мехмат не бросил бы, если бы такое видел раньше :)
0
LAV а чем это магическая муть отличается от старых добрых финансовых пирамид на современный лад? принцип-тот же - вы зарабатываете, пока появляются новые пользователи системы. Если число пользователей сокращается - привет, инфляция. этот принцип применим и к реальным "фантикам" скажете Вы. и я соглашусь. С той лишь разницей, что себестоимость наших фантиков обеспечена государством - "большим дорогим сервером", который теоретически, может подтвердить каждый из них живыми активами и собственностью... Или я чего-то не понял?
0
Денис Блокчейн отличается от финансовой пирамиды тем, что для его существования не обязательны новые пользователи.

P.S.:

Мой Bitcoin-кошелек: 1G1DtYAEdZWhWfNGDw4ib81UuMcAp3DbV
Мой Ethereum-кошелек: 0x35c0ef9C40568b25520d25235280e73a9bcb0d77

Используйте их для благодарностей за пост. Каждый ваш перевод туда будет расценен как просьба продолжать писать такие погружения и по другим темам. Любители классических донатов могут использовать кнопку «проставить пивас».
Еще? Тогда вот
Комментарии
0
vas3k ⸬ 19 сентября 2017, 08:42 ⸬ Vilnius, LT ⸬ Apple лог
#
Для тех, кто успел прочитать пост в RSS, я там забыл добавить ссылку на реальные блоки реального блокчейна биткоина. Там хорошо видно всё описанное в статье. Продублирую сюда тоже: https://live.blockcypher.com/btc/block/000000000000000000e7cc9ea72d231aab1f8b70a20a9ae9d10a6ba13201eb53/
2
Павел ⸬ 15 октября 2017, 20:27 ⸬ Minsk, BY ⸬ Linux лог
#
я видимо тупой, но никак не пойму, как фенечка для хипстеров с математическим складом ума пытается занять место полноценной ВАЛЮТЫ. Ху из мистер Сатоши? Какая могущественная сила раскручивает и продвитает эту виртуальную игрушку? Почему к ней так благосклонны международные баникры? Не их ли горбатые носы выглядывают из-за кулис?
0
LAV ⸬ 19 октября 2017, 09:07 ⸬ Moscow, RU ⸬ Windows лог
#
Согласен с Павлом. и повторюсь:
а чем это магическая муть отличается от старых добрых финансовых пирамид на современный лад? принцип-тот же - вы зарабатываете, пока появляются новые пользователи системы. Если число пользователей сокращается - привет, инфляция. этот принцип применим и к реальным "фантикам" скажете Вы. и я соглашусь. С той лишь разницей, что себестоимость наших фантиков обеспечена государством - "большим дорогим сервером", который теоретически, может подтвердить каждый из них живыми активами и собственностью... Или я чего-то не понял?
(не заполняйте это поле)

me@vas3k.ru :: telegram :: twitter :: instagram :: facebook :: github