<<  >> (p.5)
    Author Topic: Делаем криптовалюту  (Read 36902 times)
    amaclin
    Legendary
    *
    Offline

    Activity: 1260
    Merit: 1019


    View Profile
    January 18, 2017, 01:11:53 PM
     #81

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

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

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

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

    Quote
    Не знаю точно, как сейчас это решается, но вроде кошель с
    более длинной цепочкой банит такие хосты на некоторое время.
    За что банить? Ну нет у человека блока 1000 - он и майнил себе от имеющегося у него 999-ого

    Quote
    Будучи забаненым большинством пиров, горе-майнер еще более безнадежно отстанет от главной цепочки.
    угу

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

    Quote
    Поэтому я и предлагаю внести элемент лотереи. Можно еще таким элементом
    сделать перерасчет сложности не раз в 2 недели, а раз в час например ))
    и ромбики нарисовать в эбауте.
Page 4
Viewing Page: 5