Нараян Прасти



Download 9,22 Mb.
Pdf ko'rish
bet14/47
Sana26.02.2022
Hajmi9,22 Mb.
#472912
1   ...   10   11   12   13   14   15   16   17   ...   47
Bog'liq
Прасти Н. - Блокчейн. Разработка приложений - 2018


Глава 2 
____________________________________ 
[ 48 ] 
___________________________________ 
Если узел сети получает два действительных блокчейна, то принимается версия, 
у которой совокупная сложность блоков выше. 
Например, если узел сети заменяет несколько транзакций в блоке, он должен затем 
вычислить nonce всех последующих блоков. К тому времени, когда он найдет зано-
во число nonce для последующих блоков, сеть создаст еще много новых блоков, 
поэтому сеть отвергает эту цепочку. 
Метка времени 
Для формулы, по которой вычисляется целевое число, требуется текущая метка 
времени. Кроме этого, каждый блок содержит метку времени в заголовке. Ничто не 
мешает майнеру использовать фиктивную метку времени, пока он добывает новый 
блок, но обычно они так не поступают, потому что не пройдут проверку метки вре-
мени, и другие узлы не примут этот блок. Следовательно, майнер напрасно потра-
тит ресурсы. Когда майнер публикует новый блок, его метка времени проверяется 
сравнением, превышает ли она метку времени предыдущего блока. Если майнер 
использует метку времени, которая больше, чем текущая метка, параметр сложно-
сти (difficulty) будет меньше, потому что его значение обратно пропорционально 
значению метки времени. Следовательно, если другой майнер предложит блок,
у которого метка времени совпадает с текущей меткой, то сеть предпочтет именно 
этот блок, т. к. у него сложность выше. Если майнер использует метку времени, 
которая больше, чем у предыдущего блока, но меньше, чем текущее время, то 
сложность будет выше, что потребует больше времени на решение задачи. За вре-
мя, пока добывается блок, сеть произведет другие блоки, и этот блок будет откло-
нен, как имеющий меньшую сложность. Вот почему майнеры всегда используют 
точные метки времени, иначе они ничего не заработают. 
Число nonce 
Nonce — это 64–битное беззнаковое целое число. Оно является решением задачи. 
Майнер продолжает последовательно увеличивать число, пока не найдет решение. 
Сейчас вы можете предположить, что майнер, располагающий самой большой вы-
числительной мощью, всегда будет побеждать в гонке. Нет, это не так. 
Хеш блока, который добывает майнер, всегда разный для разных майнеров, потому 
что он зависит от таких параметров, как метка времени, адрес майнера и прочих, 
которые не могут быть одинаковыми у всех майнеров. Следовательно, это не гонка 
за решением. Скорее, это лотерея. Разумеется, шансы майнера на победу зависят от 
вычислительной мощности, но это не значит, что самый мощный майнер всегда 
будет находить следующий блок. 


Принципы работы Ethereum 
____________________________________ 
[ 49 ] 
___________________________________ 
Время блока 
Формула вычисления сложности, которую вы видели раньше, содержит 10-секунд-
ную задержку, которая гарантирует, что разница времени майнинга между роди-
тельским и дочерним блоком будет находиться в пределах 10–20 секунд. Но почему 
именно 10–20 секунд и никакое другое значение? И зачем вводить ограничение
с постоянной разностью времени вместо того, чтобы установить постоянную слож-
ность? 
Представьте, что мы имеем постоянную сложность, и майнерам просто нужно най-
ти число nonce, при котором хеш блока меньше или равен значению target. Предпо-
ложим, сложность задачи высокая. В таком случае пользователи сети не смогут да-
же приблизительно предположить, сколько времени займет передача эфира от од-
ного пользователя другому. Если вычислительной мощности сети недостаточно, 
поиск решения (и проводка транзакции) может длиться весьма долго. Иногда сети 
может повезти, и тогда решение будет найдено очень быстро. Но такой сети будет 
очень сложно привлекать пользователей, потому что люди всегда хотят знать, 
сколько времени займет транзакция, аналогично тому, как при переводе с одного 
банковского счета на другой банковский счет мы представляем, сколько времени 
занимает процедура перевода. Если сложность задачи низкая, это угрожает безо-
пасности блокчейна, потому что мощные майнеры будут добывать блоки намного 
быстрее слабых майнеров и могут захватить управление децентрализованным при-
ложением. Невозможно найти постоянное значение сложности, которое гарантиру-
ет стабильность сети, потому что вычислительная мощность сети непостоянна. 
Теперь вы понимаете, почему мы всегда должны знать среднее значение времени,
в течение которого сеть вырабатывает новый блок. Вопрос в том, какое усреднен-
ное время считать приемлемым в диапазоне от одной секунды до бесконечности? 
Маленькое усредненное время достигается снижением сложности, большое усред-
ненное время достигается увеличением сложности. Но каковы достоинства и
недостатки маленького и большого усредненного времени? Прежде, чем говорить 
об этом, мы должны понять, что такое 
устаревшие блоки

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


Download 9,22 Mb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   ...   47




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish