Скрытые особенности Биткоина

    Обзор неочевидных для многих отличий Биткоина от существующих платежных систем

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

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

    1. В Биткоин-сети нет аккаунтов

    В отличие от других платежных систем, у пользователей Биткоина нет своего аккаунта, т.е. счета, который был бы каким-то образом привязан к пользователю. Клиенты банков имеют аккаунты в виде банковских счетов, идентифицируемых по паспорту и/или налоговому номеру клиента. Банковские карты платежных сетей Visa и MasterCard также связаны с аккаунтами их пользователей. Клиенты электронной платежной сети PayPal имеют аккаунты, связанные с адресом их электронной почты. Во всех других платежных системах существуют какие-то способы идентификации личности и её счетов. В Биткоине этого нет!

    С одной стороны это делает пользование Биткоином псевдонимным. С другой — в случае утраты приватных ключей восстановить доступ к биткоин-адресам невозможно. В Биткоине только приватный ключ дает право пользования деньгами, хранящимися на соответствующем ему биткоин-адресе. Нет ключа — нет биткоинов! Или, как говорится в популярной среди биткоинеров поговорке — ”Not your keys, not your coins” (Не твои ключи, — не твои биткоины).

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

    Отчасти эта проблема решается сторонними сервисами верхнего уровня, которые предоставляют доступ к аккаунту клиента и через него — к приватным ключам, которые хранятся на серверах этих сервисов. Это делается за счет утраты анонимности — пользователь должен указать свои реквизиты для восстановления доступа к аккаунту, как правило, — e-mail и/или номер телефона. А по требованиям KYC/AML и свои личные данные — имя и фамилию, адрес проживания и т.п.

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

    2. В биткоин-кошельках не хранятся биткоины

    Эта парадоксальная фраза сбивает с толку многих начинающих (и не только) пользователей Биткоина. Но в действительности это так! В Биткоин кошельках хранятся приватные ключи от биткоин-адресов, а не сами монеты. Более того, см. п.3…

    3. Биткоины не существуют как сущности

    Звучит, как каламбур, но это так! Ранее, в п.1, для простоты понимания я написал, что «биткоины хранятся на биткоин-адресе». В действительности это не совсем так. Биткоин (монета) не является объектом, даже цифровым. Его невозможно представить в виде набора данных. И, поскольку это не объект, его невозможно хранить в том понимании, которое мы обычно вкладываем в понятие «хранение». Биткоин (монета) существует только в контексте транзакции. Да и сами транзакции в Биткоин-сети отличаются от банковских записей в бухгалтерских книгах. И это — следующая особенность Биткоин-сети , которая может многих окончательно запутать.

    4. Биткоины не отправляются ни на адреса, ни с адресов

    В отличие от банковских транзакций, которые суть перевод денежных средств с одного банковского счета на другой, транзакция в Биткоине реализована по-другому — это разблокирование неизрасходованных средств выхода осуществленной ранее транзакции (UTXO) при помощи приватного ключа биткоин-адреса отправителя и блокирование переводимой суммы при помощи публичного ключа адреса получателя. Поскольку можно использовать только всю сумму на неизрасходованном выходе, остаток (сдача) блокируется публичным ключом адреса отправителя.

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

    Ниже на картинке приведен пример простой транзакции. У отправителя (его принято называть Элис/Alice) на неизрасходованном выходе (UTXO) ранней транзакции есть 10 BTC. Элис переводит 8 BTC получателю (принято называть Бобом/Bob), а остаток (сдача) в размере 2 BTC возвращается на биткоин-адрес отправителя (Элис). При этом выход с 10 BTC становится израсходованным и создаются два новых неизрасходованных выхода (UTXO) — c 8 BTC и 2 BTC. Но первый может теперь разблокировать только Боб, а второй — только Элис.

    Пример транзакции в Биткоине.

    Из этого следует, что баланс любого биткоин-адреса — это сумма всех неизрасходованных выходов транзакций (UTXO), которые заблокированы публичным ключом владельца этого адреса.

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

    По сути, это выглядит как перевод с одного биткоин-адреса на другой с возвратом остатка (сдачи) на биткоин-адрес отправителя (не обязательно тот, с которого был осуществлен перевод). Но, как вы теперь понимаете, в реальности это осуществляется путем разблокирования приватным ключом отправителя и нового блокирования переводимых сумм публичными ключами получателей. Из этого следует очередная особенность:

    5. Биткоины никогда не бывают в пути

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

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

    А как же «двойная трата», спросите вы? Да, действительно, если я отправляю средства на адрес получателя, а они сразу с моего адреса не списываются, значит я могу снова отправить их на адрес другого получателя. Одними и теми же монетами купить пиццу и пиво к ней!

    На самом деле, большинство программных кошельков это не позволяют делать. Но никто не мешает это сделать напрямую, послав подписанное распоряжение о переводе средств в Биткоин-сеть. Что же произойдет в этом случае? Да всё просто! Одна из двух транзакций не пройдет. И не обязательно это будет вторая. Тут возможны два случая:

    1. Обе транзакции попали в один мемпул. Майнер пропустит одну и забракует по нехватке средств вторую.

    2. Транзакции попали в разные мемпулы (к разным майнерам). В блокчейн будет записан блок только с одной транзакцией. После этого вторая транзакция станет невалидной.

    Так что, или пицца, или пиво!

    P.S. Есть еще и другие особенности Биткоина, но об этом в следующей статье.

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 23

      0
      6. Адрес является хешом от скрипта(P2PKH), таким образом можно выполнять простейшие скрипты на не тьюринг полном BitCoin script
        0
        Всё это уже было гораздо более подробно и внятно описано в серии статей «Bitcoin in a nutshell» на хабре за авторством вот этого пользователя — habr.com/ru/users/pavlov_dog/posts
          0
          Да, я знаком с этой работой. Равно как и с многими другими, включая книгу Антонопулоса «Mastering Bitcoin». Но в моем кратком тексте акценты на другом.
          0
          Я всё понимаю, блокчейн, конечно, великая технология. Но пузырь-то зачем надувать?
            0

            Т.к. btc будет всего 21млн (в идеальных условиях), а желающих их приобрести всё больше и больше, пузырь прекрасно надувается без посторонней помощи. Если всего 1% долларов сша вложить в btc — его цена должна быть уже как минимум в 3 раза выше нынешних значений

              0
              желающих их приобрести всё больше и больше
              в этом и проблема, что все они желают лишь продать его подороже другим желающим, а не пойти, купить чего запрещённого или заплатить хакерам за расшифровку содержимого диска.
                0
                Да нет проблем, нормально использование растёт, просто не быстро
                Пока не отладили второй уровень (Lightning например), то сложновато в быту использовать, но через некоторое время только нежелание будет препятствием.
                  0

                  Зачем его использовать в быту? За кофе можно любым другим мусором платить. Биток для серьезных сделок.

                    0
                    Зачем использовать кому? Вам — не знаю. Тому, кому захочется — спросите у него.
                    За всё что угодно можно заплатить всем чем угодно, вопрос кому что хочется и какие препятствия для этого есть.
            0

            Отличная информация с техническими деталями. Мне как раз не хватает опыта в программировании, чтобы понимать такое. Буду пересказывать ещё более простыми словами для совсем неайтишников на своём канале! Очень жду продолжений)

              0
                0

                Да. uanix — мой ник с Bitcointalk

                0
                www.blockchain.com постоянно взламывают и «теряют» средства. Очень не рекомендуется к использованию!
                www.reddit.com/r/Bitcoin/comments/mcd99v/warning_stay_away_from_blockchaincom_wallet
                  0

                  Blockchain.info(com) приведен в тексте исключительно как пример решения с авторизацией пользователя и получения аккаунта.

                  0

                  Наконец-то на хабре стали публиковать не шизофренический бред, а адекватные статьи про крипту.

                    –1

                    В данной статье хватает своей шизофрении.


                    Начать хотя бы с терминологии по отношению к транзакциям — разблокирование, выходы.
                    Какая беда… И бред

                      0

                      А что не так с выходами (outputs) транзакций? Это терминология Сатоши Накамото. У вас к нему претензии? )

                        0
                        А он непогрешим, как пророк Мухаммед, в терминологии нынче?

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

                        Или вы сторонник такого подхода?
                        #define TRUE FALSE //Happy debugging suckers
                          0
                          Я сторонник использования сложившейся и устоявшейся терминологии Биткоина.
                          В транзакциях этой криптовалюты используются термины «Входы» (Inputs) и «Выходы» (Outputs).
                          Например, статья Википедии. И её англоязычная версия. Читаем:
                          Transactions consist of one or more inputs and one or more outputs.

                          Если вы не считаете Вики авторитетным источником, отсылаю вас к браузерам блокчейна Биткоина. Например, вот знаменитая транзакция покупки пиццы за 10 000 биткоинов:

                          image
                            0
                            Я сторонник использования сложившейся и устоявшейся терминологии Биткоина.
                            В транзакциях этой криптовалюты используются термины «Входы» (Inputs) и «Выходы»

                            Т.е. кто-то слона назвал сусликом. Другой поклонник записал это в википедию сказав, что они художники и они так видят у нас такая терминология Биткойна и теперь все?

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

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

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

                                А теперь вернитесь к исходному утверждению, которое вы пытались оспорить.

                                В данной статье хватает своей шизофрении.

                                Начать хотя бы с терминологии по отношению к транзакциям — разблокирование, выходы.
                                Какая беда… И бред


                                Ваша "общепринятость" никак не отрицает общую шизофреничность самой терминологии.

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

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

                                Еще примеров из статьи? Да вот же.
                                Вполне себе бредовое утверждение.
                                Из этого следует, что баланс любого биткоин-адреса — это сумма всех неизрасходованных выходов транзакций (UTXO), которые заблокированы публичным ключом владельца этого адреса.

                                Пусть вас не пугает эта сложность, Биткоин использует криптографические алгоритмы и, с точки зрения криптографии, это достаточно простая схема.

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

                                Общая схема расчетов в биткоине пока еще крайне убога и приходится генерировать массу бреда (и так называемого устоявшегося новояза термина в биткоин) в попытках объяснить ее.

                                Не стоит в порыве фанатического экстаза от новой (или не очень новой) технологии забывать о качестве и логичности действий.

                                  0
                                  Что вы пытаетесь оспорить? Терминологию? Я уже дал разъяснение по этому поводу.

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

                                  И где вы увидели фанатизм? Я лишь объясняю отличия Биткоина от других платежных систем (уф! уже устал это повторять).

                  Only users with full accounts can post comments. Log in, please.