Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
21 июня 2011, 9:46:31 AM   # 1
BJI
 
 
Сообщения: 112
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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


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

1) набор входов, которые идентифицируют предыдущие выходы транзакций требовать вместе со сценарием, который должен объединяться с этими выходными транзакции скриптами для запуска через обработку сценария, а «истинного» результата, указывающий, что выход правомерно заявлен эта сделкой.

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

Вопросов:

а. Может "scriptSig" (Который выглядит просто исходный код номенклатура для фрагмента входного скрипта) содержат любые и все же опкоды в качестве "scriptPubKey"? Кроме того, почему имена для ввода сценария и сегментов сценария вывода столь странного (кажется, это было бы понятнее просто называть отрезок входного скрипте «сегментом сценария ввода» и сегментом выходного сценария «Сегментировать сценарий вывода», комбинацию два в результате полного сценария, чтобы оценить, чтобы подтвердить претензии на вход, чтобы на выходе).

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

OP_1ADD OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG

Теперь клиент должен признать, что он должен попробовать сегмент входного скрипта вроде этого:

<сиг> <Публичный - 1>

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

Альтернативный сценарий ввода будет выглядеть так:

<сиг> <Публичных> OP_1SUB

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

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

Возможно, вынос из этого:

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

2) Использование "стандарт" вывода скриптов, которые прямо сейчас, кажется, чтобы быть простой скрипт:

OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG

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

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


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


21 июня 2011, 1:37:15 PM   # 2
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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





котировка
Может "scriptSig" (Который выглядит просто исходный код номенклатура для фрагмента входного скрипта) содержат любые и все же опкоды в качестве "scriptPubKey"?

Да.

котировка
Кроме того, почему имена для ввода сценария и сегментов сценария вывода так странно

Они названы в честь самого простого типа сделки: scriptSig содержит одну сигнатуру, и scriptPubKey содержит один открытый ключ (плюс OP_CHECKSIG).

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

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

21 июня 2011, 3:04:14 PM   # 3
kjj
 
 
Сообщения: 1302
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

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

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

21 июня 2011, 4:34:33 PM   # 4
BJI
 
 
Сообщения: 112
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

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

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

Я согласен, что функция сценария очень, очень удивительная.

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

Как Нестандартные клиентов, в том числе и более новых версий "официальный" Bitcoin клиента, будут включены в сеть? Мне кажется, что есть три группы заинтересованных сторон:

1) Узлы, которые инициируют транзакцию. Они будут инициировать транзакции только с подмножеством правил сценария и опкодами, что они знают о (потому что это все, что они могут делать).

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

3) Узлы, которые хотят, чтобы обнаружить проверенную сделку в качестве доказательства оплаты. Они будут проверять сделки только с подмножеством правил сценария и опкодами, что они знают о (потому что это все, что они могут делать).

Существует, возможно, четвертый набор:

4) Сверстники, которые выступают в качестве пропуска проходных для операций на пути от (1) до (2). Они могут или не могут передавать только по сделкам, которые они могут подтверждать правила сценария и опкоды, что они знают о (потому что они хотят быть хорошими "Bitcoin граждан и проходят только на действительных сделках).

Если существует множество различных подмножеств возможного sript правил и опкодов допускаемых подмножеств каждых из этих множеств, как может кто-нибудь из множества (1) уверена, что излучающее ничего, кроме самого основных типов сценариев сделает весь путь через эти 3 (или 4) группы?

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

21 июня 2011, 4:51:20 PM   # 5
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

21 июня 2011, 4:57:15 PM   # 6
kjj
 
 
Сообщения: 1302
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

Если существует множество различных подмножеств возможного sript правил и опкодов допускаемых подмножеств каждых из этих множеств, как может кто-нибудь из множества (1) уверена, что излучающее ничего, кроме самого основных типов сценариев сделает весь путь через эти 3 (или 4) группы?

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

Я не беспокоюсь об этом.

Посмотрите на веб-браузеров. Децентрализованное развитие привело к бурному признаков, а не засухи.

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

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

21 июня 2011, 6:29:37 PM   # 7
BJI
 
 
Сообщения: 112
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

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

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

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

Поэтому риск на человеке, который принимает проверенную сделку с нестандартным (но правовым) выходным сценарием в качестве доказательства оплаты. Их локальный клиент может понять выходной сценарий достаточно хорошо, чтобы рассмотреть его подтверждение оплаты, но если шахтеры не понимают, что никто никогда не сможет претендовать на выход. И шахтеры не смогут подтвердить это до тех пор, значительное число других шахтеров также может подтвердить это. Шахтеры действуют в своих собственных интересах не будет даже пытаться чтобы сгенерировать блок, который включает в себя операции, чьи входы ссылаться выходами с нестандартным сценарием, так как, даже если они найти решение блока хеш, другие шахтеры будут отвергать блок, так как они сами не могут подтвердить транзакции внутри нее. Почему бы шахтер тратить драгоценное время и электрогенераторы блоки, которые не имеют доверия будут приниматься другими шахтерами?

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

21 июня 2011, 6:45:22 PM   # 8
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

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

23 июня 2011, 8:30:07 PM   # 9
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

Блоки, произведенные Eligius будут приняты во всей сети, так как каждый понимает сценарий.

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

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

24 июня 2011, 1:46:42 AM   # 10
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Вопросы о том, как работают скрипты

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

Да.

котировка
Кроме того, если вы не используете стандартные 2 скрипта, то стандартные шахтеры будут отказываться от сделки?

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW