Post
Topic
Board Идеи
Re: POSm (Proof of similarity, доказательство сходства)
by
imhoneer
on 09/02/2022, 21:12:09 UTC

Добрый день. Несколько вопросов если можно.
1. Если совпадений нет, что будет?
2. Так же количество совпадений может быть крайне мало и закончится уже на 3-4 индексе адреса(тут требуется более глубокий расчет)
3. Временная метка записи, как формируется, кто является номиналом метки записи?
4. Какую глобальную задачу решает этот алгоритм?

Конечно можно. Ваши вопросы пронумеровал и пишу также к ним ответы.

1. Если совпадений не будет, то есть в сети не нашлось адреса майнера хотя бы с одним совпадением, то ни блок ни подблок смайнить не получится.

Но такая ситуация практически не возможна. У нас 16-ричная система счисления.

Поэтому нужно всего 16 разных хешей с первым значением, чтобы иметь гарантированное 100% совпадение на любом блоке.

2. К сожалению наоборот, со временем общее количество хешей будет расти, а также будет расти в абсолютных цифрах и количество майнящих хешей на текущем блоке, а вот относительно их всегда будет примерно 6.25% от всех хешей в сети.

Именно из за роста абсолютного количества хешей и не работает мой алгоритм, так как на начальном этапе мы большую часть майняших хешей вставляем в блок и форков практически нет, но блок не бесконечен и при высоком числе майняших хешей особенно с совпадениями 1 и 2 будут исчисляться уже сотнями тысяч, которые не влезут в блок, а потому количество форков из за этого будет только расти. Этот же алгоритм хорошо бореться с форками только на начальных этапах.

3. Метки времени определяются от подблока майнера-лидера, то есть того подблока хеш которого имеет на текущий момент максимальное количество совпадений.

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

И так, время первого поблока имеет диапазон не позже времени предыдущего блока и не раньше, чем текущее время.

Теперь время следующего присоединяемого подблока будет в диапазоне не позже времени первого подблока этого блока и не раньше, чем текущее время.

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

Каждый майнер, что присоединяет свой подблок и формирует текущий блок, считает, что его подблок последний, а потому всему текущему блоку присваивает и время своего подблока.

Таким образом и получается, что у блока всегда время равно последнему входящему в него подблок.

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

Как пример, посмотрите на текущие блоки биткоина там условно надо 19-20 нулей впереди, чтобы смайнить блок. У меня же сеть спокойно может достигать до 100 совпадений на начальных этапах и это число будет быстро расти.

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

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


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