Post
Topic
Board Кодеры
Merits 1 from 1 user
Re: Асикостойкий алгоритм PoW
by
1mk3r
on 14/08/2018, 13:58:17 UTC
⭐ Merited by chimk (1)
Кража решения тривиальна, оно содержится в блоке. Это позволяет практически даром плодить орфанов в неограниченном количестве. Чтобы тебе было понятнее, представь, ты выиграл в лотерею, но получение тобой выигрыша зависит от того признает тебя победителем следующий победитель или нет, а победителями себя вместе с тобой объявили голодранцы усiх краiн. Технически это полный треш и судя по всему желающих быть обворованными практически нет. В битке, не смотря на то что тоже требуется подтверждение следующего победителя, создание орфана стоит уйму лепездричества. Поэтому данная монета хоть и "жива", но непопулярна. Закапывай стюардессу.
Вы правы. Каждый может повторить это и заспамить сеть.
Я понял в чем была моя ошибка. Спасибо.


Тогда у меня такая модификация алгоритма:

Допустим, майнер Вова пытается добыть блок № 2.
Задача заключается в том, что заголовок блока № 1 (предшествующего добываемому) плюс ноли для сложности, признается, согласно протоколу, публичным адресом на котором лежат 50 монет.
Вова пытается подобрать ключ к этому адресу (это может быть не ecdsa, а что нибудь попроще, чтобы майнилось быстро)
Как только он его подбирает ключ, он публикует транзакцию подписанную найденным приватным ключом и эта транзакция, сама по себе, становится блоком по факту своего первого появления. В этой транзакции содержится поручение об отправке вышеуказанных 50 монет на нормальный адрес Вовы, а также транзакции Маши, Пети и иная нужная техническая информация, в том числе пересчитанная сложность, таймстамп, и тому подобное.
Какие проблемы в таком подходе?

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