Вернуться   Биткоин Форум > - Помощь начинающим
31 октября 2011, 11:01:21 AM   # 1
 
 
Сообщений: 34
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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


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

Когда дело доходит до масштабируемости Bitcoin, часто говорят, что тонкие клиенты не должны загрузить полную blockchain со все сделками мира. Blockheader с Merkle корня достаточно. Учитывая сделки, вы не нуждались бы в полное дерево, а только путь к корню, чтобы решить, если ТХ был включен в блок.

1. Но как я знаю, другие хэши, таким образом, одноуровневые узлы дерева? Я хэш мой верил, чтобы быть хорошей сделки, но я хэширования, что снова вместе с родственного хэш, чтобы получить следующий «уровень» дерева, пока не достигнет корня. Для этого мне нужно было бы все операции снова для того, чтобы иметь возможность рассчитать все необходимые хеши!

2. Когда есть что-то в протоколе, чтобы задать другой узел для Merkle хэшей (так мне не нужно, чтобы загрузить все, но что-то), как это идти с "никому не доверяй" принцип? Кто-то дает мне хэш, я буду включать его в моем расчете, и если я получаю правильный корень Merkle, я считаю, что Техас, чтобы быть хорошим? Разве это не как большой Нонс, кто-то может дать мне ложный хэш, чтобы заставить меня поверить? Может быть, это просто нецелесообразно, потому что вам придется попробовать много, но в теории? Другой узел не дает мне полную информацию, только родственную хэш, поэтому я никогда не мог доказать это!

Я не пропустить что-то в понимании? Совет оценил 🙂
Питер
Borph сейчас офлайн Пожаловаться на Borph   Ответить с цитированием Мультицитирование сообщения от Borph Быстрый ответ на сообщение Borph


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


31 октября 2011, 2:31:57 PM   # 2
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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





Вы знаете, что корень Merkle действительно так вам нужно всего лишь скачать часть дерева.

Пожалуйста, простите мое ASCII искусство.

Код:
           * Merkle корень
          / \
         / \
        / \
       / \
      / \
     * *
    / \ / \
   / \ / \
  * * X X
 / \ / \ / \ / \
* * X X X X X X
    |
   сделка для проверки

* = Хэши необходимо
х = хешей не требуется.

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

31 октября 2011, 3:09:55 PM   # 3
 
 
Сообщений: 34
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Спасибо за хороший ASCii искусства

Так что, как я уже говорил в (2), я на самом деле нужно загрузить другие хэши (отмечены *). Но я не могу проверить их, я должен доверять они правильны Хешированные от основных операций? Или это невозможно сгенерировать ложный хэш, как он никогда не будет приводить к правильному корень дерева Merkle ??

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

31 октября 2011, 3:29:08 PM   # 4
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Так что, как я уже говорил в (2), я на самом деле нужно загрузить другие хэши (отмечены *). Но я не могу проверить их, Я должен доверять они правильны Хешированные от основных операций? Или это невозможно сгенерировать ложный хэш, как он никогда не будет приводить к правильному корень дерева Merkle ??

Вы можете проверить их, и вы правы, во второй части. Работа путь хэши оно "легко" с точки зрения вычислительной мощности для проверки хеш, но вычислительно неосуществимо производить "поддельный хэш", Вероятность того, что злоумышленник может найти хэш, который, когда хеши будут производить правильное значение "до дерева" на Merkle дерево весьма маловероятно. Хэш пространство 2 ^ 256. С текущей глобальной вычислительной мощностью это просто не экономично для атакующих, чтобы попытаться "поддельный хэш",  

Для того, чтобы иметь 1 в 1000000000000 шанс найти один хэш-коллизию в SHA-256 потребовало бы все компьютеры в мире, работающих 24/7/365 на ближайшие 40 лет quadrilion. Так что это невозможно в криптографии сказать "невозможно" но мы можем сказать, что это весьма improable и неосуществимым, если хэш не cryptgraphically недостатки (сломаны).

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

"Доверие в цифрах",  Вы не должны доверять человеку, посылая вам данные. Ад вы (и клиент) должны предположить, есть шанс, что он злоумышленник.  Вы уверены, что это вычислительно невозможно злоумышленник заменить транзакцию или хэш, что бы "поместиться" Merkle дерево. Клиент предназначен для поиска удаленных сверстников и получить данные из различных мест. Это делается для того prvent атакующего контролирования потока информации (укрытия сделок). Если достаточно параноик вы могли бы даже написать клиент, который не будет действовать на основе данных, пока не получит его от нескольких удаленных сверстников.
DeathAndTaxes сейчас офлайн Пожаловаться на DeathAndTaxes   Ответить с цитированием Мультицитирование сообщения от DeathAndTaxes Быстрый ответ на сообщение DeathAndTaxes

31 октября 2011, 3:30:46 PM   # 5
 
 
Сообщения: 1260
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Спасибо за хороший ASCii искусства

Так что, как я уже говорил в (2), я на самом деле нужно загрузить другие хэши (отмечены *). Но я не могу проверить их, я должен доверять они правильны Хешированные от основных операций? Или это невозможно сгенерировать ложный хэш, как он никогда не будет приводить к правильному корень дерева Merkle ??

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

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

31 октября 2011, 3:42:11 PM   # 6
 
 
Сообщений: 34
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Спасибо за объяснение DeathAndTaxes и Магид! Так что я получил его: вы просто получить хэш от кого-то, но это настолько маловероятно получить правильный корень Merkle в конце концов, что вы можете сравнить его с секретным ключом. на самом деле уже эти сообщения осуществляются ли в сети Bitcoin, чтобы сделать тонкие клиенты возможно?

[..] удары молнии в два раза

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

31 октября 2011, 9:02:51 PM   # 7
 
 
Сообщения: 154
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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

1 ноября 2011, 8:14:52 AM   # 8
 
 
Сообщения: 2884
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Интересный факт: Ваш кошелек содержит ветвь Merkle для всех ваших сделок, так что можно импортировать бумажник только заголовками блоков.

на самом деле уже эти сообщения осуществляются ли в сети Bitcoin, чтобы сделать тонкие клиенты возможно?

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

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

1 ноября 2011, 10:02:36 AM   # 9
 
 
Сообщений: 34
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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

Hum, не могли бы вы попросить пэра узел об операциях с получением адреса XY? "полный" узлы действуют в качестве поставщика базы данных тогда? Доверие приходит с осознанием того, что оно зарыто глубоко в blockchain, так что другие отказались бы его, когда он будет содержать неверную подпись или так. Проблема, которую я могу видеть в том, что у вас есть сотни адресов в вашем бумажнике. Это вызывает также вопрос о конфиденциальности КСТАТИ: представить протокол будет как "здесь я дам вам список сотен адресов, пожалуйста, вернуть все соответствующие операции", Это означает, что узел равного будет знать, что все они принадлежат одному и тому же лицу.
Borph сейчас офлайн Пожаловаться на Borph   Ответить с цитированием Мультицитирование сообщения от Borph Быстрый ответ на сообщение Borph

1 ноября 2011, 4:43:57 PM   # 10
 
 
Сообщения: 2884
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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

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

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

2 ноября 2011, 3:37:46 PM   # 11
 
 
Сообщения: 1512
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

Спасибо за объяснение DeathAndTaxes и Магид! Так что я получил его: вы просто получить хэш от кого-то, но это настолько маловероятно получить правильный корень Merkle в конце концов, что вы можете сравнить его с секретным ключом. на самом деле уже эти сообщения осуществляются ли в сети Bitcoin, чтобы сделать тонкие клиенты возможно?

[..] удары молнии в два раза

Я был на самом деле поражен молнией один раз! Означает ли это, я не должен беспокоиться, чтобы получить удар во второй раз из-за вероятности? 😉 (Я знаю, что, скорее всего, так же ..)

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

11 ноября 2011, 10:13:09 AM   # 12
 
 
Сообщений: 34
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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

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

Я мог представить себе три типа узлов:

  • Full-узлы: Текущий официальный клиент. Они имеют _whole_ база данных всех сделок когда-либо делали. Как это весы плохо, может быть, лишь некоторые банки или университеты могли бы работать один в качестве услуги "вечный" база данных.
  • Лишенный-узел: Действует еще как действия узла и проверок операций, блоки и так далее, но сделки, которые полностью погашены (= не может быть тратить больше) удаляется. БД содержит только операции, которые необходимы для проверки другой входящей транзакции.
  • Тонкий клиент: Не могу ответить на запрос о сделке, за исключением тех, которые содержатся в кэше. Требуется по крайней мере, раздетый узел для запроса «входящие» сделки. Есть еще добрейший узел, как это имеет бумажник и подписывает исходящие сделки.

Сетевой протокол может включать это, как "дайте мне оголенные-узлы из IRC-канала", Там бы «слои» в рамках существующего протокола тогда.
Borph сейчас офлайн Пожаловаться на Borph   Ответить с цитированием Мультицитирование сообщения от Borph Быстрый ответ на сообщение Borph

11 ноября 2011, 10:24:12 AM   # 13
 
 
Сообщения: 1892
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопрос о Merkle дерева

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

Hum, не могли бы вы попросить пэра узел об операциях с получением адреса XY? "полный" узлы действуют в качестве поставщика базы данных тогда? Доверие приходит с осознанием того, что оно зарыто глубоко в blockchain, так что другие отказались бы его, когда он будет содержать неверную подпись или так. Проблема, которую я могу видеть в том, что у вас есть сотни адресов в вашем бумажнике. Это вызывает также вопрос о конфиденциальности КСТАТИ: представить протокол будет как "здесь я дам вам список сотен адресов, пожалуйста, вернуть все соответствующие операции", Это означает, что узел равного будет знать, что все они принадлежат одному и тому же лицу.

Электрум делает именно это. видеть http://ecdsa.org/electrum/
ThomasV сейчас офлайн Пожаловаться на ThomasV   Ответить с цитированием Мультицитирование сообщения от ThomasV Быстрый ответ на сообщение ThomasV



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW