flamehowk (OP)
|
|
December 09, 2019, 10:15:16 AM Last edit: December 10, 2019, 06:06:30 PM by xandry |
|
Мой пул будет искать блоки так быстро, что сложность сети возрастет и соломайнеры будут находить блок раз в тыщу лет... Ну пусть ищут ))
За счет чего? Например мы имеем сеть из 1000 компьютеров. 900 компьютеров у других участников сети и 100 в Вашем пуле. Общая вероятность нахождения блока для любого участника сети = 1/1000 Следовательно на 1000 блоков 900 подписей найдут другие участники, а 100 Ваш пул. Вычисляем Вашу награду - 100 найденных подписей / 100 человек в пуле = 1 награда/1000 блоков, что в свою очередь = вероятности 1/1000... Что и требовалось доказать... Но если любой сможет создать пул - то получится, что все будут майнить только на пулах, как это и обстоит сейчас с основными криптовалютами
Совершенно верно. Пулы - лишь средство сделать более равномерным получение вознаграждения. Давайте элементарно посчитаем. Допустим, что у нас есть блок каждые 2 минуты. Это значит, что награду смогут получить 30 майнеров в час, или 720 майнеров в сутки, или 262800 майнеров в год. То есть, если у нас сеть вырастет всего до 300 тысяч участников, то каждый из них УЖЕ вынужден будет ждать МИНИМУМ 1 год постоянного майнинга до получения вознаграждения. А учитывая, что на его шансы будет влиять постоянно растущее количество участников, то это может растянуться и на большее время. А что делать, если участников станет 10 млн? А это всего лишь небольшая страна... Соответственно, ПУЛирование майнинга в условиях, когда выполняется завещание Satoshi Nakamoto "one-CPU-one-vote" является НЕОБХОДИМОСТЬЮ, для того, чтобы равномизировать и стабилизировать получение вознаграждения всеми участниками сети. В идеале вообще вся сеть должна работать как ОДИН БОЛЬШОЙ ПУЛ. Но, нужно ведь понимать, что ПУЛы не увеличивают производительность вычислений. Ни отдельного майнера, ни даже группы майнеров. НИКАК! (ну, если речь идет именно о применении моего алгоритма).
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
kzv
Legendary
Offline
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
|
|
December 09, 2019, 10:24:23 AM |
|
Кстити, а как вы собрались привязывать кошельки к ип адресу? Формулу для приватного ключа в вашем алгоритме покажите пожалуйста?
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 10:30:02 AM |
|
Кстити, а как вы собрались привязывать кошельки к ип адресу? Формулу для приватного ключа в вашем алгоритме покажите пожалуйста?
А какая проблема сделать хэш от приватного ключа + IP и проверять его при генерации каждого блока? Для этого что - нужна специальная формула?
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
kzv
Legendary
Offline
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
|
|
December 09, 2019, 10:35:08 AM Last edit: December 09, 2019, 11:43:41 AM by xandry |
|
Мой пул будет искать блоки так быстро, что сложность сети возрастет и соломайнеры будут находить блок раз в тыщу лет... Ну пусть ищут ))
За счет чего? Например мы имеем сеть из 1000 компьютеров. 900 компьютеров у других участников сети и 100 в Вашем пуле. Общая вероятность нахождения блока для любого участника сети = 1/1000 Следовательно на 1000 блоков 900 подписей найдут другие участники, а 100 Ваш пул. Вычисляем Вашу награду - 100 найденных подписей / 100 человек в пуле = 1 награда/1000 блоков, что в свою очередь = вероятности 1/1000... Что и требовалось доказать... Это работает немножко не так... В вашей схеме распределения, вероятность хоть что-то получить за потраченную электроэнергию, у пользователя пула = 10%, а у соломайнера = 0.1%. Поэтому когда в сеть придут еще 1000 майнеров, то 900 из них будут майнить на моем пуле, а потом и все остальные туда подтянутся )) Кстити, а как вы собрались привязывать кошельки к ип адресу? Формулу для приватного ключа в вашем алгоритме покажите пожалуйста?
А какая проблема сделать хэш от приватного ключа + IP и проверять его при генерации каждого блока? Для этого что - нужна специальная формула? Что мне помешает скормить алгоритму майнинга левый ип адрес?
|
|
|
|
gold969
|
|
December 09, 2019, 11:13:57 AM |
|
Кстити, а как вы собрались привязывать кошельки к ип адресу? Формулу для приватного ключа в вашем алгоритме покажите пожалуйста?
А какая проблема сделать хэш от приватного ключа + IP и проверять его при генерации каждого блока? Для этого что - нужна специальная формула? я чет не понимаю,.. как мне быть например, у меня мегафоновский модем, он автоматом 2 раза в сутки (при смене тарифа) и при каждой перезагрузки меняет ip?
|
|
|
|
Beoga
Legendary
Offline
Activity: 2646
Merit: 1141
|
|
December 09, 2019, 11:55:33 AM |
|
Что мне помешает скормить алгоритму майнинга левый ип адрес?
Т.е. пул будет просто генерить связки: адрес - IP для каждого майнера? Это будет несколько напряжно, я думаю. Навряд ли это будут делать для неизвестной валюты. Возможно потом, если будет экономический смысл.
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 02:59:01 PM Last edit: December 10, 2019, 06:07:40 PM by xandry |
|
Это работает немножко не так... В вашей схеме распределения, вероятность хоть что-то получить за потраченную электроэнергию, у пользователя пула = 10%, а у соломайнера = 0.1%. Поэтому когда в сеть придут еще 1000 майнеров, то 900 из них будут майнить на моем пуле, а потом и все остальные туда подтянутся ))
Боюсь, что Вы ошибаетесь ИМЕННО в силу того, что не понимаете сути моего алгоритма. Смотрите по какой схеме работает обычный пул: Здесь обычные пользователи вынуждены искать Хэш во ВСЕЙ области значений nonce. А пользователи, которые подключены к пулу, ищут только в выделенном сегменте. Отсюда и происходит выигрыш в скорости нахождения подходящего хэша и большем суммарном вознаграждении. А теперь смотрите как будет работать пул, если POW-алгоритм будет основан на моем алгоритме: Видите? Обычные пользователи ищут ТОЧНО в таком же спектре значений, как и пользователи, которые подключены к пулу. Так что - никакого выигрыша не будет. Что мне помешает скормить алгоритму майнинга левый ип адрес?
Ну, здесь не совсем понятно, потому что сеть на этот IP будет отсылать запросы и принимать с него данные, так что не совсем понятно, что Вы имеете ввиду под "левым" IP. Если речь идет об анонимизации, то это отдельная большая тема и в данном случае она не рассматривается. У меня есть наработки по этим вопросам, но они в данный проект не входят. я чет не понимаю,.. как мне быть например, у меня мегафоновский модем, он автоматом 2 раза в сутки (при смене тарифа) и при каждой перезагрузки меняет ip?
По этому поводу не переживайте, это банальная техническая загвоздка, которая называется "динамическое выделение IP адресов". Оно вполне решаемо. Единственное, что Вы потеряете, так это то, что в моменты смены Ваших IP адресов Вашему майнеру придется заново переподключаться к сети и связывать Ваш адрес кошелька с Вашим новым IP. Это решается. Не велика проблема. Т.е. пул будет просто генерить связки: адрес - IP для каждого майнера? Это будет несколько напряжно, я думаю. Навряд ли это будут делать для неизвестной валюты. Возможно потом, если будет экономический смысл.
Это будет делать не пул. Но не важно. Да, связка кошелек-IP. Технически этого можно и не делать. Но это хорошая защита против бот-нетов. То есть тут вопрос стоит так - хотим защиту от ботов? Тогда делаем этот алгоритм. Не хотим? Тогда не делаем. Технически это можно организовать опционально. Ну а что касается "напрягов", то это зависит от того - что Вы имеете ввиду. Если то, что компьютеру придется хранить немного лишней информации - то Вы этого не заметите. А если речь идет об анонимизации, то, как я уже говорил, это другой отдельный вопрос и в рамках этого проекта я его рассматриваю.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
Beoga
Legendary
Offline
Activity: 2646
Merit: 1141
|
|
December 09, 2019, 03:12:08 PM |
|
Т.е. пул будет просто генерить связки: адрес - IP для каждого майнера? Это будет несколько напряжно, я думаю. Навряд ли это будут делать для неизвестной валюты. Возможно потом, если будет экономический смысл.
Это будет делать не пул. Но не важно. Да, связка кошелек-IP. Технически этого можно и не делать. Но это хорошая защита против бот-нетов. То есть тут вопрос стоит так - хотим защиту от ботов? Тогда делаем этот алгоритм. Не хотим? Тогда не делаем. Технически это можно организовать опционально. Ну а что касается "напрягов", то это зависит от того - что Вы имеете ввиду. Если то, что компьютеру придется хранить немного лишней информации - то Вы этого не заметите. А если речь идет об анонимизации, то, как я уже говорил, это другой отдельный вопрос и в рамках этого проекта я его рассматриваю. Я имел ввиду не ботнет в данном случае, а продиводействие гпу и асик майнерам. Ведь получается, что для распараллеливания требуется еще и IP адреса к каждому адресу добавлять. То же и для пулов - им потребуются связки адрес кошелька -IP, а это "напряжно" делать.
|
|
|
|
A-Bolt
Legendary
Offline
Activity: 2335
Merit: 2384
|
|
December 09, 2019, 03:55:33 PM |
|
Ну, здесь не совсем понятно, потому что сеть на этот IP будет отсылать запросы и принимать с него данные, так что не совсем понятно, что Вы имеете ввиду под "левым" IP.
Вот есть, например, нода М с IP 1.1.1.1, которая смайнила блок и отправила его ноде A. Нода А имеет непосредственное соединение с нодой M, и поэтому она знает, что нода М имеет IP 1.1.1.1, и, следовательно, нода A может проверить валидность блока, сгенерированного нодой M. Есть нода B, которая имеет непосредственное соединение с нодой A, но не имеет соединения с нодой M. Нода A ретранслирует ноде B блок, сгенерированный нодой M, но нода B не знает что нода M имеет IP 1.1.1.1, и, следовательно, валидировать блок, сгенерированный нодой M она не сможет. Проблема?
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 04:44:21 PM |
|
Есть нода B, которая имеет непосредственное соединение с нодой A, но не имеет соединения с нодой M. Нода A ретранслирует ноде B блок, сгенерированный нодой M, но нода B не знает что нода M имеет IP 1.1.1.1, и, следовательно, валидировать блок, сгенерированный нодой M она не сможет. Проблема?
Нет, не проблема, если выбрать другую архитектуру решения. Должна быть глобальная распределенная БД, в которой каждому кошельку будет соответствовать отдельный IP. Так же как и Блокчейн, только отдельная БД, которая будет отвечать за эти связки. Вот и все дела. Вполне реализуемо.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
kzv
Legendary
Offline
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
|
|
December 09, 2019, 05:52:39 PM |
|
Видите? Обычные пользователи ищут ТОЧНО в таком же спектре значений, как и пользователи, которые подключены к пулу. Так что - никакого выигрыша не будет.
В каком кто ищет диапазоне - это их личные половые проблемы. Решение все равно распределено равновероятно по всей области значений. Так что считать надо вероятности. Берем вашу же постановку задачи: 900 пользователей майнят соло, 100 пользователей майнят в пуле. Значит вероятность найти блок у пула = 10%, у одного соломайнера = 0.1%. Вероятность впустую сжечь электричество у пула = 90%, у соломайнера = 99.9% Вопросы есть? Нет, не проблема, если выбрать другую архитектуру решения. Должна быть глобальная распределенная БД, в которой каждому кошельку будет соответствовать отдельный IP.
Кто будет писать в эту базу данных? Сами майнеры? Что помешает майнеру с ип адресом 1.1.1.1 записать в базу значение якобы своего ип адреса 2.2.2.2 ?
|
|
|
|
A-Bolt
Legendary
Offline
Activity: 2335
Merit: 2384
|
|
December 09, 2019, 05:58:12 PM |
|
Нет, не проблема, если выбрать другую архитектуру решения. Должна быть глобальная распределенная БД, в которой каждому кошельку будет соответствовать отдельный IP. Так же как и Блокчейн, только отдельная БД, которая будет отвечать за эти связки. Вот и все дела. Вполне реализуемо.
И каким образом отдельно взятая нода сможет проверить подлинность записей в этой БД? На самом деле, для проверки соответствия между IP и идентификатором кошелька достаточно, чтобы нода, смайнившая блок, включала свой IP в заголовок блока. Тогда любая нода, получившая блок, сможет напрямую по IP постучаться к ноде, IP которой прописан в блоке, и спросить её идентификатор кошелька. Тогда и никакой БД не надо. Есть только одна проблема: при достаточном количестве нод в сети, майнящая нода, выплюнувшая в сеть блок, ляжет под количеством запросов с каждой ноды, верифицирующей поступивший блок.
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 06:51:32 PM Last edit: December 10, 2019, 06:05:58 PM by xandry |
|
В каком кто ищет диапазоне - это их личные половые проблемы. Решение все равно распределено равновероятно по всей области значений. Так что считать надо вероятности.
Опять ошибаетесь - это не их личные проблемы, это строго заложено в алгоритме, которого Вы не понимаете. Так что считать вероятности, когда вместо них имеются предопределенности абсолютно не разумно. Берем вашу же постановку задачи: 900 пользователей майнят соло, 100 пользователей майнят в пуле. Значит вероятность найти блок у пула = 10%, у одного соломайнера = 0.1%. Вероятность впустую сжечь электричество у пула = 90%, у соломайнера = 99.9% Вопросы есть?
Конечно же есть. Ваша "вероятностная" математика не выдерживает никакой критики. При использовании моего алгоритма вероятность найти блок у пула нужно сравнивать не с ОДНИМ отдельно взятым майнером, а со всеми остальными майнерами - то есть с 900 человекам. Следовательно их вероятность = 90% против 10% у Вашего пула. Но я понимаю, что Вы не понимаете о чем идет речь и потому не можете переключиться от типичных представлений. Но потому я и придумал новый алгоритм, чтобы решать старые проблемы, а не оставить все как есть. Давайте я в последний раз попытаюсь Вам объяснить... Сейчас обсуждаем обычный майнинг, к которому Вы привыкли. Возможные значения nonce лежат в поле от 0 до 4294967295 Каждый отдельный майнер для нахождения хэша должен перебрать все значения nonce от 0 до 4294967295. Каждый майнер, который находится в пуле, перебирает только часть этого диапазона, например для первого майнера это 0 до 1000000000, для второго майнера это от 1000000001 до 2000000000, для третьего майнера это диапазон от 2000000001 до 3000000000, а для четвертого это диапазон от 3000000001 до 4294967295. Таким образом каждый майнер, который состоит в пуле перебирает в 4 раза меньше значений. Значит затрачивает в 4 раза меньше времени. Значит - целый пул найдет блок быстрее. Теперь рассмотрим майнинг на моем алгоритме. Возможные значения лежат в поле от 0 до 115792089237316195(…)584007913129639935 (полное число занимает 78 знаков) НИ ОДИН майнер не может их перебрать. НИКОГДА. Поэтому каждый майнер ищет в своем узком диапазоне который предопределен его Заглавным Хэшем, который зависит от адреса его кошелька. Таким образом один майнер будет искать в диапазоне, например от 0 до 10, другой в диапазоне от 1000000 до 1000010, третий в диапазоне от 540 до 550 и так далее. Как ни крути, а каждый майнер, в пуле он или нет, будет иметь АБСОЛЮТНО равные возможности найти подходящий хэш, что и все остальные. Пул здесь не играет никакой роли. Кто будет писать в эту базу данных? Сами майнеры? Что помешает майнеру с ип адресом 1.1.1.1 записать в базу значение якобы своего ип адреса 2.2.2.2 ?
Вы зря впадаете в такое паническое настроение. Вся Ваша проблема в том, что Вы просто не понимаете алгоритма, который я описал. Но я ведь не заставляю Вас его учить. Не понимаете и ладно. Не нужно делать из этого для себя проблему. Ответ на Ваш последний вопрос очень прост - тот же, кто пишет и БЛОКЧЕЙН. А кто пишет блокчейн Вы знаете? Программа. А вот на последний Ваш вопрос я Вам отвечу очень просто. НИКТО не помешает. Но именно на этот адрес он и получит все сообщения, и если он будет не корректен, то сообщения уйдут в пустоту и майнер, который соврал насчет своего IP адреса просто будет исключен из сети. Неужели Вы этого не понимаете? И каким образом отдельно взятая нода сможет проверить подлинность записей в этой БД?
На самом деле, для проверки соответствия между IP и идентификатором кошелька достаточно, чтобы нода, смайнившая блок, включала свой IP в заголовок блока. Тогда любая нода, получившая блок, сможет напрямую по IP постучаться к ноде, IP которой прописан в блоке, и спросить её идентификатор кошелька. Тогда и никакой БД не надо. Есть только одна проблема: при достаточном количестве нод в сети, майнящая нода, выплюнувшая в сеть блок, ляжет под количеством запросов с каждой ноды, верифицирующей поступивший блок.
Вот, сразу видно, человек понимающий в сути дела. Все верно. Поэтому и нужно применить решение, которое позволит от этой проблемы избавиться. Технически на основе такой базы можно даже создать алгоритм анонимизации в сети, который не будет эту сеть избыточно нагружать и при этом будет гарантировать довольно высокую степень анонимности. Но это уже... совсем другая сказка. Если захотите - этот вопрос можно будет отдельно обсудить, если дело дойдет до его конкретной реализации в коде. А сейчас пока дело все еще стоит на вопросе ЗАМЕНЫ POW-алгоритма. Так что предлагаю сосредоточиться именно на этом.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
kzv
Legendary
Offline
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
|
|
December 09, 2019, 07:10:56 PM |
|
Теперь рассмотрим майнинг на моем алгоритме. Возможные значения лежат в поле от 0 до 115792089237316195(…)584007913129639935 (полное число занимает 78 знаков) НИ ОДИН майнер не может их перебрать. НИКОГДА.
Жаль вас разочаровывать, но вы изобрели велосипед с педалями на руле... Поле nonce уже лет семь никто не перебирает. Сейчас перебирают extraNonce, максимальный размер которого, по слухам, ограничен только размером блока, то есть это число от нуля до что-то около два в степени 1024*1024*8 . А вот на последний Ваш вопрос я Вам отвечу очень просто. НИКТО не помешает. Но именно на этот адрес он и получит все сообщения
Какие сообщения?
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 08:42:46 PM |
|
Жаль вас разочаровывать, но вы изобрели велосипед с педалями на руле... Поле nonce уже лет семь никто не перебирает. Сейчас перебирают extraNonce, максимальный размер которого, по слухам, ограничен только размером блока, то есть это число от нуля до что-то около два в степени 1024*1024*8
Да Вы меня и не разочаровали. Ваш уровень познаний в протоколах хэширования, равно как и во всем остальном, что связано с Биткойном, и так виден не вооруженным глазом. А после этого заявления, дак Вы себя просто таки "раскрыли" во всей красе... Ладно... Думаю, что нужно заканчивать этот разговор, Ваш уровень подготовки слишком слаб, для того, чтобы понять криптографические и сетевые протоколы. До сей поры я отвечал на Ваши вопросы, потому что они были из разряда "FAQ" и ответы на эти вопросы могут быть полезны тем, кто не в теме. Но теперь Вы уже начинаете откровенно ерничать по причине того, что не в состоянии аргументированно критиковать мою разработку, а из-за дурного характера, видимо - очень хочется. В такой ситуации я не вижу больше смысла продолжать Вам отвечать на Ваши вопросы. Извините.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
A-Bolt
Legendary
Offline
Activity: 2335
Merit: 2384
|
|
December 09, 2019, 08:58:01 PM |
|
Да Вы меня и не разочаровали. Ваш уровень познаний в протоколах хэширования, равно как и во всем остальном, что связано с Биткойном, и так виден не вооруженным глазом. А после этого заявления, дак Вы себя просто таки "раскрыли" во всей красе... Ладно... Думаю, что нужно заканчивать этот разговор, Ваш уровень подготовки слишком слаб, для того, чтобы понять криптографические и сетевые протоколы. До сей поры я отвечал на Ваши вопросы, потому что они были из разряда "FAQ" и ответы на эти вопросы могут быть полезны тем, кто не в теме. Но теперь Вы уже начинаете откровенно ерничать по причине того, что не в состоянии аргументированно критиковать мою разработку, а из-за дурного характера, видимо - очень хочется. В такой ситуации я не вижу больше смысла продолжать Вам отвечать на Ваши вопросы. Извините. Пальцы тут не надо растопыривать. Вы сами если в чём-то и профессионал, то только в сборе бабла под скамные проекты. Бабло собранное под революционный ASIC уже закончилось? Решили окучивать противоположную тему?
|
|
|
|
flamehowk (OP)
|
|
December 09, 2019, 09:18:14 PM |
|
Пальцы тут не надо растопыривать. Вы сами если в чём-то и профессионал, то только в сборе бабла под скамные проекты. Бабло собранное под революционный ASIC уже закончилось? Решили окучивать противоположную тему? Я так понимаю, что чем больше у людей монеток в статусе - тем менее адекватно они могут вести беседу. Я никаких скамных проектов не создавал. VenusMINE до сих пор остается самой быстрой архитектурой ASIC-чипов для майнеров Биткоина. И Вы не в состоянии этого оспорить. То, что мы собрали жалкие гроши, которые просто не позволяют заказать тестовые чипы, еще не означает, что данный проект - скам. Тем более, что он не завершен. И то, что я пытаюсь найти деньги на реализацию задуманного другими способами - не делает из меня злодея и подлеца. Все настоящие подлецы давно лежат где-нибудь на Испанских пляжах. А я продолжаю жить в стране, где идет бойня и скоро начнется очередной голодомор на жалкие копейки, которые зарабатываю своим трудом. И при этом еще нахожу время, силы и энтузиазм для того, чтобы работать над новыми разработками, аналогов которым в мире нет. И можете даже не сомневаться, что люди, у которых есть деньги - никогда их не сделают, потому что у них нет ни малейшего смысла хоть как-то напрягаться. Так что, будь Вы умным человеком, Вы бы наоборот думали о том - как можно извлечь выгоду или пользу из того, что есть те, кто мотивирован совершать то, что не способны сделать другие.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
magonrus
Newbie
Offline
Activity: 50
Merit: 0
|
|
December 10, 2019, 05:44:19 AM Last edit: December 10, 2019, 06:05:00 PM by xandry |
|
@ flamehowkА чем не нравится алгоритм Yespower, на котором сидят большинство CPU-монет? Или новомодный RandomX? IMHO, нет необходимости полностью отсекать возможность майнинга на видеокартах, FPGA, Асиках или квантовых компьютерах Достаточно слелать так, чтобы норма прибыли не увеличивалась многократно по сравнению с майнингом на CPU Я далек от математики, но мне кажется, flamehowk хочет ограничить майнинг одним ядром процессора Если я не прав, поправьте меня Но если это так, то это бессмысленно 32-ядерным процессором все равно можно будет майнить на полную мощность - поверьте, появятся аналогичные монеты При хорошей прибыли появятся методы, позволяющие задействовать возможности и GPU To All Давайте будем обсуждать тему, а не выяснять личные отношения и глубину познаний друг друга Еще одно замечание - ни YesCrypt, ни его продолжение - YesPower - не умеют использовать современные инструкции типа AVX, AVX2 Я давно надеюсь, что кто-нибудь создаст такой алго, чтоб неспециализированным процессорам видеокарт было б не под силу соперничать с аппаратными инструкциями, зашитыми в CPU Возможно, это уже сделано в RandomX - но я, увы, профан ;(
|
|
|
|
flamehowk (OP)
|
|
December 10, 2019, 08:16:19 AM Last edit: December 10, 2019, 06:08:40 PM by xandry Merited by Symmetrick (1) |
|
@flamehowk А чем не нравится алгоритм Yespower, на котором сидят большинство CPU-монет?
Цитата: "yespower is a proof-of-work (PoW) focused fork of yescrypt, which in turn builds upon scrypt. While yescrypt is a password-based key derivation function (KDF) and password hashing scheme, and thus is meant for processing passwords, yespower is meant for processing trial inputs such as block headers (including nonces) in PoW-based blockchains." Что говорит нам о следующем. Во-первых это таки алгоритм хэширования. Во-вторых он явно предназначен для вычисления ключей. Так как эта функция хэширования, то скорее всего она либо частично односторонняя, либо полностью односторонняя. Это нам подходит. Однако - не факт, что она кольцевая. А скорее всего, что - нет, ввиду того, что, как для любой функции хэширования, в ней есть рандомный ввод данных. В третьих - она лишь ограниченно последовательная. Из чего получается, что эта функция во-первых - изначально предназначена для других целей... и во-вторых, не может решить все проблемы, которые стоят перед современным алгоритмом POW. Или новомодный RandomX?
Цитирую: "RandomX uses random code execution (hence the name) together with several memory-hard techniques to minimize the efficiency advantage of specialized hardware." Как видим в описании честно сказано, что эта функция не для решения проблемы, а лишь для "минимизации" возможностей использования специализированного оборудования. И решение это - откровенно "ущербное" - за счет увеличения использования памяти. То есть, либо человек, у которого старый и слабый компьютер не сможет участвовать в майнинге, либо на компьютере, который занимается майнингом невозможно будет делать что-либо еще... считайте это равносильно тому, что покупать отдельный комп для поддержания сети. Мой же алгоритм лишен всех этих недостатков и он ИМЕННО предназначен для решения этой проблемы. Он может работать даже на смартфоне, не сильно отвлекая на себя ресурсы, он не требователен к железу - хоть на ардуино будет работать. Понимаете? IMHO, нет необходимости полностью отсекать возможность майнинга на видеокартах, FPGA, Асиках или квантовых компьютерах Есть. Эти устройства дорого стоят и требуют дополнительных вложений средств, что многим не по карману. Второе - они пожирают ОЧЕНЬ много электроэнергии. Вы об глобальной мировой экономии думаете? Не забывайте - это один из основных аргументов, которые приводятся на различных заседаниях регуляторов криптовалют - нужно выходить из этой "мертвой петли" самоуничтожения. Третье - FPGA-шки кроме всего прочего еще и требуют больших вложений на программирование прошивок, да и товар это редкий - массово не выпускается. А мы говорим о ВСЕОБЩЕМ благе, когда каждый, кто имеет хотя бы какой-нибудь вычислительный механизм сможет совершенно спокойно поддерживать сеть, занимаясь майнингом. При этом - без ущерба для общих вычислительных мощностей этого устройства. Достаточно слелать так, чтобы норма прибыли не увеличивалась многократно по сравнению с майнингом на CPU
А вот как раз это таки сделать почти невозможно. Для того, чтобы это понять, нужно обладать знаниями об внутреннем устройстве ВСЕХ этих типов устройств. Так что простите, что не объясняю. Я далек от математики, но мне кажется, flamehowk хочет ограничить майнинг одним ядром процессора Если я не прав, поправьте меня
Все совершенно верно. Но если это так, то это бессмысленно 32-ядерным процессором все равно можно будет майнить на полную мощность - поверьте, появятся аналогичные монеты При хорошей прибыли появятся методы, позволяющие задействовать возможности и GPU
Современные процессоры ограничены в производительной мощности максимально возможной тактовой частотой работы, поэтому их производительность увеличивают за счет добавления специализированных конвейеров (для частых задач) и увеличения количества вычислительных ядер. Так вот, даже если Вы заставите 32-ядерный процессор работать на полную мощность (например, разогнав его до 5 ГГц под жидким азотом), на нем ВСЕ-РАВНО рассчитывать POW-алгоритм будет ТОЛЬКО 1 ядро! А насчет задействования возможностей GPU, то это будет просто лишено смысла, так как ядра GPU уступают по вычислительной мощности ядрам CPU. При чем - значительно. То есть - человек потратит время на то, чтобы транслировать код с C++ на CUDA, а получит пшик... Какой в этом смысл? Так что то, что я предлагаю как раз более, чем осмысленно. Естественно, если мы стремимся к тому, что завещал великий создатель Биткойна в своем Whitepaper, я уже не говорю про "общечеловеческие ценности". Помните - "Один процессор - один голос". Вот как раз для решения этой задачи и предназначен мой POW-алгоритм. Еще одно замечание - ни YesCrypt, ни его продолжение - YesPower - не умеют использовать современные инструкции типа AVX, AVX2 Я давно надеюсь, что кто-нибудь создаст такой алго, чтоб неспециализированным процессорам видеокарт было б не под силу соперничать с аппаратными инструкциями, зашитыми в CPU Возможно, это уже сделано в RandomX - но я, увы, профан ;(
Если сильно разогнать обычный проц, то он все-равно сможет посчитать эти инструкции приблизительно с такой же скоростью, как и специализированные конвейеры. Более того, в этих инструкциях зашито не так много "нового", как может показаться. Отсюда - безсмысленность Ваших чаяний. Я уже не говорю о том, что любой АСИК решит эту задачу еще быстрее. Так что предлагаю прекращать надеяться, а приступать к разработке... хотя решение, как можно видеть, уже найдено. Нужно его только воплотить в крипту. И здесь мне очень не помешал бы человек, который уже хорошо разбирается в исходниках Битка или Монеро, потому что я лично еще в них толком никогда не копался - займет много времени пока разберусь.
|
The VenusMINE project is an open source and open hardware project to develops the most fast architecture of the ASIC for Bitcoin miners in the world!
|
|
|
neiros
Legendary
Offline
Activity: 3556
Merit: 1100
|
|
December 10, 2019, 09:00:03 AM |
|
... потому что я лично еще в них толком никогда не копался - займет много времени пока разберусь.
Я бы вам посоветовал не терять понапрасну время и хотя бы попробовать поразбираться. ...при вычислении подписи необходимо использовать только те данные, которые невозможно высчитывать параллельно. При этом они должны постоянно меняться от блока к блоку. К таким данным относится только подпись предыдущего блока и номер блока. Дополнительно нужно закрепить право майнера на получение награды, поэтому предлагаю добавить к подписи предыдущего блока кошелек майнера, на который будет зачисляться награда за блок. Все остальные данные могут быть изменены для одного и того же блока, поэтому они не годятся для расчета подписи. Однако, все остальные данные так же должны быть закреплены в подписи блока. Для решения этой проблемы я предлагаю создавать подпись блока в два этапа:
1 этап. На основании подписи предыдущего блока, номера блока и адреса кошелька майнера выполняется хэширование (например SHA256). Полученный хэш служит стартом для основного вычисления при поиске "красивой" подписи.
2 этап. Найденная подпись является только pre-подписью. Pre-подпись служит стартовым числом для хэширования, которое на вход принимает все остальные данные блока – корень Меркла, счетчик цепочки, штамп времени и т.д. Полученный хэш мы считаем подписью блока. Таким образом, майнер не сможет высчитать хэш блока до тех пор, пока не найдет корректную pre-подпись. Но найдя ее уже нет смысла высчитывать разные хэши от разных входных данных...
В общем-то респект и уважуха за труды, но по моему мнению у вас желание, понимание, а соответственно рассуждения, движутся с не совсем одинаковой скоростью и направлением...
|
|
|
|
|