Думаю, наличие клиента даже с таким ограниченным функционалом будет достаточно, чтобы форсировать обсуждение. Также нужно оформить BIP.
It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency, since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site; Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in - your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
1
2 3 4 5 6 7 8 9 XX А в итоге получается всё наоборот. Да ничего наоборот не получилось. Комиссия за coinbase транзакцию - это в любом случае расходы пула. Кроме того, не забывайте, что у них остается еще 5% от блока для бесплатных транзакций, так что на практике для пулов и майнеров ничего не изменится.Не буду у вас уточнять, что вы имеете ввиду Я имею ввиду, что теоретически возможно увеличивать вознаграждение майнеру нашедшему блок, если майнер предыдущего блока добровольно его себе уменьшил. Разумеется, тогда потребуется хард-форк. Только я не думаю, что в этом есть реальная небходимость - майнеры и сейчас могут уменьшать себе вознаграждение, и пользователи могут терять приватные ключи, или вот вам еще пример, и никаких проблем с этим нет.Но то что у вас есть некоторые пробелы с теоретической и практической базе это в не всяких сомнений Сомневаюсь, что в этом предложении имются какие-либо концептуальные противоречия. Ко всему остальному владельцы пулов и так имеют свой процент с майнеров, а вы им ещё не хило так хотите отсыпать. Я вообще-то, наоборот, предлагаю, чтобы владельцы пулов платили комиссию (или сжигали) за свои транзакции. Да, если пул распределяет вознаграждение посредством coinbase транзакции, то майнеры потеряют эту комиссию. Ну, а что вы предлагаете, разрешить им бесплатно засорять блокчейн?А в итоге получается всё наоборот. Хотели как лучше, а получилось как всегда. © В.С. Черномырдин Вы не сможете с этой транзакции взять комиссию потому, что именно в этой транзакции все собранные с других транзакций комиссии В чем проблема майнерам уменьшить себе вознаграждение на величину требуемой комиссии?Зачеркнул, потому как это не совсем так, но по сути так оно и есть. Если уж совсем не нравится идея сжигания коинов, то можно их возвращать нашедшему следующий блок. Не буду у вас уточнять, что вы имеете ввиду . Но то что у вас есть некоторые пробелы с теоретической и практической базе это в не всяких сомнений. Ближе у вечеру обрисую вариант концепции вашей идеи, как я её вижу, в более реалистичном виде, и даже привязанным к рыночным условиям. (сейчас пойду дерево на дрова спиливать - сильным ветром ранетку у нас почти сломало) Ко всему остальному владельцы пулов и так имеют свой процент с майнеров, а вы им ещё не хило так хотите отсыпать. Я вообще-то, наоборот, предлагаю, чтобы владельцы пулов платили комиссию (или сжигали) за свои транзакции. Да, если пул распределяет вознаграждение посредством coinbase транзакции, то майнеры потеряют эту комиссию. Ну, а что вы предлагаете, разрешить им бесплатно засорять блокчейн?В чем проблема майнерам уменьшить себе вознаграждение на величину требуемой комиссии? Да не в чём, собственно. Разве что эта цифра 21000000 со временем уменьшится до 0.Если уж совсем не нравится идея сжигания коинов, то можно их возвращать нашедшему следующий блок. А я предполагаю, что количество orphan блоков возрастёт кратно. И чем больше будет задержка, тем больше будет orphan блоков. Кто из нас прав? Вы не поняли. Майнеры не просто так задерживают свои транзакции. Они их перед этим транслируют в сеть. Поэтому, чем больше задержка, тем дольше полные ноды эту транзакцию продержат в своем mempool. А если они ее продержат 15 секунд, то за спам уже не примут.И спросите у владельцев пулов, каким образом они распределяют вознаграждение майнерам. Это к чему?Ко всему остальному владельцы пулов и так имеют свой процент с майнеров, а вы им ещё не хило так хотите отсыпать. Вы не сможете с этой транзакции взять комиссию потому, что именно в этой транзакции все собранные с других транзакций комиссии В чем проблема майнерам уменьшить себе вознаграждение на величину требуемой комиссии?А я предполагаю, что количество orphan блоков возрастёт кратно. И чем больше будет задержка, тем больше будет orphan блоков. Кто из нас прав? Вы не поняли. Майнеры не просто так задерживают свои транзакции. Они их перед этим транслируют в сеть. Поэтому, чем больше задержка, тем дольше полные ноды эту транзакцию продержат в своем mempool. А если они ее продержат 15 секунд, то за спам уже не примут.И спросите у владельцев пулов, каким образом они распределяют вознаграждение майнерам. Это к чему?Вы не сможете с этой транзакции взять комиссию потому, что именно в этой транзакции все собранные с других транзакций комиссии В чем проблема майнерам уменьшить себе вознаграждение на величину требуемой комиссии? Вы представляете себе какое количество орфан блоков может получится при таких условиях? На этот вопрос я вам ответил:Вопрос из этого поста - https://bitcointalksearch.org/topic/m.18413922 Майнеры могут увеличить задержку на сколько им угодно. Это гарантирует, что все транзакции, которые будут в блоке, дойдут до всех нод еще до начала майнинга (ну, кроме изолированных). Если майнеры будут соблюдать правила, то количество orphan блоков вообще не увеличится.И спросите у владельцев пулов, каким образом они распределяют вознаграждение майнерам. Я имею ввиду транзакцию, удовлетворяющую такому условию - https://github.com/neiros/---TTC---/blob/master/src/core.h#L230 Обоснуйте. Запихивать что? Я предложил способ, как с майнеров взимать комиссию за coinbase транзакцию.То что вы здесь написали - жуткий хардкор, если не сказать полный бред. Даже не пытайтесь всё это запихивать в один блок. Зачеркнул, потому как это не совсем так, но по сути так оно и есть. Вы представляете себе какое количество орфан блоков может получится при таких условиях? На этот вопрос я вам ответил:Вопрос из этого поста - https://bitcointalksearch.org/topic/m.18413922 Майнеры могут увеличить задержку на сколько им угодно. Это гарантирует, что все транзакции, которые будут в блоке, дойдут до всех нод еще до начала майнинга (ну, кроме изолированных). Если майнеры будут соблюдать правила, то количество orphan блоков вообще не увеличится.Я имею ввиду транзакцию, удовлетворяющую такому условию - https://github.com/neiros/---TTC---/blob/master/src/core.h#L230 Обоснуйте. Запихивать что? Я предложил способ, как с майнеров взимать комиссию за coinbase транзакцию. То что вы здесь написали - жуткий хардкор, если не сказать полный бред. Даже не пытайтесь всё это запихивать в один блок. создай тему на редите, там девы ошиваются Создал пока в англоязычной ветке: https://bitcointalksearch.org/topic/block-size-increase-proposal-consensus-based-on-mempool-1851018Не знаю, бывают ли там девы, но кое-что обсудить удалось. В частности achow101 и Quickseller предложили некоторые варианты атаки на мемпул: How do you prevent someone from making a ton of super low fee transactions just to spam up mempools and take up more memory, at some point causing nodes to crash? If you require every single transaction to be kept, then you open up an entirely new attack vector. First of all, nodes aren't required to keep full transactions (TxID will be enough). Also we don't need to keep them forever. I propose that nodes can forget about transactions received over an hour ago. Miners should be careful to include these transactions in block.Then you run into other issues like people paying too low of a transaction fee and thus getting their transaction evicted after the hour is up. It's not a problem. Miners could keep and rebroadcast these transactions shortly before including them into the block.What if I just restarted my node (so it's mempool is now empty) and then I receive a block? Do I reject it? The chain becomes valid anyway, when it receives two or three valid blocks. Also we can simply bypass this rule for some time after the launch. Also we can add a new type of message for the purpose of mempool synchronization between the nodes.Another problem is that if someone broadcasts a transaction that gets to miner "A" located in China, and a conflicting transaction that gets to miner "B" located in New York, US, then exactly one of those transactions will get rejected by nodes I propose to reject all transactions that conflicting any other transaction in node's mempool. But we have to keep original transaction and reset time when it was received. So it cannot be included into the block another 15 seconds. In addition we need to keep the transaction's size and update it every time when we are rejecting a conflicting transaction that larger then all previous such transactions.For example. If node receives a transaction "A" which size is 400 bytes, it should keep this transaction and two additional values: { tx_A, 400, time }. If then after 10 seconds it receives a conflicting transaction "B" which size is 500 bytes, it should update these values as follows: { tx_A, 500, time+10 }. If it receives another conflicting transaction "C" after another 5 seconds which size is 550 bytes, it should update the values: { tx_A, 550, time+15 }. When node is validating the block and found some transaction that conflicts with a transaction in it's mempool, it should check that size of this transaction is not more then stored size. If it is so, the transaction shouldn't be considered as spam. Thus miners cannot include their own transactions into the block for free and cannot spam nodes' mempools with conflicting transactions. Думаю, последний ответ нужно немного скорректировать. Нам необходимо сохранять время оригинальной транзакции, то есть {original_tx, max_size, original_time, delta_time}. И если delta_time превышает 20 секунд, то можно просто отбрасывать эти конфликтующие транзакции. В общем, похоже, все проблемы решаемые. От оппонентов больше аргументов не последовало. Насчет реддита. Честно говоря, мне сложно это излагать на английском. Если есть желающие переводить, или участвовать в обсуждении, то можно форсировать процесс. Каким образом вы собираетесь это сделать, я пока не увидел Чтобы не усложнять, я пока предлагаю простое решение, которое изложено в первом посте.Идея в том, чтобы запретить майнерам и пулам включать свои транзакции в блок забесплатно. С новыми правилами они вынуждены передавать собственные транзакции в сеть, как минимум за 15-20 секунд до включения их в блок, в противном случае они рискуют получить orphan-блок, который будет отвергнут другими узлами и майнерами. В сoinbase транзакцию блока я, например, засунул больше десятка выходов к пользователям Чтобы пулы не добавляли спам в coinbase, можно просто корректировать им вознаграждение. То есть они будут получать не 12.5BTC + собранная комиссия, а 12.5BTC + собранная комиссия - уплаченная комиссия. Уплаченная комиссия это, как вы наверное уже поняли, coinbase_size * minTxFee. Кстати, можно таким образом избавить майнеров от обязанности рассылать свои транзакции - они могут просто заплатить комиссию из coinbase. Можно даже скидку им сделать, скажем для всех minFee будет 20 sat/byte, а для майнеров 15 sat/byte.Все проблемы связанные с увеличением блока плюс некоторые противоречия и нестыковки, что здесь уже проявляются Какие? Я вроде перечислил все проблемы, связанные с увеличением блока. Ни одной из них не остается.
создай тему на редите, там девы ошиваются
Пулы в любом случае монополисты в рамках своих возможностей. Что захотят, то и будут делать. Я как раз и предлагаю ограничить им эти возможности.Ко всему прочему у них есть сoinbase транзакция... Если вы имеете ввиду сoinbase для голосования, то это не монополия - майнеры всегда могут сменить пул.В сoinbase транзакцию блока я, например, засунул больше десятка выходов к пользователям - http://ss-iqr.blogspot.ru/2017/02/355.html это вариант пожеланий и намерений, на практике не реализуемых по причине того, что никакие проблемы существенным образом не решаются, а скорее добавляются новые Какие проблемы остаются, и какие добавляются?Что за голосование? А то я вообще не вникал, что такое этот unlimited В Unlimited каждая нода просто устанавливает лимит на свое усмотрение. А дальше будь что будет.Пулы в любом случае монополисты в рамках своих возможностей. Что захотят, то и будут делать. Я как раз и предлагаю ограничить им эти возможности.Ко всему прочему у них есть сoinbase транзакция... Если вы имеете ввиду сoinbase для голосования, то это не монополия - майнеры всегда могут сменить пул.это вариант пожеланий и намерений, на практике не реализуемых по причине того, что никакие проблемы существенным образом не решаются, а скорее добавляются новые Какие проблемы остаются, и какие добавляются?Schnibble, чем ваше предложение лучше того, что есть сейчас(увеличение размера блока или уменьшение промежутка времени между блоками)? Что касается названных вариантов. Во-первых, простое увеличение размера блоков, равно как и уменьшение промежутка между ними приведет к тому, что майнеры смогут бесплатно заполнять все свободное место спамом. Во-вторых, каждый раз увеличивать блок путем хард-форка явно плохой вариант, а голосование предлагаемое unlimited преследует только интересы майнеров, а не пользователей. В-третьих, пулы имеют возможность монополизировать процессинг транзакций, создавая централизованные платежные сервисы (например, SPV сервисы), и проводить в свои блоки только эти транзакции (по сути они могут воровать комиссию у майнеров). В случае с Lightning может возникнуть похожая ситуация, только сервисы уже будут работать вне блокчейна... Предложенный мной вариант отбирает у майнеров и пулов монополию на проведение транзакций, и теперь они примерно в равных условиях с пользователями и должны платить комиссию. Проблема спама решена. Также, я предлагаю снять ограничение на размер блока, и таким образом монополизировать процессинг транзакций становится невозможно - любой пользователь сможет гарантированно пользоваться блокчейном заплатив адекватную фиксированную комиссию. Lightning и SPV, при этом, также будут работать, но поскольку место в блоке неограничено, то им уже придется конкурировать с простыми майнерами. Решение можно внедрять постепенно. Для начала, просто проверить, как оно работает с лимитом в 1MB и частичным спам-фильтром (только на уровне обмена между узлами). Поддержка полных нод здесь имеет значение, так как они могут отклонять нежелательные блоки. Далее, при поддержде майнеров >50% возможно сделать софт-форк и полностью активировать спам-фильтр. В конечном итоге, если 95% майнеров поддерживают предложение, то оно окончательно активируется, и размер блока увеличивается. Schnibble, чем ваше предложение лучше того, что есть сейчас(увеличение размера блока или уменьшение промежутка времени между блоками)? это разве не то что предлагает бу? Нет. BU, по сути, предлагает непрерывное голосование майнеров. Я предлагаю увеличивать блок ровно настолько, насколько это необходимо, исключая только спам.Есть отделение коре(сегвит и точка, никаких ХФ, только если форкать алгоритм ), есть отделение анти коре (ХФ по размеру обязательное условие) Мое предложение скорее из второй категории. Но и с SegWit оно, разумеется, не конфликтует.Или так, это компромис ради компромиса, бесполезно, невзирая на реальность, где сегвит не получит нужной поддержки без этого компромиса Вообще-то, SegWit не решает проблему масштабируемости. Блок в любом случае придется увеличивать, вопрос только когда и насколько...1й блок это какой? Почему майнеры не будут спамить этот блок с высокими коммисиями? И по спаму, что такое спам? Низкая коммисия это спам? Я так не считаю. Скорее это печально когда транзакцию с низкой коммисией отвергают 1й блок - следующий, который будет сгенерирован. Почему майнеры не будут спамить? В первом посте есть разъяснение:Основная идея в том, что транзакция должна попасть в мемпулы большинства полных нод и пробыть там какое-то время до того, как будет включена в блок. Это необходимо, чтобы майнеры не могли бесплатно включать собственные транзакции - теперь они, наравне со всеми, вынуждены сначала разослать их по сети. Спам - это транзакция со слишком низкой комиссией. Настолько, что блокчейн (особенно база UTXO) слишком быстро растет. Вообще, если выполняются определенные условия и биткоины долгое время не перемещались, то их возможно отправить с нулевой комиссией. Но это исключение, и большинство транзакций требуют комиссию. После таких финтов начинаешь верить что не все в порядке в датском королевстве. Либо бу сторона шортит, играет на альтах. Либо коре пытается уничтожить бтс Мне тоже интересно услышать, какие имеются аргументы против увеличения до 2МБ? Есть у меня одна очень интересная идея, немного затрагивающую эту тему косвенным образом. Вот думаю сформулировать её сейчас здесь, либо подождать пока руки дойдут до её реализации в виде очередного прототипа. Уже скоро наверное месяц как будет, а я ни строчи еще не написал. Другие дела постоянно отвлекают. Никак сосредоточиться не получается.
Quote from: Schnibble on March 25, 2017, 03:22:18 PM
Если это условие соблюдено(рыночный механизм регулирования комиссии), то все что попадает в первый блок - не спам, а значит фактическую величину комиссии в транзакциях из первого блока можно использовать в качестве базовой величины. И уже отталкиваясь от нее можно определить, что мы будем считать спамом. Например, это может быть все, что менее 1/4 от базовой величины 1й блок это какой? Почему майнеры не будут спамить этот блок с высокими коммисиями? И по спаму, что такое спам? Низкая коммисия это спам? Я так не считаю. Скорее это печально когда транзакцию с низкой коммисией отвергают Quote from Лимит в 1MB ограничивает скорость роста блокчейна 6MB в час или 144MB в сутки. Что бы система самоокупалась при нынешних реалиях средний размер блока должен быть на порядок больше. При 1.5GB в сутки рост составит 0.5TB в год. 10тб ~ 500$. На 10 лет. Или 50$ в год. Тут я не улавливаю логику коре, тому кому нужен полный чейн это будет дорого содержать, учитывая что цены падают каждый год? При том что разговор был не о 10, а о 2мб+сегвит. После таких финтов начинаешь верить что не все в порядке в датском королевстве. Либо бу сторона шортит, играет на альтах. Либо коре пытается уничтожить бтс
Quote from
Если очень коротко, то я предлагаю увеличивать размер блока тогда, когда в этом появляется необходимость. То есть изменить правила консенсуса, так, чтобы майнеры могли увеличивать блок, когда очередь mempool транзакций (с достаточной комиссией) переполняется. это разве не то что предлагает бу? Еще есть важная деталь, чтоб вы там не придумали связанное с увеличением блока, такое предложение не пройдет. Есть отделение коре(сегвит и точка, никаких ХФ, только если форкать алгоритм ), есть отделение анти коре (ХФ по размеру обязательное условие) вот предложение эластичного увеличения блока https://bitcointalksearch.org/topic/elastic-block-cap-with-rollover-penalties-1078521 вобще все бы неплохо с сегвитом, но без поддержки майнеров его считай нет. предложение недавнее от коре дева https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013921.html Ничего нового, просто адекватный взгляд на реальность. Но, тему заминусили типа нехер с терористами переговоры вести фейспалм. Или так, это компромис ради компромиса, бесполезно, невзирая на реальность где сегвит не получит нужной поддержки без этого компромиса Один из крайних случаев при таких 5% может стать таким, что при огромной величине мемпула, блоки будут очень маленькими. Думаете, майнеры не захотят включать транзакции даже с высокой комиссией? В таком случае, придется еще ужесточать требования для содержимого блоков. Но мне кажется такой проблемы не будет.Про mempool можно забыть когда консенсус основывается на блоках. Хоть он для всех как бы один, но для каждого разный из-за множества факторов влияющих на скорость прохождения каждой транзакции от узла к узлу, включая константу nMinRelayTxFee и может ещё чего, что сейчас не помню. Если мы увеличиваем лимит на размер блока, то это уже в любом случае хард-форк. А раз уж мы все-равно изменяем протокол, то можем закрепить и правила формирования mempool как обязательные, и для всех они будут одинаковые. Что касается параметра minRelayTxFee, то логично его поднять до значения 10-20 sat/byte. Все транзакции с меньшей комиссией мы считаем нестандартными и в mempool их включать необязательно. А вот выше 20 sat/byte minRelayTxFee узлам устанавливать нельзя, это да.И какие-либо задержки в 15-20 секунд никакой роли при этом не играют. Консенсуса по мемпулу в таких условиях не может быть в принципе, особенно при 5% которые подразумевается использовать каким угодно способом. Вы не поняли. Нам не нужен полный консенсус по содержимому мемпула. Консенсус нужен только по тому, какие транзакции следует считать стандартными. Полные ноды не должны отбрасывать их, иначе просто не смогут проверить блок на валидность. Такой консенсус уже имеется, и я предлагаю добавить к нему еще два условия:1) транзакция должна попасть в мемпулы большинства полных нод и пробыть там какое-то время до того, как будет включена в блок; 2) комиссия за транзакцию должна быть не менее 20 sat/byte Первое условие необходимо для того, чтобы майнеры не могли бесплатно включать более 5% собственных транзакций в блок - теперь они, наравне со всеми, будут вынуждены сначала разослать их по сети. Второе условие - защита от спама, это ограничивает рост блокчейна. 5% нестандартных транзакций - смягчающее условие, это очень большой запас для того, чтобы ноды всегда приходили к консенсусу. Даже в том случае, если готовый блок каким-то образом поступит раньше, чем некоторые включенные в него транзакции, что на практике почти невозможно. В любом случае, самая длинная цепочка в конечном итоге строится на PoW, и отбракованные блоки теоретически могут быть включены в блокчейн, но только если большинство майнеров нарушат правила и согласятся их принять. Поэтому, во время оценки PoW для цепочки, ноды и майнеры не должны считать такие блоки, пока за ними не будет построено хотябы 2-3 корректных блока. По этой же причине имеет смысл ограничить единовременное увеличение блока по сравнению со средним размером нескольких предыдущих, скажем не более чем вдвое. Очень сомневаюсь что кэшбек здесь вообще возможен. Я имею ввиду, что транзакции с большим кол-вом входов можно пропускать бесплатно либо со скидкой. Имеются ли на форуме русскоязычные девелоперы, желающие принять активное участие в обсуждении решения данной проблемы, а возможно и его реализации? Если они и есть, в чём я немного сомневаюсь, то очень капитально скрываются и шифруются, никак себя не проявляя. Какая такая проблема!? Нет проблемы, сказали же вам: догами за розницу раскидаетесь как-нибудь Как пользователь я могу только поменять одну систему на другую, а внести в них какие-либо изменения, улучшения, правки или т.п. - нет. Я думаю, если вы предложите очевидное улучшение, например, сделаете перевод на какой-то язык, то имеете все шансы, что оно будет принято. Что же касается более критических изменений, таких как хард-форк, то даже Core-разработчики уже не могут так просто их вносить. То есть система все еще достаточно децентрализована - сейчас ни одна из сторон конфликта не в состоянии монополизировать Биткоин, и при этом они препятствует это делать друг другу. Я считаю, что происходящее на данный момент это самый лучший сценарий, поскольку мы получаем время на то, чтобы предложить нормальное решение проблемы.Как разработчик чего-либо своего, в меру своих сил, возможностей и знаний, проблема размера блока передо мной вообще не стоит. Какой необходим будет размер, такой и будет, с учётом пожеланий кого бы то ни было. Таким образом, вы получите более гибкий процесс разработки, но зато и более централизованный, по такому пути идет, например, Ethereum. Это не хуже и не лучше - просто другая идеология.Проблему ограниченной пропускной способности и высокой пользовательской комиссии. Каким образом?Хотя, может быть, вы имеете ввиду другой вопрос: "Каким образом внедрить это решение?". У меня есть одна идея, как принудить всех майнеров перейти на новую цепочку. Но я не сторонник радикальных методов, и думаю, что лучший путь - это сделать очень хорошее обоснование, и привести все аргументы, что данное решение является оптимальным. Без политики. В какой то мере, относительно всего остального возможного. Если я правильно понял, то вы опасаетесь, что при изменении размера блока могут возникнуть какие-то проблемы? Поясните.Как пользователь я могу только поменять одну систему на другую, а внести в них какие-либо изменения, улучшения, правки или т.п. - нет. Как разработчик чего-либо своего, в меру своих сил, возможностей и знаний, проблема размера блока передо мной вообще не стоит. Какой необходим будет размер, такой и будет, с учётом пожеланий кого бы то ни было. И если будет, и неизвестно когда. Чего то я не совсем улавливаю какую проблему вы хотите решить. (очередными "костылями и подпорками" - условиями и ограничениями) Проблему ограниченной пропускной способности и высокой пользовательской комиссии.В какой то мере, относительно всего остального возможного. Если я правильно понял, то вы опасаетесь, что при изменении размера блока могут возникнуть какие-то проблемы? Поясните.Чего то я не совсем улавливаю какую проблему вы хотите решить. (очередными "костылями и подпорками" - условиями и ограничениями) Проблему ограниченной пропускной способности и высокой пользовательской комиссии. Есть биткоин классик, есть анлимитед. ... Майнеры видят у кого какой клиент и кого больше. ... А как майнеры видят, у кого какой клиент? https://en.bitcoin.it/wiki/Protocol_documentation#Common_structures Code: Field Size Description Data type Comments Code: 0000 f9 be b4 d9 76 65 72 73 69 6f 6e 00 00 00 00 00 ....version..... Я же хочу найти такой диапазон комиссии, чтобы попадание транзакции в первый блок было достаточно дорогим для большинства пользователей, но при этом они все еще могли попасть в блокчейн в разумные сроки и за разумную цену. Это желание для очень узкого спектра возможных вариантов.Из этого следуют разнообразные манипуляции каких угодно пулов/майнеров с первым блоком, что порождает ещё некоторое количество дополнительных проблем, которые нужно будет решать. Да, я это понимаю. На самом деле, в этом месте проблем я вижу не так уж много. Если мы не будем увеличивать размер блока больше, чем это необходимо, то для манипуляций майнеров в них просто не останется места. Таким образом, майнеры не смогут бесплатно добавлять транзакции даже в свои блоки, поскольку теряют на том, что могли бы включить чужую транзакцию. Хотя, если они будут майнить очень много собственных транзакций, то все еще смогут подделывать размер комиссии в них (она же все равно к ним возвращается). Но, во-первых, это же не все транзакции, и средними значениями комиссии будет манипулировать труднее. Во-вторых, манипулировать комиссией своих транзакций в большую сторону смогут только соло майнеры. Ну и самое главное, мне думается, что ориентироваться нужно не на транзакции в готовых блоках, а на самые приоритетные транзакции в mempool. Здесь майнерам уже будет невозможно подделывать комиссию.
Какое то здесь своеобразное, что то вроде дежавю, имеет место быть, как мне кажется.
Я же хочу найти такой диапазон комиссии, чтобы попадание транзакции в первый блок было достаточно дорогим для большинства пользователей, но при этом они все еще могли попасть в блокчейн в разумные сроки и за разумную цену. Это желание для очень узкого спектра возможных вариантов.А поскольку, как вы правильно заметили, обменный курс у нас неопределенный, то нужно, чтобы этот диапазон определялся рыночным путем. Если это условие соблюдено, то все что попадает в первый блок - не спам, а значит фактическую величину комиссии в транзакциях из первого блока можно использовать в качестве базовой величины. Из этого следуют разнообразные манипуляции каких угодно пулов/майнеров с первым блоком, что порождает ещё некоторое количество дополнительных проблем, которые нужно будет решать. Тут сразу нужно определиться, что есть спам. Слишком мелкие транзакции это довольно неопределённое понятие при неопределённом курсе. Поэтому предлагаю считать спамом абсолютно любую транзакцию с нулевой комиссией. Да. Здесь размышления еще ведутся на абстрактном уровне. Под мелкими транзакциями, конечно же, подразумевались транзакции с мелкой комиссией.Насчет, нулевой комиссии. Боюсь, что такой вариант нам не подходит, поскольку может быстро приводить к росту блокчейна. Я же хочу найти такой диапазон комиссии, чтобы попадание транзакции в первый блок было достаточно дорогим для большинства пользователей, но при этом они все еще могли попасть в блокчейн в разумные сроки и за разумную цену. А поскольку, как вы правильно заметили, обменный курс у нас неопределенный, то нужно, чтобы этот диапазон определялся рыночным путем. Если это условие соблюдено, то все что попадает в первый блок - не спам, а значит фактическую величину комиссии в транзакциях из первого блока можно использовать в качестве базовой величины. И уже отталкиваясь от нее можно определить, что мы будем считать спамом. Например, это может быть все, что менее 1/4 от базовой величины. Изменяя эту константу мы теперь можем регулировать скорость заполнения блокчейна или соотношение его доступности для рядовых пользователей и степени децентрализации полных нод. Не вижу предмета для обсуждения. Предмет обсуждения в процессе. Пока что я обозначаю основные проблемы и делюсь своими идеями по их решению. О технических деталях и тем более готовых клиентах говорить рано.Если очень коротко, то я предлагаю увеличивать размер блока тогда, когда в этом появляется необходимость. То есть изменить правила консенсуса, так, чтобы майнеры могли увеличивать блок, когда очередь mempool транзакций (с достаточной комиссией) переполняется.
На данный момент пользователи конкурируют за право их транзакций быть включенными в блок путем добавления в них некоторой комиссии. Можно попробовать отличать полезные транзакции от "мусора" по ее размеру. Но, к сожалению в текущей реализации рыночный механизм регулирования комиссии работает неэффективно, поскольку майнеры включают в блок только те транзакции, комиссия за которые превышает определенный порог. Все остальные остаются в очереди и ожидают пока этот порог снизится. Для того, чтобы рыночный механизм регулирования комиссии работал эффективно, необходима дополнительная мотивация. В идеале майнеры должны учитывать время ожидания транзакций в очереди, когда принимают решение об их включении в блок. Так, чтобы ранние транзакции даже с меньшей комиссией могли получить преимущество перед более поздними. В принципе это можно и нужно реализовывать методом софт-форка, но такое изменение консенсуса может значительно затруднить принятие нашего решения сообществом...
Попробую обосновать, для чего нам нужен механизм рыночного регулирования комиссии. Если он будет корректно работать, то пользователи получат выбор: заплатить дорого, чтобы включить транзакцию в первый же блок, либо подождать и сэкономить на комиссии. Таким образом, если величина комиссии определяется рынком, то мы можем использовать это значение для различения полезных транзакций от спама. Кроме того, следует принять во внимание, что в случае избыточного увеличения размера блока, мы можем просто сломать механизм регулирования комиссии, так как все полезные транзакции очень дешево смогут проходить в первый же блок, а майнеры и вовсе получат возможность проводить свои транзакции бесплатно или заполнять блоки флудом. Есть биткоин классик, есть анлимитед. ... Майнеры видят у кого какой клиент и кого больше. ... А как майнеры видят, у кого какой клиент?
Не вижу предмета для обсуждения.
Есть биткоин классик, есть анлимитед. Скачивайте, пользуйтесь. Майнеры видят у кого какой клиент и кого больше. Когда корой станет пользоваться меньшинство, все перестанут кору майнить и проблема с размером блока решится. Вообще то размер блока это далеко не ключевая проблема биткоина. На фоне совокупного комплекса взаимосвязанных проблем(проблема роста бокчейна, проблема пропускной способности сети,.. - централизации) это, можно сказать, даже совсем и не проблема вовсе. Согласен. Я бы даже сказал, что все эти проблемы связаны, и в совокупности порождают одну комплексную проблему. Я к этому выводу пришел около года назад, но проанализировав свои наработки, понял что протолкнуть решение всех проблем сразу будет нереально. Поэтому, думаю, что лучше попытаться их как-то разделить и действовать поэтапно...Есть у меня некоторые идеи и даже наработки, но с кем их обсуждать? - ещё одна проблема. Я надеюсь, что эта тема хоть немного поможет решить данную проблему
Переходим к решению. Дело в том, что мы не можем просто так взять и увеличить лимит. Поскольку он был введен для защиты от спама, то изменять его следует очень осторожно. Существует множество способов это осуществить: можно просто изменить константу в исходном коде; или запрограммировать периодическое увеличение на много лет вперед; еще можно управлять размером блока с помощью голосования майнеров, или других участников системы...
Однако все эти способы имеют один серьезный недостаток - новый размер всегда выбирается не по тем критериям, по которым это следует делать. А правильно следует его увеличивать только тогда, когда в этом появляется реальная необходимость, то есть когда очередь транзакций переполняется и все блоки заполнены под завязку. И наоборот, если размер блоков становится избыточным, и в них начинают попадать нежелательные транзакции с мизерной комиссией, то лимит следует уменьшать. Конечно же не все так просто, и чтобы это реализовать придется решить еще немало проблем. Но я думаю, что этот подход является самым очевидным и наиболее оправданным. Попробуем продолжить. Выясняется, что нам нужно все время находить такой баланс, чтобы блоки вмещали в себя все полезные транзакции, а слишком мелкие при этом оставались за бортом, и находились в очереди, пока для них не появится свободное место. И вот тут возникает первая проблема. Где находится та самая граница, которая отделяет полезные транзакции, которые нужно пропустить в блокчейн, от нежелательного спама?
Начну с постановки проблемы. К сожалению, на данный момент мировое сообщество эту проблему решить не в состоянии. Но рано или поздно размер блока придется увеличивать - это очевидно. Даже в случае активации SegWit 1MB блока может быть недостаточно для создания каналов, а решения вроде XT или Unlimited имеют серьезные изъяны и влекут собой трудно предсказуемые последствия, следовательно необходимо найти лучшее решение.
Предлагаю применить рациональный подход и логическим путем прийти к оптимальному решению. Это очень важный момент, поскольку только с полным и очевидным доказательством его эффективности можно рассчитывать на принятие сообществом. Решение проблемы размера блока должно касаться только этой проблемы и более ничего. То есть недопустимо, чтобы в результате существенно увеличивалась централизация и влияние майнеров, также в рамках этой задачи нам не нужны дополнительные усовершенствования, вроде создания Lightning или чего-либо еще. Нужен фикс одной конкретной проблемы и всё.
Всем привет!
Имеются ли на форуме русскоязычные девелоперы, желающие принять активное участие в обсуждении решения данной проблемы, а возможно и его реализации? Для начала предложу простое решение, альтернативное ограничению блока в 1MB. Так как этот лимит был введен в качестве защиты от спама, то можно просто сделать это другим способом. Допустим, мы считаем спамом все транзакции с комиссией ниже некоторой фиксированной величины (скажем, 20 satoshies/byte). В таком случае, проблема решается предельно просто - снимаем ограничение на размер блока и запрещаем майнерам включать в блоки транзакции с комиссией ниже этой величины, а также бесплатно включать собственные транзакции. Вернее, не совсем запрещаем, а все же оставим немного места (пусть будет 5%) для спорных транзакций: Вариант решения №1
Основная идея в том, что транзакция должна попасть в мемпулы большинства полных нод и пробыть там какое-то время до того, как будет включена в блок. Это необходимо, чтобы майнеры не могли бесплатно включать собственные транзакции - теперь они, наравне со всеми, вынуждены сначала разослать их по сети. 5% спорных транзакций - смягчающее условие, это очень большой запас для того, чтобы ноды всегда приходили к консенсусу. Даже в том случае, если готовый блок каким-то образом будет получен раньше, чем некоторые включенные в него транзакции (что на практике почти невозможно). * В любом случае, самая длинная цепочка в конечном итоге строится на PoW, и временно отбракованные блоки теоретически могут быть включены в блокчейн, но только если большинство майнеров (>50%) нарушат правила и согласятся их принять. Поэтому, во время оценки PoW для цепочки, ноды и майнеры не должны считать такие блоки, пока за ними не будет построено хотябы 2-3 нормальных блока. По этой же причине имеет смысл ограничить единовременное увеличение блока по сравнению со средним размером нескольких предыдущих, скажем не более чем вдвое. Тема в англоязычной ветке: https://bitcointalksearch.org/topic/block-size-increase-proposal-consensus-based-on-mempool-1851018 Некоторые выдержки из обсуждений: https://bitcointalksearch.org/topic/m.18465662 Другой возможный способ - это оставить ограничение на размер блока, и увеличивать его тогда, когда в этом появляется реальная необходимость. То есть изменить правила консенсуса, чтобы майнеры могли увеличивать блок, если очередь mempool транзакций (с достаточной комиссией) переполняется. Ниже будут изложены некоторые идеи, как это реализовать...
Pages:
Jump to:
|