Author

Topic: POA (Proof Of Auction). Новый алгоритм консенсуса. (Read 2198 times)

legendary
Activity: 2744
Merit: 1588
Только, что внёс важное дополнение к работе данного алгоритма, а именно:

Quote
После рассылки этого блока всем Блокмейкерам, происходит проверка и его принятие. Как только эта процедура закончена, то каждый освободившийся Блокмейкер начинает опрашивать других Блокмейкеров на готовность к работе. Уровень готовности должен быть от 60% (а может больше) предыдущего количества. Как только это произошло, то происходит продолжение работы сети.

Считаю, что именно такое решение позволит очень хорошо масштабировать и увеличивать мощность и скорость сети, даже не увеличивая значительно количество Блокмейкеров. Потому, что оно позволяет количество переводить в качество.

Вот как это работает.

Давайте представим, что на начальном этапе Блокмейкеры используют для обработки транзакций слабые компьютеры, пусть количество транзакций начинает сильно увеличиваться, также увеличивается количество Блокмейкеров, это позволяет увеличивать размер блока. Однако на определенном этапе, когда размер блока станет больше определенной величины, то у большинства Блокмейкеров может не хватать или мощности или скорости на обработку таких блоков из за чего сеть станет стагнировать и замедляться.

Однако, введя данное правило, я ввел механизм селекции. Блокмейкеры это не обязательно идейные пользователи, они профессиональные участники, а значит теоретически они должны с этого жить. Получая плату за свою работу, они на определенном этапе будут видеть, что их оборудование скоро или уже не справляется с размерами блоков, а потому надо обновить оборудование и войти в эти 60% которые требуются сети для возобновления работы после обработки последнего блока.

Таким образом, постепенно состав сети и оборудования блокмейкеров обновятся и станут более мощными, ведь если деньги позволяют, то почему бы это не сделать и продолжать дальше зарабатывать.
legendary
Activity: 2744
Merit: 1588
Поддерживаю.

Большое спасибо!



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

Где именно и из за чего Вы видите разнос? Лучше увидеть проблему сейчас, чем потом наворотить делов.
newbie
Activity: 10
Merit: 0
Поддерживаю.
sr. member
Activity: 924
Merit: 255
Какие угодно системы построенные на деньгах и рыночных отношениях(так как и в том и в другом присутствует вера) в чистую проигрывают простым математическим законам и теории вероятности. Как алгоритм консенсуса для какой-нибудь игры вполне сойдёт, но не более.

Жаль нет действующей модели, однако, более чем уверен, что данный алгоритм по многим параметрам лучше, чем POW. И правила здесь более четче, а потому и форков нет. И затраты меряются деньгами, что разумней, чем вычислительными мощностями. Да и централизация не так критична, как она критична в POW.

Да и где здесь элементы веры увидели? В том, что предполагал, как будет действовать разумный Блокмейкер. Ну хорошо пусть он будет тупым и не будет перестраиваться, то он просто тогда будет терять деньги на страховых выплатах и все. Кому от этого только хуже будет, только ему, т.к. пользователи получают компенсацию.

Рано или поздно будет разнос а это похуже любого форка..
Ищи тех кому проект понравился может намутите что то вместе, без альфы или хотя бы команды такую вещь не поднять..
legendary
Activity: 2744
Merit: 1588
Какие угодно системы построенные на деньгах и рыночных отношениях(так как и в том и в другом присутствует вера) в чистую проигрывают простым математическим законам и теории вероятности. Как алгоритм консенсуса для какой-нибудь игры вполне сойдёт, но не более.

Жаль нет действующей модели, однако, более чем уверен, что данный алгоритм по многим параметрам лучше, чем POW. И правила здесь более четче, а потому и форков нет. И затраты меряются деньгами, что разумней, чем вычислительными мощностями. Да и централизация не так критична, как она критична в POW.

Да и где здесь элементы веры увидели? В том, что предполагал, как будет действовать разумный Блокмейкер. Ну хорошо пусть он будет тупым и не будет перестраиваться, то он просто тогда будет терять деньги на страховых выплатах и все. Кому от этого только хуже будет, только ему, т.к. пользователи получают компенсацию.
legendary
Activity: 3556
Merit: 1100

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

Какие угодно системы построенные на деньгах и рыночных отношениях(так как и в том и в другом присутствует вера) в чистую проигрывают простым математическим законам и теории вероятности. Как алгоритм консенсуса для какой-нибудь игры вполне сойдёт, но не более.
legendary
Activity: 2744
Merit: 1588
На основании ваших же пояснений. Так же из них следует, что каждая следующая транзакция пользователя будет включена в блокчейн в среднем примерно через количество блоков равное или больше количеству блокмейкеров.

Думаю, что понял, как Вы сделали такие выводы. Однако есть нюансы, которые самонастраивают систему.

Вот смотрите:

- пользователи могут выбирать Блокмейкеров в зависимости от их условий.

- пользователи при оплате транзакции рекомендованной комиссии получают страховку. Эту страховку платит Блокмейкер, который не выполнил условия.

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

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

Любой разумный человек в этой ситуации начинает думать и принимать какие-то решения. Кто-то будет изменять время когда он будет набирать транзакции (может он попал в час пик), кто-то ещё больше выставит комиссию для пользователей, например, будет таким образом собирать только крупные суммы и с более большой комиссией, как только соберет, то выйдет на аукцион и сразу его выйграет, тем самым создав блок, а кто-то просто увидев, что активных Блокмейкеров слишком много, предпочтет больше не набирать транзакции, а просто получать пассивный доход.

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

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

В чем прелесть данного алгоритма, так в том, что он строиться на деньгах и рыночных отношения. А такая система всегда найдет способ приспособиться.
legendary
Activity: 3556
Merit: 1100
При количестве блокмейкеров 100, 1000 и более, пользователь, заключивший контракт с одним из них на включение его транзакции в блок в течение 4 часов, должен будет повторять это действие ~ 100, 1000 и более раз в течение ~ 400, 4000, и более часов, пока его транзакция не попадёт в блок.

Мне не совсем понятно, как Вы пришли к таким выводам...

На основании ваших же пояснений. Так же из них следует, что каждая следующая транзакция пользователя будет включена в блокчейн в среднем примерно через количество блоков равное или больше количеству блокмейкеров.
legendary
Activity: 2744
Merit: 1588
При количестве блокмейкеров 100, 1000 и более, пользователь, заключивший контракт с одним из них на включение его транзакции в блок в течение 4 часов, должен будет повторять это действие ~ 100, 1000 и более раз в течение ~ 400, 4000, и более часов, пока его транзакция не попадёт в блок.

Мне не совсем понятно, как Вы пришли к таким выводам.

Вот смотрите у нас есть сеть из 1000 Блокмейкеров, значит максимальное количество в накопители может быть у каждого Блокмейкера на 1000 транзакций. Пользователь может сам выбрать блокмейкера. Если пользователь платит рекомендованную комиссию, то с Блокмейкером заключается договор о страховке (на счет сроков и самой компенсации, это может меняться. Кто-то может сделать так, что гарантирует не за 4 часа, а допустим за 10 минут, тогда к нему ломануться все пользователи и он сможет быстрее наполнять свой накопитель и выходить на аукцион, быстрее построить блок и вновь принимать желающих за счет этого у него будет увеличен оборот и как следствие прибыль).

Теперь давайте примерно прикинем обработку сети. Если время аукциона и последующего строительства блока будет 1 минуту. То каждый блог будет содержать 1000 транзакций. В течении только 2 часов может обработаться 120,000 транзакций и это мы еще условимся, что у нас идет мощный поток транзакций и Блокмейкеры выходят с полностью наполненными накопителями транзакций. А если в сети не очень много заявок поступает, то Блокмейкер может не дожидаться полного наполнения, а видя предыдущую цену строительства блока, он может решить выйти и предложить даже больше предыдущей, если сумма комиссий ему позволяет это сделать.

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

Ну а на счет ожидания, ну не прошла транзакция за какое-то время. Ну так Вы получите компенсацию за это. Ничего идеального не бывает, однако, именно в нашем случае это будет не так обидно для пользователя.
legendary
Activity: 3556
Merit: 1100

