Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
15 ноября 2013, 7:51:48 AM   # 1
о
 
 
Сообщений: 76
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Я думал, что общая разница Bitcoin между двумя соседними блоками всегда newcoins = (50e8 >> (Высота / 210000)), поэтому следующее правило следует проводить:

    "сумма всех входных значений всех операций в блоках + newcoins = сумме всех выходных значений всех операций в блоках"

Но это не так!!! Только ">" вместо "знак равно" имеет место в приведенном выше правиле, были некоторые блоки, имеющие меньше newcoins, чем ожидаемое значение выше. Теперь, есть больше, чем общая 10BTC не исчезает в никуда, и сообщили общие число монет в большинстве сайтов просто неправильны. Я чувствую подделал его как есть на самом деле способ уничтожить Bitcoin: Пользователи платят за операции и шахтеры бросают их в черные дыры, не добавляя его в coinbase блока.

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

Пример: https://blockexplorer.com/block/000000000000016034213ddfedb834de864de92b03723db20ae70d3e631ef68d
о сейчас офлайн Пожаловаться на о   Ответить с цитированием Мультицитирование сообщения от о Быстрый ответ на сообщение о


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


15 ноября 2013, 7:56:13 AM   # 2
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

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





То есть вектор атаки вы обеспокоены? В самом деле? Не удалось шахтеры просто сделать coinbase адрес несуществующий адрес и уничтожить монеты так же легко, или отправить их на несуществующий адрес?

А почему не изменить его? Это тяжелая вилка. Жесткие вилки никогда не тривиальны. В практическом плане жесткие вилки, вероятно, никогда не будут реализованы ни на что, кроме критического (как в "о мой бог Bitcoin собирается умереть") исправление.
DeathAndTaxes сейчас офлайн Пожаловаться на DeathAndTaxes   Ответить с цитированием Мультицитирование сообщения от DeathAndTaxes Быстрый ответ на сообщение DeathAndTaxes

15 ноября 2013, 7:58:49 AM   # 3
 
 
Сообщения: 1400
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

То есть вектор атаки вы обеспокоены? В самом деле? Не удалось шахтеры просто сделать coinbase адрес несуществующий адрес и уничтожить монеты так же легко, или отправить их на несуществующий адрес?

А почему не изменить его? Это тяжелая вилка. Жесткие вилки никогда не тривиальны. В практическом плане жесткие вилки, вероятно, никогда не будут реализованы ни на что, кроме критического (как в "о мой бог Bitcoin собирается умереть") исправление.
Просто очередь его в список изменений, которые будут сделаны в следующий раз, когда блок версия увеличивается на единицу.
justusranvier сейчас офлайн Пожаловаться на justusranvier   Ответить с цитированием Мультицитирование сообщения от justusranvier Быстрый ответ на сообщение justusranvier

15 ноября 2013, 8:09:33 AM   # 4
о
 
 
Сообщений: 76
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

То есть вектор атаки вы обеспокоены? В самом деле? Не удалось шахтеры просто сделать coinbase адрес несуществующий адрес и уничтожить монеты так же легко, или отправить их на несуществующий адрес?

А почему не изменить его? Это тяжелая вилка. Жесткие вилки никогда не тривиальны. В практическом плане жесткие вилки, вероятно, никогда не будут реализованы ни на что, кроме критического (как в "о мой бог Bitcoin собирается умереть") исправление.

Нет, это не вектор атаки на данный момент, но это делает правила выглядят более произвольно, труднее объяснить, труднее понять и труднее проверить. Я пишу программу, и общая UTXO не равна сумме "ожидаемый Bitcoin" в любое время, так что я потратил часы, чтобы найти его. Если бы это было все в какой-то "черная дыра" адреса, на самом деле, что делает вещи просто. В случае, не имея полную blockchain, но только UTXO, я не уверен, является ли это позволить какому-то атаки.

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

15 ноября 2013, 9:03:51 AM   # 5
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

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

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

Независимо от того, ваш инвариант также будет нарушена дублирующих coinbases или unspendable OP_RETURN монет, которые не должны отслеживаться в UTXO.

Это далеко не самый привередливы или тонкое правило реализации в системе Bitcoin.

Каждый раз, когда я вижу, кто-то пытается реализовав Bitcoin себе мое сердце дробится немного. Есть так много вещей, которые должны быть созданы в нашей экосистеме за еще одним переопределённые, большинство из которых никогда не завершены, никогда не сделали правильно, и никогда широко.
gmaxwell сейчас офлайн Пожаловаться на gmaxwell   Ответить с цитированием Мультицитирование сообщения от gmaxwell Быстрый ответ на сообщение gmaxwell

15 ноября 2013, 9:51:58 AM   # 6
о
 
 
Сообщений: 76
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

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

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

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

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

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

15 ноября 2013, 10:32:11 AM   # 7
 
 
Сообщения: 1792
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

Я думал, что общая разница Bitcoin между двумя соседними блоками всегда newcoins = (50e8 >> (Высота / 210000)), поэтому следующее правило следует проводить:

    "сумма всех входных значений всех операций в блоках + newcoins = сумме всех выходных значений всех операций в блоках"

Но это не так!!!

Коз Satoshi предвидел, что один день один парень будет использовать арифметику с плавающей точкой где 1 + 2 = / = 3.
Ну-с-Beyond сейчас офлайн Пожаловаться на Come-из-Beyond   Ответить с цитированием Мультицитирование Сообщения от Come-из-Beyond Быстрый ответ на сообщение Ну-с-Beyond

15 ноября 2013, 11:43:50 AM   # 8
о
 
 
Сообщений: 76
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

Я думал, что общая разница Bitcoin между двумя соседними блоками всегда newcoins = (50e8 >> (Высота / 210000)), поэтому следующее правило следует проводить:

    "сумма всех входных значений всех операций в блоках + newcoins = сумме всех выходных значений всех операций в блоках"

Но это не так!!!

Коз Satoshi предвидел, что один день один парень будет использовать арифметику с плавающей точкой где 1 + 2 = / = 3.

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

15 ноября 2013, 12:06:59 PM   # 9
 
 
Сообщения: 1792
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

Пожалуйста, дайте лучший пример, они имеют точное представление в IEEE

Они делают, но длинная цепочка вычислений может привести к странным результатам, как 4.00000000561 вместо 4.

Работа с числами с плавающей точкой у не должно делать вещи, как

Код:
если (а == Ь) ...

Код должен быть заменен на что-то вроде

Код:
двойная эпсилон = 1e-9;
если > б - эпсилон && < б + эпсилон) ...

Если и проверки операций / блоков кода

Код:
если (входы == выходы) ...

может потерпеть неудачу, у ¨R должен написать как

Код:
если (входы > выходы - эпсилон) ...
Ну-с-Beyond сейчас офлайн Пожаловаться на Come-из-Beyond   Ответить с цитированием Мультицитирование Сообщения от Come-из-Beyond Быстрый ответ на сообщение Ну-с-Beyond

15 ноября 2013, 2:44:32 PM   # 10
kjj
 
 
Сообщения: 1302
Цитировать по имени
цитировать ответ
по умолчанию Re: Почему блокирующее правило «общие входы + новая монета = общие результаты» не соблюдается

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

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW