Skip to main content

BitCoin и механизмы контроля

Ограничение эмиссии Bitcoin осуществляется за счет сложности, однако может возникнуть вопрос: а как же регулируется этот параметр в никем не регулируемой системе? Во-первых, в блоки включается время в формате UNIX, то есть количество секунд, прошедших с полуночи первого января 1970 года (так называемая эра UNIX). Время берется из часов системы, на которой был найден блок. Этот параметр напрямую влияет на сложность майнинга: ее периодически пересчитывают так, чтобы среднее время между блоками оставалось равным десяти минутам.

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

Блоки-орфаны — это еще один важный элемент в механизме самоконтроля Bitcoin. Они могут возникать даже при отсутствии неправильного времени — например, когда два разных блока найдены почти одновременно, это вполне штатная ситуация. Допустим, два независимых друг от друга майнера одновременно нашли два блока с требуемыми хешами и о блокеконкуренте узнали только после нахождения своего. У таких блоков будут одни и те же порядковые номера, но сами блоки вряд ли будут идентичными, поскольку адреса для зачисления награды в них будут разными. Но в блокчейне недопустимы блоки с одинаковыми порядковыми номерами. Какой же из них туда войдет? Дело в том, что, скорее всего, разные майнеры будут искать nonce для нового блока, включая в него разные хеши. В цепочку войдет тот блок, хеш которого раньше войдет в следующий.

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


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

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

Popular posts from this blog

Attacking BGP routers for BitCoin hijacking

A few days ago researchers at Dell SecureWorks published the details of an attacker repeatedly hijacking BGP prefixes for numerous large providers such as Amazon, OVH, Digital Ocean, LeaseWeb, Alibaba and more. The goal of the operation was to intercept data between Bitcoin miners and Bitcoin mining pools. They estimated that $83,000 was made with this attack in just four months. Let's take a closer look at  the BGP details of this specific attack.

BGP Attack details Our friends at Dell SecureWorks decided not to name the network from which the hijacks originated. As a result we won’t name the exact Autonomous System either, instead we will suffice by saying that the originator of this hijack is a network operating in Eastern Canada.



Initial experiment
BGPmon detected the first BGP attack by this Canadian Autonomous System on October 8th 2013. For about 14 minutes a more specific /24 IP prefix for a Palestinian network was hijacked. Looking at geographical scope of the announcements a…

Виртуальная сеть на базе Cisco CSR 1000V

Во время обучения, для того чтобы лучше разобраться как работает та или иная технология я пользовался и программой моделирования сетей DYNAGEN, и удаленным доступом к стенду с реальным оборудованием, любезно предоставленным нам организаторами обучения. Это, конечно же очень помогало, но меня все время не оставляла мысль найти какой-то вариант, который позволил бы иметь ощущение реальности при работе с устройством и в тоже время чтобы я мог его крутить так как мне захочется и в любое время, когда мне захочется. Я пробовал и GNS3, и IOU, при этом продолжая поиски. Так я узнал о таком продукте от CISCO как CSR 1000V Cloud Services Routerhttp://www.cisco.com/c/en/us/products/routers/cloud-services-router-1000v-series/index.html , скачать который можно в нашей подборке Cisco IOS. Небольшие выдержки из документации:
«Развернутый на виртуальной машине Cisco CSR 1000V с IOS XE обеспечивает точно такую же функциональность, как если бы IOS XE работала на традиционной аппаратной платформе Cis…

Проникновение в сеть оператора связи

Перво наперво стоит провести анализ идущего мимо сетевого трафика с помощью любого сетевого анализатора в "неразборчивом" режиме работы сетевой карты (promiscuous mode). В качестве сетевого анализатора для подобных целей замечательно подходит Wireshark или CommView. Чтобы выполнить этот этап, хватит и пары часов работы сетевого анализатора. По прошествии этого времени накопится достаточно данных для проведения анализа перехваченного трафика. И в первую очередь при его анализе следует обратить внимание на следующие протоколы: протоколы коммутации (STP, PVST+, CDP, DTP, VTP, и им подобные)протоколы маршрутизации (RIP, BGP, EIGRP, OSPF, IS-IS и другие)протоколы динамической конфигурации узла (DHCP, BOOTP)открытые протоколы (telnet, rlogin и подобные) Что касается открытых протоколов, – вероятность того, что они попадутся во время сбора пакетов проходящего мимо трафика в коммутируемой сети, достаточно мала. Однако, если такого трафика много, то в обследуемой сети явно наблюдаютс…