Как стать автором
Обновить

Комментарии 47

А что будет, если потеряется связность в сети на заметное время, а потом восстановится?
Т.е. если, например, на месяц сеть разделилась на 2 сегмента, а потом восстановилась вновь.
будет 2 (бит)коина. обе сети будут обмениваться информацией, но участники первой сети будут реджектить все блоки второй, а вторая все блоки первой. будет много(на самом деле не очень) лишних вычислений, лишнего трафика, но обе будут работать валидно и проводить транзакции.
Почему после восстановления связи и обмена информацией будут реджектится блоки сразу в обоих сетях?
По идее (если это нормальные клиенты, а не какая-то атака) будут реджектится только блоки с меньшей высотой, т.е. блоки сегмента с меньшим хешрейтом.
Таким образом один из сегментов потеряет свою цепочку и возьмет другую.
По идее это вообще часто происходит, попробую найти статистику.
так если в первой сети блок А подтверждён и принят — это уже навсегда. во второй сети в это время примерно был принят блок Б и это тоже на всегда. потом, для первой сети блок Б будет считаться не верным, потому, что она точно знает, что тогда был блок А и «все» с этим согласились.
Никакого «навсегда» нет, цепочка принимается нодой к майнингу пока она не видит другой более высокой цепочки.
в блокчеин то она когда добавляется?

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

если это так работает на самом деле (и при этом пофиг на длину расхождения) то океей. но очевидно, что при длительной изоляции (и значительном количестве участников каждой сети) — это будет означать 100%ый хадфорк, потому, что участники у которых дропнут цепочку не будут в этом заинтересованы.
Я ничего не понял, вот был биткойн, разделился по какимто причинам временно и после восстановления свящности навсегда стало 2 биткойна? я и пятерочка(которая в «светлом» будущем принимает биткой) оказались в разных сетях, я не смогу купить покушать и мои деньги превратятся у угольки?
если ваши битки лежали в кошеле до разделения — они так и будут там лежать, просто после разделения (или хардфорка) вы можете ими пользоватся в 2х сетях независимо друг от друга. соответственно и цена будет своя для каждого (сформированная спросом и предложением).
в реальности, такой сценарий не возможен практически, только если например в России заблокируют весь внешний интернет и тогда для нас биткоин станет фактически русским биткоином и обычный. тогда в России вы сможете продавать и покупать по той цене котороая будет тут сформирована, но когда сбежите за бугор ваши биткоины будут в целости и сохранности (ведь транзакций в которых говорилось, что вы обменяли их на бутылку водки — у них не будет).
Таким образом один из сегментов потеряет свою цепочку и возьмет другую.
Когда сегменты разделились, их стало два, как только связались, выбрали более высокий блокчейн, и нарастили ещё, а второй забыли.
цена будет своя для каждого (сформированная спросом и предложением).

Интересно — получается в блокчейне возможно понятие "курса валют" не только между видами блокчейна, но и внутри.
С другой стороны непонятно — почему бы не позволить образовывать цепочкам блоков узлы сети?
А информация, возникающая в распоряжении восстанавливающей целостность системы (или сливающихся нескольких систем блокчейнов) создаст экономический "эффект введения свободной конвертации денег" (он же — эффект от отмены фиксированного курса).

участники первой сети будут реджектить все блоки второй, а вторая все блоки первой

Т.е. сумма на кошельке волшебным образом увеличится в 2 раза?
ну как с хардфорком эфира — кто-то перешёл на форк, кто-то остался на старов, а кто-то сделал и то и другое и у них стало N эфира новыми и N эфира старыми. но не 2*N эфира. тут примерно также.

Но кейс с форком уже не назовёшь "а потом восстановилась вновь", совсем другой случай.

Блоки будут реждектиться если в двух цепочках несовместимые протоколы (такое пример — разделение Ethereum и Ethereum Classic), если цепочки разфоркались из-за отсутствия соединения, они должны сойтись после восстановления сзязи. Нопотеря связанности на месяц — достаточно мало реалистичная ситуация, сложно сказать, что реально произойдет в таком случае, в большинстве блокчейнов неявно присутствует максимальная глубина отката, и если точка разделения глубже в истории — они действительно останутся двумя независимыми цепочками.
ну я писал про сценарий длительной потери связи. а вот про как цепочки должны слиться — я честно говоря не очень представляю. можете рассказать?
единственный механизм которой я могу представить это дропнуть ветку. как-бы если это 1-2 блока, тут всё понятно, но если их 10 — это уже куча транзакций, как их можно смержить или дропнуть?
Технически нет разницы, 1-2 блока, 10 или 100 — лучшая ветка считается валидной, хуждшая просто удаляется. Если транзакции не противоречат друг другу, они будут и в той и в той ветке, никакого мерджа. Для биткоина реально бывают фопки в 1-2 блока, для других крипт (особенно с маленьким интервалом между блоками) — больше, разницы нет — чтобы быть уверенным, что ваша транзакция не отменится, нужно подождать достаточное количество её подтверждений, которое зависит от конкретной криптовалюты (и размера вашей транзакции, подтверждения мелким транзам можно не ждать, если вы продаете квартиру за битки — лучше подождать побольше)
Если в каждом сегменте сети оказались и майнеры и и пользователи («полные ноды»), то в каждом сегменте будет расти своя версия цепочки блоков. После восстановления связи между сегментами, цепочка большей длинны заменит меньшую. Соответсвенно все транзакции, которые были в меньшей, исчезнут.
Самая длинная цепочка будет принята сетью как главная.
НЛО прилетело и опубликовало эту надпись здесь
Не стоит забывать о банальной безопасности. Валюта и проект изначально довольно рискованные, а обманутый вкладчик может в негодовании и «отомстить» в меру фантазии.
P.S. Статья почти на 100% совпадает со мнением, жаль + поставить не могу. Но все равно спасибо.
Думаю больше даже с той точки зрения, что на анонимного создателя сложнее надавить, чтобы он что-то поменял в протоколе, добавив бэкдор для NSA.
P.S. Спасибо вам)
НЛО прилетело и опубликовало эту надпись здесь
Думаю большинство согласилось, не из-за культа личности, а по своим меркантильным соображениям, майнеры решили, что им лично выгоден хардфорк и проголосовали выбором клиента. Все понимали, что «The Attacker», получив на халяву такое количество, может слить eth даже по низкому курсу, поэтому и биржи сразу пошли навстречу и остановили вывод и сообщество выбрало выгодный для себя путь.
Обработка блокчейна требует достаточно много вычислительных ресурсов и времени (например, обработка всего блокчейна Ethereum займет на обычном компьютере несколько недель), и обычные пользователи, желающие просто перевести несколько монет, предпочитают использовать для этого централизованные сервисы.

Для чего обрабатывать блокчейн при переводе монет? Какая связь?
Если вы хотите децентрализованно пользоваться криптоваоютой, вы должны проверить валидность транзакций. Чтобы проверить, что транзакция перевода вам денег валидна, вам нужно проверить все предыдущие транзакции, с которым связан ваша и т.д. по цепочке.
Если вы просто посмотрите на http://etherscan.io, что у отправителя есть нужное количество денег — вы довряете etherscan, но с тем же успехом вы можете доверять своему банку, что цифра которую он рисует вам на балансе вы реально имеете.

Для того чтобы доверять блокчейну, не надо его проверять целиком каждый раз. В этом и суть дерева Меркле.
Мне, как получателю не надо смотреть есть ли у отправителя средства, достаточно увидеть транзакцию в блокчейне.
А вот туда её поместит кто-то из сети майнерна, проверив и подписав валидность и наличие средств.

Вы тогда доверяете майнерам. Например, в вашей модели большинство майнеров может выпустить 100500 биткоинов и забрать их себе, но если пользователи проверяют все — то даже большинство майнеров не сможет так сделать
Проверять есть смысл только тем, кто включает транзакции в блок, т.е. майнерам.
Какой толк пользователям проверять? Ну проверил я, нашёл, что кто-то что-то тратит не так, но что я могу исправить, если у меня нет 51% хешрейта?

Да, я доверяю большинству, на этом и построены децентрализованные системы.
1. Чтобы понять, что вы доверяете большинству, вам уже нужно скачать цепочку заголовков и сделать проверку PoW, чтобы убедиться, что вы действительно на лучшей цепочке. Для того же Эфириума это уже весьма проблематично(не уверен, возможно ли в принципе для смартфонов), т.к. там достаточно тяжелая валидация PoW. Не говоря уже о том, что сначала эту цепочку заголовков нужно скачать, что просто долго. В итоге запустить SPV ноду на смартфоне если и возможно, то придется подождать весьма долгое время, прежде чем вы сможете эй пользоваться. Это не очень удобно, в итоге пользователи предпочитают использоать централизованные кошельки
2. По поводу валидации транзакций в блокчейне соглашусь с вами лишь частично. Например, это обязательно для PoS криптовалют, т.к. чтобы понять, какую цепочку поддерживает большинство, вам нужно знать их балансы, а чтобы знать их балансы нужна вся история транзакций. Но для PoW тоже вам как пользователю нужно проверять хотя бы несколько последних блоков, т.к. в моменте большинство вычислительных мощностей может принадлежать атакующему (в истории Биткоина были случаи, когда пулу принадлежало >50% мощностей), он может включить в свою цепочку невалидную транзакцию (например, крадущую у вас 1000 BTC без корректной подписи). В этом случае вы окажетесь на цепочке атакующего, т.к. у него 50% мощностей, но например биржа, которой вы пользуетесь имеет полную ноду и проверяет все транзакции, и она будет на цепочке, в которую вложили меньше работы, но все транзакции в ней верны. Нечто похожее случалось пару лет назад — https://bitcoin.org/en/alert/2015-07-04-spv-mining
И доверять не значит не проверять. Мне не сложно залезть в код и посмотреть что конкретно происходит. Как происходит эмиссия, как валидируются транзакции, как майнится блокчейн, не сложно посмотреть и сами блоки и проверить все ли правильно считают и сколько выплачивается комиссий.
Всё наглядно, в отличии от счёта в банке, где приходится за руку ловить банк, когда он пытается списать лишние деньги и никаких следов при этом не оставить или вообще блокирует счета без оповещения.
Всё наглядно, в отличии от счёта в банке, где приходится за руку ловить банк, когда он пытается списать лишние деньги и никаких следов при этом не оставить или вообще блокирует счета без оповещения.

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

Он может просто хранить, (не уведомляя об этом Вас) Ваши средства или их часть на забалансовых счетах (крадут напрямую со счетов — только самые глупые), лишая Вас страховки по вкладам… при этом цифры "итого" для Вас и для контролирующих органов разные — смысл правонарушения здесь, с точки интересов вкладчика — это утрата защиты вклада и повышенные риски его безвозвратной потери.

В Peercoin генерация POS уже больше чем POW, поэтому PPC остается одна из самых нажежных крипто. Насчет изменения протокола, вы правы.

Что значит «генерация POS уже больше чем POW»? На счет надежности PPC готов поспорить)

Proof of stake & Proof of work. Давай аргументы

Аргументы чего?)
НЛО прилетело и опубликовало эту надпись здесь
Это примерно как воспринимать своей победой, когда ослабили жесткий закон, который принимали год назад. Вроде как стало лучше, чем было, но ты знаешь, что могло быть еще лучше, но сторонники централизации продавили свое мнение
НЛО прилетело и опубликовало эту надпись здесь
А что вообще плохого в централизованной криптовалюте? Это ведь удобно.
Во-первых, не нужды сотням участников хранить огромный и всё разбухающий файл базы данных.
Во-вторых, нет проблемы связности сети, т. к. все выполненные операции майнинга выстраиваются в очередь на сервер и начисление монеток совпадает с изменением единой базы данных на сервере.
В-третьих, можно начислять монетки в обход стандартной системы майнинга, например, бонусы самым активным юзерам или награды «за заслуги перед сообществом».
В-четвёртый, структура с сервером более понятна для понимания обычным человеком, в отличие от децентрализованных валют, принцип работы которых даже гикам труднодоступен.
Словом, одни преимущества. Что же плохого в централизации?
НЛО прилетело и опубликовало эту надпись здесь
всё плохо в централизации. да и майнить то при этом зачем?
тот кто контролирует централизованный сервер может в любой момент изменить правила эмиссии монет. кончился кэш в кармане, накинул 100500 монет себе в кошель и никто не против (ведь ты сам решаешь какие транзакции валидные, ведь почему не дать себе награду за заслуги?). или пришили к тебе люди в масках и сказали, не проводи переводы вот этому товарищу, и всё.

В статье есть ссылка на пост Виталика, почитайте — https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274. Это немного за рамками статьи, но централизованная криптовалюта просто не имеет смысла
Тем, например, что централизованные криптовалюты по своим свойствам не отличаются от централизованных (не крипто) валют. А последние уже есть, и замечательно себя чувствуют.

Я думаю все в порядке, доверие к разработчикам конечно не отменяется, но они же давно работают и засоужили доверие. К тому же изменения в протоколе биткоина происходят не только по из желанию, но и с учетом мнения майнеров и вроде других участников использующих биткоин. Как решить вопрос централизации, по моему сейчас пока всп работает, но если транзакции станут совсем долго проходить или комиссия вырастет, то можно увкличить размер блока и например хранить разрастающийся блокчейн на 10000 серверах, я думаю этого за глаза будет, тот же тор работает на несаольких тысячах серверах, никто не кричит что он централизован, просто нужны мощные сервера по всей планете, чтобы нельзя было их отключить по желанию одной страны. В кошельке электрума как раз блокчейн на серверпх лежит, а кошелёк у вас на компьютере. И вот уже количествг этих серверов надо будет держать постоянным, возможно хватит и 3 тыс серверов, тогда и комиссия резко упадет и скорость подтверждения увеличится из-за пропускной способности сети. Но пока наверно это не нужно. А количество серверов возможно нужно контролировать через программу кошельков как-то, т.е нсли их меньше, то предупреждать сообщество, дьы они подняли шум и прм надоности скинулись на сервера или как-то повлияли на процесс. Биткоин нужен как альтернатива банкам в плане подконтрольного хранения и перевода денег, банкам оставить кредиты и вклады.

Все premined криптовалюты — скам. Даже если ICO делают, который длится месяц, все ровно не честная крипто

Зарегистрируйтесь на Хабре, чтобы оставить комментарий