При количестве блокмейкеров 100, 1000 и более, пользователь, заключивший контракт с одним из них на включение его транзакции в блок в течение 4 часов, должен будет повторять это действие ~ 100, 1000 и более раз в течение ~ 400, 4000, и более часов, пока его транзакция не попадёт в блок.
legendary
Activity: 2744
Merit: 1588
Что ж, тест на покупку чашки кофе ваш алгоритм не проходит, но вы правы насчет надежности.
Правда вы трактуете надежность в аспекте, что осуществляющий платеж гарантированно не потеряет свои средства, но реципиент в вашем алгоритме не гарантированно платеж получит! Он может лишь с уверенностью утверждать, что если за четыре часа платеж не прошёл, то можно уже не ждать. Можно ли внести какие то изменения, чтобы больше защитить интересы и реципиента?

Также есть вопрос относительно стодолларового залога блокмейкера.
Если перевод на миллион, какие шансы у нечистого на руку блокмейкера завладеть переводом?

А я понял вашу мысль, Вы волновались больше о получателе денег, чтобы он их гарантированно получил в оговоренный срок. Как я говорил, платеж страхуется смарт-контрактом, его заключают 2 стороны Блокмейкер и пользователь. Поэтому при конкретных условиях ничто не мешает создать этот контракт на выплату компенсации 3-й стороне(т.е. получателю денег) в размере платежа.

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

Поясню на примере Вы отправили 1000сатоши, Блокмейкер потерял связь с сетью и до сих пор не вышел на связь,а прошел уже час. Время вышло, смарт-контракт сработал и Вы получили страховку. Вы спокойно отправляете ещё один такой же платеж. Поймите, пока ваша транзакция не попала в блокчейн, то деньги не списываются.

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

На счет залога и кражи миллиона. Залог призван не кражи предотвращать, а заставлять дисциплинированно работать Блокмейкеров. Такие же, как и в биткоине. Платеж подписывается закрытым ключом и отправляется в открытую сеть, там уже открытыми ключами проверяют этот платеж.
copper member
Activity: 2226
Merit: 915
White Russian
Поэтому время меньше 1-2 минут быть не может, иначе пострадает безопасность сети.
Что ж, тест на покупку чашки кофе ваш алгоритм не проходит, но вы правы насчет надежности.
Правда вы трактуете надежность в аспекте, что осуществляющий платеж гарантированно не потеряет свои средства, но реципиент в вашем алгоритме не гарантированно платеж получит! Он может лишь с уверенностью утверждать, что если за четыре часа платеж не прошёл, то можно уже не ждать. Можно ли внести какие то изменения, чтобы больше защитить интересы и реципиента?

Также есть вопрос относительно стодолларового залога блокмейкера.
Если перевод на миллион, какие шансы у нечистого на руку блокмейкера завладеть переводом?
legendary
Activity: 2744
Merit: 1588
Насколько условное?
Интересует нижняя граница, если шанс у сети с предлагаемым вами алгоритмом консенсуса пройти тест на покупку чашки кофе?
Можно ли все ускорить с четырех часов до пяти секунд?

Давайте попробуем купить чашку кофе.

Допустим наша сеть состоит из 10-х Блокмейкеров. Я в своем приложении отправил транзакцию продавцу на какую-то сумму за чашку кофе, плюс комиссия.

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

Если Блокмейкер так и сделает, то он может Вам гарантировать по страховке, что если в течении 1-2 минут, ваша транзакция не попадет в блокчейн, то он заплатит Вам компенсацию (как видите 4 часа это просто условность. Блокмейкер устанавливает время на основе своих возможностей).

Тогда ваша комиссия должна быть примерно 13сатоши (это вообще по минимуму, т.к. сам Блокмейкер вообще получит 1сатоши), это чтобы не торговаться с остальными, а сразу отдать 12 сатоши 60% сети и получить право строить блок.

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

Поэтому время меньше 1-2 минут быть не может, иначе пострадает безопасность сети.

Тем не менее я считаю, что данный тест не совсем будет то, что нужно для использования криптовалюты на данном алгоритме. Здесь не особо гоняться за скоростью, скорее за эффективностью и надежностью.
copper member
Activity: 2226
Merit: 915
White Russian
4часа - это время условное. Суть в том, что каждый Блокмейкер должен при помощи смарт-контракта взять на себя ответственность гарантированно добавить транзакции пользователя в блокчейн. Если он с этим не справился, то он должен выплатить компенсацию пользователю. Данное время у разных Блокмейкеров может быть разное. Более того и сама страховка может быть больше. Это позволяет Блокмейкерам создавать конкурентное преимущество перед другими. Когда пользователь видит, более интересные условия компенсации, то он может предпочесть именно этого Блокмейкера перед остальными. У такого Блокмейкера пользователи будут быстрее наполнять накопитель транзакций с соответствующими комиссиями. Тем самым у Блокмейкера повышается оборот средств, что в конечном случае делает ему больше прибыли.
Насколько условное?
Интересует нижняя граница, если шанс у сети с предлагаемым вами алгоритмом консенсуса пройти тест на покупку чашки кофе?
Можно ли все ускорить с четырех часов до пяти секунд?
legendary
Activity: 2744
Merit: 1588
вам бы человека который оформил графику чтобы было понятно и можно набирать команду чтобы провести ico, учитывая спрос то есть шанс запустить в реале. структура довольно таки интересная и мысли хорошие. мне нравится!  Cool

Спасибо! Я бы уже сам бы давно сделал, если бы мог. Но нет ни финансов, ни знаний. Поэтому пока отшлифовываю и довожу до ума на бумаге и здесь в теме.

Мне бы 1-2 человек с навыками программирования, чтобы сделать прототипы рабочие. Так как я даже не представляю сколько стоит такая разработка.

А сделать нужно пользовательский клиент, он самый простой.
И клиент Блокмейкера, тут да надо подумать.
legendary
Activity: 2744
Merit: 1588
В ваших рассуждениях вы упоминаете 100$, 1000 сатоши, 4 часа, расскажите исходя из каких предположений выбраны именно эти числа.
Также интересно до каких пределов можно теоретически уменьшить "4 часа" в вашей модели, чтобы она оставалась работоспособной?

Спасибо за вопросы!
Итак начнем.

Эквивалент 100$ - это плата за участие в сети в качестве профессионального участника, который будет получать определенный доход от этой деятельности. Данная сумма должна быть максимальна и выше не подниматься, чтобы в деятельности сети могли принять люди из разных бедных стран, тем самым способствуя децентрализации сети. Это также барьер мотивации и ответственности. Если будете пакостить, то вылетите, а деньги потеряете. Мотивация - это показать свою веру и преданность сети не только на словах, но и на деле.

4часа - это время условное. Суть в том, что каждый Блокмейкер должен при помощи смарт-контракта взять на себя ответственность гарантированно добавить транзакции пользователя в блокчейн. Если он с этим не справился, то он должен выплатить компенсацию пользователю. Данное время у разных Блокмейкеров может быть разное. Более того и сама страховка может быть больше. Это позволяет Блокмейкерам создавать конкурентное преимущество перед другими. Когда пользователь видит, более интересные условия компенсации, то он может предпочесть именно этого Блокмейкера перед остальными. У такого Блокмейкера пользователи будут быстрее наполнять накопитель транзакций с соответствующими комиссиями. Тем самым у Блокмейкера повышается оборот средств, что в конечном случае делает ему больше прибыли.

1000сатоши - это просто пример для лучшего понимания. Комиссия будет определяться рыночными механизмами, а потому она плавающая. Однако она никогда не сможет быть меньше чем Xсатоши, где Х - это 60% от количества всех Блокмейкеров сети (т.е. сеть состоит из 10 Блокмейкеров, 60%- это 6 Блокмейкеров, поэтому минимальная комиссия не должна быть меньше 6сатоши. Добавте также ограничение по минимальной прибыли на аукционе у Блокмейкера в 1%).
sr. member
Activity: 882
Merit: 254
copper member
Activity: 2226
Merit: 915
White Russian
Задавайте ещё вопросы, если Вам что-то стало не понятно.
В ваших рассуждениях вы упоминаете 100$, 1000 сатоши, 4 часа, расскажите исходя из каких предположений выбраны именно эти числа.
Также интересно до каких пределов можно теоретически уменьшить "4 часа" в вашей модели, чтобы она оставалась работоспособной?
legendary
Activity: 2744
Merit: 1588
Пожалуйста поясните за мемпул, где он находится в вашей схеме?
Это распределенная роль, которую играют Блокмейкеры или это какой-то внешний арбитр?

Мне нравится ваша идея в целом, хотя некоторые моменты возможно кажутся недостаточно проработанными.

Спасибо за интерес к теме!

Сейчас весь алгоритм переделанный и обновленный написан в самом первом посте этой темы.

Тем не менее я поясню про мемпул тут. Если Вы профессиональный участник Блокмейкер с нормальным оборудованием, то мемпула как такового у вас нет, у Вас есть накопитель транзакций, он похож на мемпул, но есть отличия. Например, в обычном мемпуле Вы можете выбирать какие транзакции включать, а какие оставлять. Здесь этого нет. Кроме того у Вас есть ограничение на количество транзакций, которые Вы можете принять. Также у Вас есть ограничение по минимальной комиссии, если она ниже заданной Вами, то транзакция в ваш накопитель заявок не попадет.

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

Задавайте ещё вопросы, если Вам что-то стало не понятно.
copper member
Activity: 2226
Merit: 915
White Russian
legendary
Activity: 2744
Merit: 1588
Внес изменения в сам алгоритм. Теперь он стал более проще и надежней. Также показано, как будет отбиваться атаки спама транзакций. Все решения и сам алгоритм в первом посте, который я исправил.
legendary
Activity: 2744
Merit: 1588
Вижу что некоторых заинтересовал данный алгоритм. В первом своём описании я применил максимально упрощенный и наиболее понятный вариант. К сожалению в том упрощении, мне пришлось убрать из описания мемпул транзакций. Мемпул транзакций очень важен, т.к. он позволяет убрать атаку бесконечной комиссии. Это когда хакер "рисует" у себя и своей ботсети нужные транзакции, а потом формирует из них блоки по очень большим ценам.

Именно поэтому и нужен мемпул. Вот как это работает.
Транзакция от пользователя не идет сразу к Блокмейкеру, как в упрощенном варианте. Она попадает в мемпул. Задача мемпула проверить только возможность перечисления комиссии. Даже, если будет совершена двойная трата, то ничего страшного. Ведь комиссия спишиться в пользу Блокмейкера у которого она была, а сама транзакция отмениться. Поэтому это проверка комиссии не ниже рекомендованного минимума и её возможность списать. У мемпула есть текущий список Блокмейкеров, которые набирают транзакции в текущий момент времени. Мемпул делает выбор случайного Блокмейкера из этого списка и помечает эту транзакцию. Блокмейкеры, которые набирают себе комиссии постоянно мониторят мемпул, как только Блокмейкер видит новую комиссию со своим номером, он включает ее к себе в накопитель транзакций.

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

Вот пример. В его накопители транзакций, все транзакции стоят 1сатоши. Значит полная стоимость пула равно 1000сатоши. 99% от 1000сатоши это 990 сатоши. Таким образом, данный Блокмейкер не сможет поднять цену более 990сатоши, т.к. если он это сделает, то останется без прибыли или вообще уйдет в убыток. Его действия не имеют экономического смысла, а это значит попытка спама.



Также я хотел бы рассказать, что у данного алгоритма консенсуса по сравнению с POW нет форков и не может быть в принципе. Для начала, что такое форк:

Quote
Форк цепочки блоков bitcoin — состояние, когда в сети существуют и продолжают рассчитываться одновременно две версии цепочки блоков.

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

В алгоритме консенсксу PODA форков нет, т.к. нет возможности возникнуть таким ситуациям. Вот механика:

У всех Блокмейкеров есть минута, чтобы договориться посредством торговли. Цены Блокмейкеры всегда выставляют две.
Внутри каждой цены есть очередь из Блокмейкеров указавщих эту цену. Например, на тридцатой секунде объявляется, что по цене 900 найдены 10 человек. Торги не останавливаются, т.к время ещё есть. Однако теперь, торговать можно будет только от цены 901 и выше. Если там не будет потом желающий по окончании времени, то засчитывается цена 900.

Резюмируя: кто быстрее встанет на незанятую цену, тот и первый. Приоритет при нахождении желающих, более высокие цены нежели текущая, когда время еще осталось.




legendary
Activity: 2744
Merit: 1588
Как будет производиться эмиссия и распределение монет?

Это не совсем область алгоритма консенсуса, это больше к области создания криптовалюты. Алгоритмы консенсуса в основном влияют на формирования самих блоков в блокчейне.
legendary
Activity: 2156
Merit: 1132
Как будет производиться эмиссия и распределение монет?
legendary
Activity: 2744
Merit: 1588
Господа спасибо за отзыв. Однако я увидел у вас вопросы, которые возникли из за непонимания некоторых моментов.

1)
Quote
Дайте определение LIQ, а то неясно коммиссия пользователя иcходя из комиссии...это как понять?

Чтобы ответить на эти вопросы и раскрыть взаимодействие лучше. Я приведу гипотетическую ситуацию с обычными почтальонами.

Итак представьте вы работаете частными почтальонами в небольшом городе. Все жители этого маленького городка рано или поздно отправляют письма. Ваша работа состоит, чтобы принять само письмо и плату за него(плата для всех одинакова, однако после отправки вы ее можете менять.Она устанавливается вами только для 1000 писем. У разных почтальонов комиссии разные, кто-то готов работать от минимально рекомендуемой, а кто-то от максимально рекомендуемой и выше).

Письмо это транзакция, плата - это комиссия. После того как у вас скопилось 1000 писем вы должны будете идти на площадь, где каждую минуту приезжает курьер и забирает почту только одного почтальона. Когда вы приходите на площадь вы видите других почтальонов и все они хотят в эту минуту, чтобы курьер забрал именно их почту. В реальном мире вы двинулись бы вперед и пробовали бы силой пробиться к курьеру, кому-то начали бить лицо, кто-то вам. Но тут люди цивилизованные, а потому так это не решается. Поэтому вы говорите примерно следующие:"Господа, кто согласиться пропустить мою почту плачу сразу 900 сатоши 10 человекам. Однако, если кому-то нужно более срочно, чем мне, то готов поддержать за 95сататош (в цене это будет 950сатош, т.к. требуется 10 человек поддержки).

А теперь вот и ответ, что такое LIQ. Как только курьер принял у кого-то почту, LIQ принимает значение платы за одно письмо в этой почте. LIQ10 соответственно, это значение среднеарифмитическое, платы за одно письмо успешной почты у последних 10 курьеров.


2)
Quote
И что помешает сделать несколько кошельков и делать транзакции самому себе?

А теперь про сделать кошельки и отправлять самому себе. Вам понадобиться минимум 11 аккаунтов. Это в эквиваленте 1100$ (цена для зрелой системы, на начальном этапе должно быть меньше) залога, для занятия этим. Чтобы учавствовать в торговле понадобиться по 1000 транзакций, с минимально рекомендуемой комиссией. А это значит 11*1000=11000 транзакций с минимально рекомендуемыми комиссиями.

Смысл этих действий, которые не приносят прибыли? Кроме того ведь можно добавить небольшое отчисление в фонд развития сети. Это всё больше технические решения, которые не сильно влияют на сам алгоритм.


3)
Quote
вот именно, если комсы небольшие то таким путем вся хитрая конструкция падает.

Если ваша транзакция не смогла пройти из того, что кто-то там спамил, то в течении допустим 4-х часов она вернеться, комиссия тоже не снимиться, плюс ещё компенсируют за это дополнительной оплатой на сумму комиссии. Но если вам по прежнему нужно отправить деньги, то вы делаете повышенную комиссию и опять отправляете.


4)
Quote
Мое мнение что будущее не столько за переводами, но скорее за умными контрактами, здесь не понятно как применить ваши рассуждения.


Умные контракты работают на блокчейне, он здесь тоже есть. Только здесь не решают математическую задачу консенсусом POW, а торгуются за блок, как на бирже методом PODA.









sr. member
Activity: 728
Merit: 252
Не совсем понял следующие моменты:

1) POS - как я полагаю учитывает не только наличие кошелька но и его содержимое. Не считаю отмеченное слабым местом.
2) Дайте определение LIQ, а то неясно коммиссия пользователя иcходя из комиссии...это как понять?
3) Мое мнение что будущее не столько за переводами, но скорее за умными контрактами, здесь не понятно как применить ваши рассуждения.

Но идея интересная т.е. вместо доказательство работы (наличие вычислительных мощностей) и доказательства доли (суммы в кошелке) использовать доказательство транзакции т.е. роль в системе начинают играть  те кто делает большее кол-во транзакций.


И что помешает сделать несколько кошельков и делать транзакции самому себе?

вот именно, если комсы небольшие то таким путем вся хитрая конструкция падает.
newbie
Activity: 54
Merit: 0
Не совсем понял следующие моменты:

1) POS - как я полагаю учитывает не только наличие кошелька но и его содержимое. Не считаю отмеченное слабым местом.
2) Дайте определение LIQ, а то неясно коммиссия пользователя иcходя из комиссии...это как понять?
3) Мое мнение что будущее не столько за переводами, но скорее за умными контрактами, здесь не понятно как применить ваши рассуждения.

Но идея интересная т.е. вместо доказательство работы (наличие вычислительных мощностей) и доказательства доли (суммы в кошелке) использовать доказательство транзакции т.е. роль в системе начинают играть  те кто делает большее кол-во транзакций.


И что помешает сделать несколько кошельков и делать транзакции самому себе?
full member
Activity: 138
Merit: 100
Не совсем понял следующие моменты:

1) POS - как я полагаю учитывает не только наличие кошелька но и его содержимое. Не считаю отмеченное слабым местом.
2) Дайте определение LIQ, а то неясно коммиссия пользователя иcходя из комиссии...это как понять?
3) Мое мнение что будущее не столько за переводами, но скорее за умными контрактами, здесь не понятно как применить ваши рассуждения.

Но идея интересная т.е. вместо доказательство работы (наличие вычислительных мощностей) и доказательства доли (суммы в кошелке) использовать доказательство транзакции т.е. роль в системе начинают играть  те кто делает большее кол-во транзакций.
legendary
Activity: 2744
Merit: 1588
Это новая и исправленная версия данного алгоритма. В тех частях камнем преткновения был мемпул, а именно если размещать его на сервере Блокмейкера, то он может быстро рисовать себе транзакции, забивать ими блоки и повышать максимально цену комиссии. Чтобы этого не допустить в полной версии был независимый мемпул.

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


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

Алгоритм POW (доказательство работы) ведет к выведению простых пользователей из участия в системе и тем самым способствует централизации.

Алгоритм POS (доказательство доли) имеет слабые места в безопасности, когда пользователь может наделать множество аккаунтов и тем самым влиять на сеть.

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

Еще есть алгоритм POI (доказательство значимостью). Основная идея это построение рейтинга всех участников. Как работают разные рейтинговые сервисы и другие и как накручиваются там рейтинги вы также думаю знаете. У меня нет особого желания доверять рейтингам, особенно если это связано с деньгами.

Теперь давайте перейдем непосредственно к самому алгоритму. Будем двигаться снизу вверх или от простого к сложному.





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

Он просто заходит в свой аккаунт или приложение на телефоне. Вначале набирает номер счета на который, хочет перевести деньги.  Как только он набрал номер счета, нажимает на кнопку ПРОВЕРИТЬ. Кнопка исчезает и ему показывается типо названия другого счета (эта информация добровольная, она служит лишь для того чтобы человеку понять не ошибся ли он номером счета). Ему высвечивается или ничего или что-то типа Магазин игрушек МИР. Далее он вбивает сумму и смотрит на раздел комиссии которую ему нужно ввести. Она имеет диапазон LIQ – LIQ10 или наоборот LIQ10 – LIQ. Выбирает комиссию из этого диапазона, вводит свой ключ вручную или выбирает файл для заверения транзакции и отправляет свой платеж. Если он вводит комиссию из этого диапазона, то у него появляется страховка, что если допустим в течении 4-х часов транзакция не прошла, то все его деньги возвращаются и выплачивается компенсация равная стоимости комиссии.

Пока особо не будет понятно, про LIQ, но тем не менее здесь поясню.
LIQ – среднеарифметическая комиссия для пользователя, исходя из комиссии по которой был создан текущий блок в блокчейне.
LIQ10 – среднеарифметическая комиссия для пользователя,  исходя из комиссий по которым были созданы 10 последних блоков в блокчейне.

После того, как платеж отправлен. Пользователю напоминается:

1)Если в течении допустим 4-х часов, его транзакция не пройдет, то ему возвращается его сумма вместе с комиссией, а также в качестве компенсации дополнительно выплачивается сумма равная его комиссии. Это это страховка, если комиссия была не меньше рекомендуемой.

2) В случае обнаружение двойной траты, комиссия не будет возвращена.

