Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
24 марта 2016, 10:47:28 AM   # 1
 
 
Сообщения: 147
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Из https://en.bitcoin.it/wiki/Target

котировка
Из соображений стабильности и низкой задержки в сделках, сеть пытается произвести один блок каждые 10 минут. Каждые 2016 год блоки (которые должны занять две недели, если эта цель держатся отлично), каждый клиент Bitcoin сравнивают фактическое время, которое потребовалось, чтобы генерировать эти блоки с две недели целью и изменяет цель, процент разницы. Это делает проблему доказательства правильности работы более или менее трудным. Один Retarget никогда не меняет цель более чем в 4 раза, так или иначе, чтобы предотвратить большие изменения в уровне сложности.

AFAIK, нет никакого способа, чтобы проверить точность метки времени блока. Так, что если шахтер, добыча в 2016 годуго блок выпускает его с неточной отметкой времени? Привычка это косвенно влияет на сложность сети?

постскриптум Может кто-нибудь, пожалуйста, указать мне на код, где Target Пересчет происходит?
CounterEntropy сейчас офлайн Пожаловаться на CounterEntropy   Ответить с цитированием Мультицитирование сообщения от CounterEntropy Быстрый ответ на сообщение CounterEntropy


Как заработать Биткоины?
Без вложений. Не майнинг.


24 марта 2016, 11:08:28 AM   # 2
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Получил 1806 Биткоинов
Реальная история.





Алгоритм не смотрит на метку времени вообще, но когда блоки прибывают.
-ck сейчас офлайн Пожаловаться на -ck   Ответить с цитированием Мультицитирование сообщения от -ck Быстрый ответ на сообщение -ck

24 марта 2016, 11:17:27 AM   # 3
 
 
Сообщения: 147
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

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

24 марта 2016, 12:00:04 PM   # 4
 
 
Сообщения: 882
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Алгоритм не смотрит на метку времени вообще, но когда блоки прибывают.

Я был бы признателен, если кто-то может разработать / подтвердить это. как я понимаю, с моим очень ограниченное знание алгоритма выглядит на временной метки. но правила протокола требует блок временной метки для не более чем на два часа в будущем а также больше, чем средняя временная метка предыдущих 11 блоков.

https://en.bitcoin.it/wiki/Block_timestamp

так сто блоков с поддельной отметкой времени не будут даже создать большой эффект.
--Encrypted-- сейчас офлайн Пожаловаться на --Encrypted--   Ответить с цитированием Мультицитирование сообщения от --Encrypted-- Быстрый ответ на сообщение --Encrypted--

24 марта 2016, 12:05:05 PM   # 5
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Алгоритм не смотрит на метку времени вообще, но когда блоки прибывают.

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

Ответ на этот вопрос в том, что только определенные метки времени возможны.

Средняя временная метка из последних 11 блоков используются для определения минимального значения для временной метки. Если блоки случаются каждые 10 минут, то, что составляет около 1 часа в прошлом.

Точно так же, узлы отвергают блоки, которые более чем на 2 часа в будущее.  

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

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

Это означает, что время начала и окончания в 2016 году окна может иметь погрешность 1-2 часов. С 2016 года диапазон составляет около 2 недель, эта ошибка не так уж много.

Система может быть улучшена за счет использования медиану последних 11 блоков, а не временную метку 1 блока. Это предотвратило бы один блок от сбрасывая результат намного.
TierNolan сейчас офлайн Пожаловаться на TierNolan   Ответить с цитированием Мультицитирование сообщения от TierNolan Быстрый ответ на сообщение TierNolan

24 марта 2016, 2:08:59 PM   # 6
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Мы можем сделать некоторую быструю математику, чтобы увидеть, насколько большой из эффекта недействительный метка может иметь:

Намеченная цель = 10 минут на блок для 2016 блоков = 20160 минут.

Максимально допустимое изменение: 120 минут

120 минут / 20160 минут = 0,6%

Таким образом, новая трудность будет 0,6% легче, чем в противном случае пришлось бы.

Поскольку целевая трудность призвана привести блоки происходят через каждые 10 минут (600 секунд), в среднем, новых "дефектный" Трудность приведет блоки происходят каждые:

600 секунд * 99,4% = 596,4 секунд

Это означает, что, в лучшем случае, с использованием поддельной метки на заключительном этапе периода сложности манипулировать новую трудность, то "атакующий" может вызвать будущие блоки происходят в среднем 3,6 секунды раньше, чем они могли бы иметь.

Этот новый "дефектный" быстрее в среднем будет длиться в течение всего 2016 года блоков, что означает, что в 2016 году блок период трудностью будет длиться в среднем 121 минут меньше, чем в противном случае пришлось бы.

В тот момент, предполагая, что последний блок имеет точную временную метку, сложность будет перенастраивать быть более трудными, чем в противном случае пришлось бы (так как время начала 2 часа позже, чем это должно быть). Следующие блоки 2016 выйдет 3,6 секунды позже, чем они могли бы иметь.

Этот новый "дефектный" медленнее, в среднем будет длиться в течение всего 2016 года блоков, что означает, что в 2016 году блок период трудностью будет длиться в среднем 121 минут дольше, чем в противном случае пришлось бы.

Таким образом, к тому времени, когда Вы добираетесь до конца 2-х периодов сложности (примерно 4 недели), трудность будет вернуться в нужное значение. В течение первой половины этих 4-х недель блоки будут иметь место несколько секунд быстрее, чем обычно, и в течение последней половины они произошли несколько секунд медленнее, чем обычно, но в среднем по всей 4-х недель будет правильным. Существует достаточно изменения во время между блоками, которые даже не будут замечены разница в несколько секундах, так или другой в течение нескольких недель, тем более, что в среднем по всему периоду 4 недели по-прежнему точное.
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

24 марта 2016, 2:18:04 PM   # 7
 
 
Сообщения: 669
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

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

то есть, если кто-то сделали согласованные усилия фальсифицировать метку времени последнего блока в каждый период они могли растянуть среднее время на содержательную сумму?
tertius993 сейчас офлайн Пожаловаться на tertius993   Ответить с цитированием Мультицитирование сообщения от tertius993 Быстрый ответ на сообщение tertius993

24 марта 2016, 2:56:41 PM   # 8
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

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

то есть, если кто-то сделали согласованные усилия фальсифицировать метку времени последнего блока в каждый период они могли растянуть среднее время на содержательную сумму?

Прежде всего, они должны были бы иметь много хэша власти, чтобы убедиться, что они получают окончательный блок каждого периода сложности. Шансы получить этот блок такие же, как шансы получения какой-либо другой блок. Другими словами, если у вас 10% от общей глобальной хэш власти, вы бы в среднем решить только один из каждых 10 последних блоков периодов сложности. Если у вас 25% от общей глобальной хэш силы, вы бы в среднем решить только один из каждых 4 последних блоков периодов сложности.

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

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

Вот пример, где "атакующий" получает последний блок в период 4 периодов подряд и всегда добавляет 2 часа до его метки времени:

Период 1 => Начальная метка времени точный, конец метки времени 120 минут позже. (Новая трудность приводит блоков происходит 3,6 секунды рано)

Период 2 => Начальная метка времени 120 минут поздно, конец метки времени 120 минут позже. (Обратите внимание, что вы потеряете 120 минут от начала периода, но получить те же 120 минут в конце периода, поэтому общий период по-прежнему точен. Поскольку такие новые результаты сложности в блоках происходят с средний интервал 10 минут.)

Период 3 => Начальная метка времени 120 минут поздно, конец метки времени 120 минут позже. (Обратите внимание, что вы потеряете 120 минут от начала периода, но получить те же 120 минут в конце периода, поэтому общий период по-прежнему точен. Поскольку такие новые результаты сложности в блоках происходят с средний интервал 10 минут.)

Период 4 => Начальная метка времени 120 минут поздно, конец метки времени 120 минут позже. (Обратите внимание, что вы потеряете 120 минут от начала периода, но получить те же 120 минут в конце периода, поэтому общий период по-прежнему точен. Поскольку такие новые результаты сложности в блоках происходят с средний интервал 10 минут.)

Период 5 => Начальная метка времени 120 минут поздно, конец метки времени точно. (Новая трудность приводит блоков происходит 3,6 секунды позже)


Вот что происходит, если он колеблется вместо:


Период 1 => Начальная метка времени точный, конец метки времени 120 минут позже. (Новая трудность приводит блоков происходит 3,6 секунды рано)

Период 2 => Начальная метка времени 120 минут поздно, конец метки времени 60 минут раньше. (Обратите внимание, что вы потеряете 120 минут от начала периода, и потерять еще 60 минут в конце периода, поэтому общий период от 3 ч. В таких новых результатах сложности в блоках происходят около 5.4 секунды позже чем они могли бы.)

Период 3 => Начало Отметка времени 60 минут до начала, конца метки времени 120 минут позже. (Обратите внимание, что вы получите 60 минут от начала периода, и получить еще 120 минут в конце периода, поэтому общий период от 3 ч. В качестве таких новых результатов сложности в блоках происходят примерно 5.4 секунды рано чем они могли бы.)

Период 4 => Начальная метка времени 120 минут поздно, конец метки времени 60 минут раньше. (Обратите внимание, что вы потеряете 120 минут от начала периода, и потерять еще 60 минут в конце периода, поэтому общий период от 3 ч. В таких новых результатах сложности в блоках происходят около 5.4 секунды позже чем они могли бы.)

Период 5 => Начальная метка времени 60 минут до начала, конца метки времени с точностью. (Новая трудность приводит блоки, возникающих о 1,8 секунды ранее)

DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

24 марта 2016, 3:20:41 PM   # 9
 
 
Сообщения: 669
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Спасибо, я не выпрямлен в моей голове, что вы всегда будете по сравнению с "реальный" время и эффективно потерять 120 минут в начале периода.

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

24 марта 2016, 3:24:10 PM   # 10
 
 
Сообщения: 194
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Возникает другой вопрос - почему приемлемая метка времени такое большое окно? В частности, почему позволяют до двух часов в будущее?
Потому что шахтеры не могут найти блок для ~ 120 минут. ~ 60 минут ждать не очень необычно в настоящее время.
TigerMart сейчас офлайн Пожаловаться на TigerMart   Ответить с цитированием Мультицитирование сообщения от TigerMart Быстрый ответ на сообщение TigerMart

24 марта 2016, 4:07:31 PM   # 11
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Спасибо, я не выпрямлен в моей голове, что вы всегда будете по сравнению с "реальный" время и эффективно потерять 120 минут в начале периода.

Возникает другой вопрос - почему приемлемая метка времени такое большое окно? В частности, почему позволяют до двух часов в будущее?

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

Я не уверен, но я не думаю, что когда-либо Satoshi объяснил, почему он выбрал диапазон, что он сделал, но это изменение около половины процента для расчета только, что он когда-либо используется. Может быть, он просто чувствовал, что полтора процента был достаточно мал, чтобы быть потеряны в изменении блока времени, так что это не имеет никакого значения.
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton

24 марта 2016, 9:45:31 PM   # 12
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: Может ли насчитайте время блока, рассчитанное в каждом блоке 2016 можно манипулировать?

Мое плохое, извините.
-ck сейчас офлайн Пожаловаться на -ck   Ответить с цитированием Мультицитирование сообщения от -ck Быстрый ответ на сообщение -ck



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW