Skip to main content

Bitcoin изнутри или как сделать залив с майнинга

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

Одно из первых подробных технических описаний Bitcoin на русском было опубликовано в начале 2011 года на Хабре в статье «Bitcoin. Как это работает». Как правильно написано: «У Bitcoin есть такая особенность — чем больше начинаешь в нем разбираться, тем больше возникает новых вопросов. Есть только два выхода —либо разобраться до конца, либо просто научиться пользоваться интерфейсом программы. Иначе не будет покидать чувство, что где-то обязательно должен быть подвох».

BitCoin mining pools

Что такое криптовалюта? Если кратко, то это децентрализованная валюта с защитой от повторного использования, основанной на достижениях современной криптографии. Идея состоит в том, что каждая транзакция необратима и подтверждается вновь генерируемыми блоками, отвечающими определенным требованиям. Эти блоки вычисляются всем сообществом, объединяются в цепочку и доступны всем для просмотра в виде единой базы данных. Процедура вычисления блоков называется майнинг.

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

Технология Bitcoin является одним из первых успешных практических решений так называемой задачи о византийских генералах. Кратко она формулируется так: как установить доверие между сторонами, связанными только по каналу связи, которому нельзя доверять? Одним из ключевых моментов в решении служит криптографический метод proof-of-work — те самые «бесполезные» вычисления, которые заведомо должны проводиться долго, но доказательство того, что они были, должно проверяться моментально.

Bitcoin-клиенты делятся на два вида: толстые/тяжелые (Bitcoin-Qt, Armory) и тонкие/легкие (Electrum, Multibit). Отличие заключается в том, что толстые клиенты для своей работы требуют локальную копию всей базы данных с логом всех транзакций за все время существования сети, а тонкие клиенты выкачивают информацию из децентрализованной сети только по мере необходимости. Для существования сети необходимо наличие в ней толстых клиентов, однако и тонкие клиенты дают возможность полноценно использовать Bitcoin — например, это особенно логично на смартфонах.

Со временем размер базы данных будет только расти, так же как и емкость носителей информации. Из чего же состоит БД? БД — это блокчейн, цепочка блоков данных в формате JSON. Каждый блок содержит всю необходимую для функционирования сети информацию, свой порядковый номер и хеш-сумму предыдущего блока. Естественно, в самом первом блоке такой хеш-суммы нет. Причем к хешу (шестнадцатеричному числу) выдвигаются строгие требования: он должен начинаться с определенного количества нулей, а если точнее, должен быть меньше специального параметра под названием «bits». Обратно пропорциональный ему параметр называется «сложность». Этот механизм позволяет надежно хранить все прочие необходимые данные в распределенной сети, ведь если изменить хотя бы один символ в блоке, то его хеш изменится целиком и все нули моментально пропадут.

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

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

Comments

Popular posts from this blog

Почему инженеры электросвязи становятся продажниками

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



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

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

Кому нужны дропы?

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

полезно посмотреть начинающим дропам - как вести себя со своим дроповодом, и что нужно рассказывать в полиции, в случае если вы туда попали



Сналить деньги из банкомата можно набором кода

Каспер и его охотники за призраками в доспехах не так давно обнаружили изъян в защите банкоматов, с помощью которого дроповоды могут снимать крупные суммы денег вообще без карты.

Cлужбы безопасности некоторых крупных банков в странах Европы, Латинской Америки и Азии, в которых дроповоды уже пытались воспользоваться выявленным изъяном начали собственное внутреннее расследование.



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



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

Взломщик банкоматов "Тюпкин"

После установки троянской программы в банк…

Black Hat SEO или бот для скликивания контекстной рекламы

На днях мне стало интересно, а каким образом с точки зрения «черных» методов SEO могут быть использованы хакерские программы – например, путем генерации трафика для заинтересованных ресурсов или скликивания контекстной рекламы AdWords или Яндекс.Директ
Понятно, что увеличение числа посетителей на сайте интернет-магазина или компании, занимающейся недвижимостью, вероятнее всего положительно скажется на их доходах. Поэтому разработка подобного типа программ — вполне себе обыденное дело, и появились такие программы уже давно. По большей части таких ботов можно разделить на два класса — это различного рода Adware, которое распространяется вместе с популярными программами, или трояны, которые осуществляют более серьезную модификацию системы.  Win32/Patched.P Давай для начала рассмотрим достаточно экзотический, но от этого не менее интересный способ подмены результатов поиска в популярных поисковых сервисах Яндекс и Google, который был реализован в троянской программе Win32/Patched.P (ESET)…

М9 - точка обмена трафиком • Московский INTERNET EXCHANGE • MSK-XI

Вот так всё начиналось
Изначально был всего один провайдер - Релком. Не было конкурентов - не было проблем. Рунет еще делал свои первые шаги, и все русскоязычные ресурсы были сосредоточены в одном месте. Позже Релком развалился на Релком и Демос, стали появляться другие провайдеры. Рунет тем временем подрос и... распался на множество отдельных сетей-сегментов, контролируемых разными провайдерами. Разумеется, конечные пользователи имели доступ ко всем ресурсам рунета, но прямого взаимодействия между провайдерами не было. Поэтому трафик шел с сервера одного провайдера по огромной петле через Америку, потом Германию, и только потом возвращался на сервер другого провайдера. Имела место неоправданная потеря и в скорости, и в деньгах. Пока трафик был незначительным, это мало кого волновало, но интернет бурно развивался, трафик по рунету стремительно увеличивался, и в один прекрасный день крупные провайдеры Москвы (по сути, Демос и Релком) сели друг напротив друга и решили, что им надо налаж…

Как работает банк со своими корреспондентами по SWIFT

Итак, наш банк имеет открытые корреспондентские счета в США (CITIBANK N.A. NEW YORK), в Европе (VTB BANK DEUTSCHLAND AG), в России (Промсвязьбанк Москва и Собинбанк Москва).



Соответственно, все расследования по платежам происходят через эти банки согласно  установленным корреспондентским отношениям с использованием соответствующих форматов SWIFT MT-195/295, MT-196/296, MT-199/299 и MT-192/292

Кроме прямых корреспондентских отношений с банками, нашим банком установлены отношения и с другими финансовыми организациями через процедуру обмена ключами, что даёт возможность использовать SWIFT-форматы МТ-195, МТ-196 и МТ-199 для проведения процедуры расследования по стандартным платежам и платежам с покрытием:

- DEUTSCHE BANK TRUST COMPANY AMERICAS USA
- COMMERZBANK AG Germany
- CITIBANK N.A. London
- CITIBANK N.A. Brussels
- BANQUE DE COMMERCE ET DE PLACEMENTS S.A. Geneva
- NORVIK BANKA JSC  LV
- ABLV BANK AS  LV

В среднем процедура расследования занимает от 3 до 14 дней (если необходимо уточнить дета…