3) Если Блокмейкер по своей инициативе выкидывает только одну вашу транзакцию или очищает весь накопитель транзакций сразу, то он также возвращает вам сумму платежа, комиссию, а также в качестве компенсации дополнительно выплачивается сумма равная его комиссии.

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



Блокмейкер – профессиональный участник децентрализованной сети. На его сервере или мощном компьютере находяться все блоки блокчейна полностью. Чтобы стать блокмейкером, необходимо:

1) Иметь оборудование и софт.

2) Внести залог в эквиваленте 100$ (постоянный, он может быть возращен только при закрытии, при отсутствии претензий со стороны сети).

3) Внести залог по всем комиссиям, по которым вы строите блог (величина переменная), а можно сразу двойной, чтобы не дергаться каждый раз. И потом повышать, если будет необходимость.

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

Накопитель транзакций имеет емкость равное количеству профессиональных участников (Блокмейкеров), т.е. это целый блок блокчейна.

Как только накопитель транзакций становиться полным или выгодным по сумме уплаченных комиссий, то Блокмейкер выходит на акцион по построению блока.
Прежде чем Блокмейкер сможет начать выставлять свою цену, он проходит проверку у всех Блокмейкеров, которые в данный момент принимают участие в аукционе. Как только проверка Блокмейкера и его накопителя завершена, он может принимать участие.



Механизм ценообразования.

У каждого Блокмейкера есть накопитель транзакций. Все комиссии, что есть в этом накопителе принадлежат ему. Допустим цена каждой транзакции составляет 1 сатоши, а наша вся сеть состоит из 1000 Блокмейкеров, а значит каждый накопитель транзакций должен содержать 1000 транзакций. Значит сумма, которую получит этот Блокмейкер равна 1*1000=1000 сатоши, за создание блока из его транзакций. 1000 сатош – это доход, а не прибыль. Так как из его дохода 60% раздается 60% Блокмейкеров. В данном конкретном случае. Из его 1000сатоши при создании блока заберется 600сатоши и по 1сатоши раздастся 600 Блокмейкерам в случайном порядке, однако за этот раз доход дважды никто не получит.  

Таким образом механизм торгов становиться простым. В течении одной минуты(время примерное) Блокмейкеры выставляют цены, кто готов выставить цену больше, как только находиться самая высокая цена и заканчивается минута, то создается блок, который входит в блокчейн. В нашем случае Блокмейкер назначает цену в 600сатоши и если он первым её назначил, то следующий кто хочет должен уже назначить 1200сатоши.

Кроме того его максимальная цена должна быть ограничена экономическим смыслом, работать в убыток и без прибыли нельзя. А потому максимум, что можно сделать это поднять максимально так, чтобы лишить себя 99% прибыли. В нашем случае 1200сатоши данный Блокмейкер поставить уже не сможет.


После рассылки этого блока всем Блокмейкерам, происходит проверка и его принятие. Как только эта процедура закончена, то каждый освободившийся Блокмейкер начинает опрашивать других Блокмейкеров на готовность к работе. Уровень готовности должен быть от 60% (а может больше) предыдущего количества. Как только это произошло, то происходит продолжение работы сети.


А теперь внимание, те преимущества которые получаются при использовании данного алгоритма:

1) Емкость накопителя транзакций жестко привязана к количеству Блокмейкеров. Это значит, что при увеличении сети она автоматически маштабируется путем увеличения числа транзакций в каждом блоке.

2) Сильного роста комиссии не будет, так как с ростом транзакций может увеличиваться количество Блокмейкеров и количество транзакций в блоке. Т.е. теоретически при той же комиссии с пользователя может наблюдаться рост прибыли Блокмейкера за счет стоимости блока из увеличенного количества транзакций там.

3) Самое главное и ключевое решение, а именно защита от спама транзакциями и искусственного повышения стоимости комиссий. Даже, если все ваши транзакции и рисованные. Вы всё равно будете вынуждены делиться стоимостью комиссий со всего блока с 60% всей сети, а вот уже здесь не получиться избежать финансовых потерь. Кроме того пользователи видя, что их транзакции не проходят будут поднимать свои комиссии. И здесь вам уже придется сражаться со всей сетью, ведь метод построения блока аукционный, т.е. кто готов заплатить максимальную цену за построение блока 60%сети.

Вот примерно так.

Большая благодарность всем кто прочитал!

С уважением
Дмитрий Будяков

Jump to: