Согласно вики , 10 минут были выбраны как «компромисс».
Почему именно десять минут? Это компромисс, выбранный Сатоши между временем распространения новых блоков в больших сетях и объемом работы, потраченной впустую из-за разделения цепочки.
Однако в оригинальной статье Сатоши 10 минут используются просто для целей расчета требований к дисковому пространству.
Заголовок блока без транзакций будет иметь размер около 80 байт. Если предположить, что блоки генерируются каждые 10 минут, 80 байт * 6 * 24 * 365 = 4,2 МБ в год.
Есть ли где-нибудь обсуждение, объясняющее, как было достигнуто 10-минутное время блока?
10-минутные блоки — это просто компромисс.
Сокращенное время блокировки:
При более длительном целевом интервале блокировки более 10 минут плюсы и минусы будут обратными.
Основным преимуществом более короткого времени блока является сокращение времени 1 подтверждения. Хотя транзакция с 1 подтверждением более быстрого блока имеет меньшую силу, чем транзакция с 1 подтверждением более длинного блока, она все же лучше, чем транзакция с 0 подтверждением любого блока.
Скорость 1-го подтверждения может показаться огромным преимуществом, но на самом деле для большинства транзакций с небольшой стоимостью и срочных транзакций, таких как покупка чашки кофе, оплата такси или использование торгового автомата, риск двойных трат очень высок. низкий. Имейте в виду, что прием кредитных карт сопряжен с определенным риском, однако продавцы уже давно признали, что они столкнутся с некоторыми потерями, однако, если эти потери минимальны, их можно рассматривать как затраты на ведение бизнеса. Так много продавцов могут просто принимать транзакции с нулевым подтверждением, не подвергая себя большему риску, чем мошенничество с кредитными картами.
Другой фактор, снижающий реальный потенциал более коротких целевых интервалов блокировки, заключается в том, что для многих продавцов даже «более быстрое» время подтверждения все еще недостаточно быстро. Для транзакции в торговой точке среднее время подтверждения в 2 минуты по-прежнему значительно больше, чем то, что большинство продавцов считает приемлемым. Средняя транзакция по кредитной карте занимает около 20 секунд (включая задержки со стороны клиента). Вся индустрия потратила значительные ресурсы, чтобы сэкономить хотя бы несколько секунд. Такие изменения, как разрешение покупателю проводить картой, проводить пальцем до того, как все элементы будут активированы, и не требовать подписи при низком значении, — все это связано с сокращением на пару секунд и без того быстрого процесса, и стоимость этих изменений считается приемлемой для небольшого улучшения. оперативность кассы.
Другой фактор заключается в том, что уменьшение целевого интервала только уменьшает среднее время подтверждения, но половина из них будет длиннее, а хвост может быть очень длинным. Из-за случайного характера решений блоков примерно 15% блоков будут занимать больше времени, чем 2-кратное целевое значение, 3% дольше, чем 3-кратное целевое значение, > 7,5 минут и около 0,5% займет больше времени, чем 4-кратное целевое значение. Эта неопределенность затрудняет ожидание подтверждений для бизнеса, чувствительного ко времени. Подтверждение большинства транзакций в течение 30 секунд, но некоторые из них занимают минуты, может привести к разочарованию клиентов в точках продаж.
Если экономика BTC станет достаточно большой, мы можем увидеть более широкое использование «зеленых адресов», чтобы удовлетворить потребность в мгновенном приеме без подтверждений. Такие услуги могут предоставляться крупными корпорациями и обеспечиваться страхованием от мошенничества (за небольшую комиссию за транзакцию). Это было бы более жизнеспособным решением с 0-подтверждением, чем простое уменьшение интервала между блоками.
При этом 10-минутная цель, вероятно, была чрезмерно консервативной, и у более короткого времени блока есть некоторые преимущества.
Я нашел эту часть вики тоже разочаровывающей, и я просто отредактировал ее. Буду признателен за исправления. Вот что я написал:
Десять минут были специально выбраны Сатоши как компромисс между временем первого подтверждения и объемом работы, потраченной впустую из-за разделения цепочки. После того, как блок добыт, другим майнерам требуется время, чтобы узнать об этом, и до тех пор они фактически конкурируют с новым блоком, а не добавляют к нему. Если кто-то добудет еще один новый блок на основе старой цепочки блоков, сеть сможет принять только один из двух, и вся работа, затраченная на другой блок, будет потрачена впустую. Например, если майнерам требуется в среднем 1 минута, чтобы узнать о новых блоках, а новые блоки приходят каждые 10 минут, то вся сеть тратит впустую около 10% своей работы. Увеличение времени между блоками уменьшает эти потери.
В качестве мысленного эксперимента: что, если сеть Биткойн расширится и будет включать Марс? От самых дальних точек на их орбитах сигнал доходит от Земли до Марса примерно за 20 минут. Поскольку между новыми блоками всего 10 минут, майнеры на Марсе всегда будут на 2 блока отставать от майнеров на Земле. Для них было бы почти невозможно внести свой вклад в цепочку блоков. Если бы мы хотели сотрудничать с такими задержками, нам потребовалось бы как минимум несколько часов между новыми блоками.
Поскольку биткойны являются первой криптовалютой, использующей генерацию блоков и т. д., можно предположить, что 10 минут были выбраны произвольно. Любое значение, достаточно большое для распространения нового блока по сети до того, как другой майнер сгенерирует новый блок, будет хорошим. С другой стороны, блоков не должно быть слишком мало, так как получение подтверждений займет слишком много времени. Час вычислений считается безопасным от вмешательства, поэтому разделение этого времени на аккуратные части может дать вам 10 минут.
Вероятно, нет никакого обсуждения этой темы, поскольку первая версия Биткойна была создана одним Сатоши, поэтому, пока он не раскроет свою истинную личность или не вернется в сообщество, точные причины не могут быть точно выяснены.
Время блокировки было определено Сатоши Накамото как компромисс между двумя факторами.
1. Сетевая задержка:
после добычи блока другим майнерам требуется некоторое время, чтобы узнать об этом узле, и в течение этого времени на самом деле другие майнеры все еще конкурируют (что означает майнинг) с этим блоком вместо того, чтобы добавлять этот блок в цепь. Это приводит к пустой трате ресурсов майнинга, потому что несколько майнеров все еще добывают свои блоки, но сеть может добавить только одного. Кроме того, это факт, что потребуется некоторое время, чтобы любой новый добытый блок появился на всех узлах, поскольку отставание в сети имеет значение.
2. Время подтверждения:
мы можем быть уверены в подтверждении добавления блока в цепочку/сеть только после добавления некоторых блоков в эту цепочку. А чтобы подтверждение было более надежным, необходимо добавить в цепочку после нашего блока около 5-6 блоков. Это, безусловно, займет некоторое время. Но нам нужно ускорить этот процесс.
Теперь фактор задержки сети требует, чтобы время блока было больше, тогда как фактор времени подтверждения требует, чтобы оно было короче. Поэтому был выбран компромисс, который составляет 10 минут. Этот временной отрезок наверняка был выбран после некоторых расчетов. Но теоретическая причина времени блокировки такая же, как описано в этом ответе.
AFAICS, единственным возможным преимуществом более длительного времени блока является сокращение накладных расходов на полосу пропускания из-за меньшей вероятности разделения цепочки блоков.
Я даже сомневаюсь в этом компромиссе, потому что, если данные транзакции составляют большую часть, возникает уравновешивающий эффект, заключающийся в том, что более короткое время блока означает меньше данных для передачи.
Я очень скептически отношусь к тому, что должно быть больше работы впустую при более коротком времени блока, если сложность откалибрована по времени для достижения консенсуса. Математически майнеры зарабатывают процент от вновь созданных блоков, примерно пропорциональный их проценту хэш-мощности системы, независимо от относительного распределения их удачи между сложностью работы и (случайными) потерянными цепями.
Если нет доказательств, я сомневаюсь в утверждении, что более короткое время блока создает больше времени для достижения консенсуса (т. е. перераспределения), потому что, например, если есть в 4 раза больше разбиений с 1/4 времени блока, существует примерно Еще 7 итераций для достижения консенсуса в течение той же продолжительности.
G̶i̶v̶e̶n̶ ̶t̶h̶a̶t̶ ̶i̶r̶r̶e̶v̶e̶r̶s̶i̶b̶i̶l̶i̶t̶y̶ ̶i̶s̶ ̶a̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶ ̶o̶f̶ ̶n̶u̶m̶b̶e̶r̶ ̶o̶f̶ ̶b̶l̶o̶c̶k̶s̶&̶m̶d̶a̶s̶h̶;̶ ̶n̶o̶t̶ ̶o̶f̶ ̶t̶i̶m̶e̶— ̶a̶n̶d̶ ̶t̶h̶e̶ ̶d̶i̶s̶a̶d̶v̶a̶n̶t̶a̶g̶e̶ ̶o̶f̶ ̶d̶e̶l̶a̶y̶s̶ ̶i̶n̶ ̶t̶r̶a̶n̶s̶a̶c̶t̶i̶o̶n̶s̶,̶ ̶i̶t̶ ̶s̶e̶e̶m̶s̶ ̶a̶ ̶s̶h̶o̶r̶t̶e̶r̶ ̶b̶l̶o̶c̶k̶ ̶t̶i̶m̶e̶ ̶i̶s̶ ̶c̶o̶m̶p̶e̶l̶l̶i̶n̶g̶.̶
Я был бы признателен, если бы минусующие хотя бы попытались защитить свою логику комментарием под моим ответом. Это дает мне возможность обсудить их и показать им, почему я думаю, что они неправы (или признать свою ошибку). Смысл в том, чтобы убедиться, что у нас коллективно есть правильная логика.
потрошитель234
булавочная головка
Пять баллов
булавочная головка
Пять баллов
булавочная головка
булавочная головка
H2ONaCl