Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
25 апреля 2013, 2:07:27 PM   # 1
 
 
Сообщения: 539
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Так как я аудит безопасности основного клиента на некоторое время, и я получаю скучно, я повернулся, чтобы посмотреть на то, чтобы альтернативных клиентов (например, Bitcoinj Bitsofproof и т.д.).

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

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

Сегодня я нашел другую несовместимость между правилами Bitsofproof и правилами Satoshi клиента. Я буду сообщать сегодня в Грау. Bitsofproof все еще в бета-версии, но выглядит очень многообещающим.

Но дело в том: Если все сообществе Bitcoin (кроме альтернативного клиента сопровождающему проекта) уведомления о возможности сети раскола? Если мы дойдем до точки, где 40% от сети работает клиент 1, а другой 40% работает клиент 2, то "ошибка" в клиенте 2 также является проблемой для всех пользователей (не только те, с помощью клиента 2). Атаки, которые затрагивают большую часть сети также подрывают доверие к сети в целом.

Таким образом, в конце концов, в будущем должно быть "высший уровень" Список проблем / уязвимости сети Bitcoin (независимо от клиентского приложения), что, вероятно, можно было бы сохранить в Bitcoin Foundation.

С наилучшими пожеланиями,
 Серхио.









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


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


25 апреля 2013, 2:13:41 PM   # 2
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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





Я думаю, что лучший способ кратна проверка шахтеров.

Создать новое сообщение "checkblock", Это отвечает блок с какими-либо незаконными сделками удалены (или просто список их хэш).

Таким образом, шахтер мог передать блок вокруг клиентов, представляющий > 90% от количества пользователей и несовместимые операции удаляются.  

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

25 апреля 2013, 2:43:33 PM   # 3
 
 
Сообщения: 1526
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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

25 апреля 2013, 3:09:31 PM   # 4
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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

Если 0.7 и 0.8 поддерживает пакет checkblock, то в последнее время вилка не может произойти. Сложные операции были бы сняты.
TierNolan сейчас офлайн Пожаловаться на TierNolan   Ответить с цитированием Мультицитирование сообщения от TierNolan Быстрый ответ на сообщение TierNolan

25 апреля 2013, 3:47:48 PM   # 5
kjj
 
 
Сообщения: 1302
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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

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

25 апреля 2013, 4:16:45 PM   # 6
 
 
Сообщения: 836
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Сегодня я нашел другую несовместимость между правилами Bitsofproof и правилами Satoshi клиента. Я буду сообщать сегодня в Грау. Bitsofproof все еще в бета-версии, но выглядит очень многообещающим.

Но дело в том: Если все сообществе Bitcoin (кроме альтернативного клиента сопровождающему проекта) уведомления о возможности сети раскола?

Благодарим Вас за глубокое погружение в код и отчетности своих выводов. Я (пока) не убежден в том, что разница, которую вы заметили, читая код действительно приводит к уязвимостям различного поведению, поскольку существует многочисленные тесты разделяемых между Satoshi и битами доказательства, направленные именно на этих тонкостях. В частности, тесты https://github.com/bitsofproof/supernode/blob/master/server/src/test/resources/script_valid.json
а также https://github.com/bitsofproof/supernode/blob/master/server/src/test/resources/script_invalid.json бы весьма вероятно, уловили разницу, по вашему мнению.

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

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

25 апреля 2013, 7:11:40 PM   # 7
 
 
Сообщения: 539
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Сегодня я нашел другую несовместимость между правилами Bitsofproof и правилами Satoshi клиента. Я буду сообщать сегодня в Грау. Bitsofproof все еще в бета-версии, но выглядит очень многообещающим.

Но дело в том: Если все сообществе Bitcoin (кроме альтернативного клиента сопровождающему проекта) уведомления о возможности сети раскола?

Благодарим Вас за глубокое погружение в код и отчетности своих выводов. Я (пока) не убежден в том, что разница, которую вы заметили, читая код действительно приводит к уязвимостям различного поведению, поскольку существует многочисленные тесты разделяемых между Satoshi и битами доказательства, направленные именно на этих тонкостях. В частности, тесты https://github.com/bitsofproof/supernode/blob/master/server/src/test/resources/script_valid.json
а также https://github.com/bitsofproof/supernode/blob/master/server/src/test/resources/script_invalid.json бы весьма вероятно, уловили разницу, по вашему мнению.

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

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

Да Грау, вы правы. Вот почему я не обнародуют детали проблемы. Но если честно, эта проблема существует в коде Bitsofproof, я совершенно уверен.
Тот факт, что BisofProof все еще в бета-версии (но не будет в бета-версии навсегда) является причиной того, что я спрашиваю людей: как мы должны справиться с проблемой с одним (но не все) реализаций клиента.

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

Связанный с тестовыми Grau вывешенным, я совершенно уверен, что они не проверяют эту проблему я пятнистая.
Эти тестовые случаи не проверить результат каждого опкода, только они проверяют, если верификация скрипта выходит из строя или нет.
Это совершенно неправильно, или, по крайней мере, это неполно.
Если вы хотите, чтобы проверить, работает ли OP_ADD1, вы должны проверить, что перед выполнением кода операции и после этого стека имеют некоторые известные значения. Теперь Тестовые скрипт только проверить, что результат ИСТИНА или что-нибудь еще.

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

Grau: мое впечатление, что ваш код хорош, как код Mike Хирн. Проблема не в вашем коде, но в отсутствие "Bitcoin Библии" руководство для определения скрытых и часто забывают правила протокола.

Разрешили бы мне разместить здесь проблемы?

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

25 апреля 2013, 8:27:47 PM   # 8
 
 
Сообщения: 836
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Связанный с тестовыми Grau вывешенным, я совершенно уверен, что они не проверяют эту проблему я пятнистая.

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

В данном конкретном случае мы имеем испытания, которые документируют ожидаемое поведение. Таковыми могут быть выполнены против
несколько реализаций. Они могли бы пропустить что-то вы пятнистый, поэтому я предлагаю вам сформулировать
так вы думаете, подвергает различное поведение в этом формате JSON нотации, то давайте рассмотрим, тогда дайте мне
несколько дней, чтобы исправить, а затем ...

Разрешили бы мне разместить здесь проблемы?
... вы получите славу и сообщество новый тест, который является частью стандарта для реализации.


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

25 апреля 2013, 10:51:59 PM   # 9
 
 
Сообщения: 539
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Дорогой Грау,
 Я не смог использовать воображаемый "проблема", Я не могу создать тест JSON, который дифференцирует две реализации. 

Я прошу прощения за доставленные неудобства.

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

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

26 апреля 2013, 2:57:06 AM   # 10
 
 
Сообщения: 539
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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

26 апреля 2013, 3:06:16 AM   # 11
 
 
Сообщения: 448
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Создать новое сообщение "checkblock", Это отвечает блок с какими-либо незаконными сделками удалены (или просто список их хэш).

Это было бы слишком много трафика, я думаю. Это эффективно ретрансляция десятки ОГО каждый раз, когда блок решается, в рамках подготовки для получения следующего. Это также может привести к произвольному TxN цензуры (который имеет достоинства, но я полагаю, не предназначалась).
scintill сейчас офлайн Пожаловаться на scintill   Ответить с цитированием Мультицитирование сообщения от scintill Быстрый ответ на сообщение scintill

26 апреля 2013, 6:01:48 AM   # 12
 
 
Сообщения: 836
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

Создать новое сообщение "checkblock", Это отвечает блок с какими-либо незаконными сделками удалены (или просто список их хэш).

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

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

26 апреля 2013, 6:30:44 AM   # 13
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: Как сообщить и предупредить о несовместимости протоколов между клиентами?

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

Я думал, что это будет вариантом, что шахтеры позволят, а не всех. Вы бы добавить список подчиненных узлов bitcoin.conf, "addverificationnode = 127.0.0.1: 3456"

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

Тем не менее, он будет транслировать новый блок и любые блоки, которые он получает с ведомыми узлами. Подчиненные узлы будут находиться на той же машине, или в худшем случае той же локальной сети. Ответ может быть просто список незаконных сделок. Если какой-либо объект в блок он получил, он не принимает блок, и если какой-либо объект в блок он добывал, это устранило бы операцию и повторите попытку. 99% времени, ведомые узлы очистит блок без изменений, если он рассеялся их.

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

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

Идея заключается в том, чтобы использовать этот оператор майнинг, а не в дикой природе.

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

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW