Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
19 января 2014, 12:29:14 AM   # 1
 
 
Сообщений: 59
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

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


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

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

Конечно, кодирующие специалисты могут сказать мне.

благодаря

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


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


19 января 2014, 12:42:58 AM   # 2
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

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





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

Хэш упрощенной операции состоял из один входной и все выходы создается, это затем подписывается секретным ключом для этого входа и хранятся в "сиг & Публичных" часть этого входа TX.  
Глянь сюда: https://en.bitcoin.it/w/images/en/e/e1/TxBinaryMap.png  

Bitcoin не имеет ни малейшего понятия о "владельцы" или "бумажники" поэтому выход изменение не является специальным, это выход так же, как и любой другой. Если вы собираетесь создать иллюстрацию для объяснения затем создать один с единственным входом является плохим выбором, поскольку следующие вопросы становятся как dì ручки п входов где п >1. Пример с 2 входами лучше, потому что 3, 20 или 4000 входов обрабатываются точно так же, как 2.  

Другая вещь, которую вы должны развестись себя от это вы не посылаете средства из открытого ключа, вы используете КОНКРЕТНЫЙ неизрасходованный выход предварительных ТЙ в качестве входных данных. Да, в разговоре мы можем сказать, "он заплатил мне адрес 123 ..." но при попытке объяснить работу Bitcoin, которая разваливается и пытаюсь понять что-либо становится невозможным. Вход специфический неизрасходованного выход. Это называется (на входе Tx) с помощью хэш-TX (предыдущего ТХ) и индекс (который Выходной сигнал, что TX используется здесь).

Таким образом, в более общем виде. Давайте предположу, что у Вас есть ТЕ, который состоит из 3 неизрасходованных выходов (которые становятся входами для этого ОГО) A, B, C и два новых выходов Y & Z (это не имеет значения, если один из них является адрес изменение или только что произошло, чтобы заплатить два различных приемников с точным количеством монет, AN входов является входом и выходом является выход).

Сначала выходные скрипты созданы. "нормальный" Bitcoin ОГО является PayToPubKeyHash, поэтому, вероятно, пользователь при условии, вам Bitcoin адреса. Это восстанавливается в PubKeyHash и скрипт, который блокирует этот вывод определенного значения для конкретного PubKeyHash создается. Выходы расположены в последовательности случайным образом (чтобы избежать утечек, какой из них "изменение"). Допустим, Z стать TxOut0 и Y становится TxOut1. Входы затем расположены в последовательности случайным образом. Допустим, А становится TxIn0, В становится TxIn1, и С становится TxIn2.

Теперь у нас есть ТЕ, который выглядит следующим образом:
TxIn0
Txin1
TxIn2
TxOut0
TxOut1


Упрощенный вариант ОГО создается (TxIn0, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для A и находится в Sig & раздел Публичных для TxIn0.
Упрощенный вариант ОГО создается (TxIn1, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для B и находится в Sig & раздел Публичных для TxIn1.
Упрощенный вариант ОГО создается (TxIn2, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для C и находится в Sig & раздел Публичных для TxIn2.

Одна последняя вещь, которая не может быть очевидным. Там нет 1: 1 отношений между входами и секретными ключами. Например, если у вас есть два выхода неизрасходованных к тому же адрес (скажем, А & C), то они имеют один и тот же секретный ключ, однако они все еще уникальные и дискретные входы поэтому выше ТЕ будет по-прежнему иметь 3 входа.

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



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

19 января 2014, 1:32:35 AM   # 3
 
 
Сообщений: 59
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

Большое спасибо!! Ваше описание было ясно, и имеет смысл.

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

Я полагал, что будет по крайней мере одна подписи на вход, но не был уверен, что, если Bitcoin реализован M = (#inputs * #outputs) подпись или просто M = (#inputs) подпись. Похоже, это последний.

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

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

19 января 2014, 3:01:44 AM   # 4
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

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

Операционные сборы не имеют выходной адрес.

Сделки не уточняют операционные издержки.

Сделки указать входы и выходы.

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

Когда шахтер (или майнинг) строит блок, они создают особый "coinbase" сделка, которая не имеет входов и выходов назначает на любые адреса, которые они хотят.

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

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

19 января 2014, 3:57:09 AM   # 5
 
 
Сообщения: 173
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

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

19 января 2014, 4:46:32 AM   # 6
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

Обработка платы ОЙ довольно оригинальное решение. Плата TX и награда минер слабо связаны.

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

Например сказать некорректным клиент создал этот ТХ:
TxIn0 (значение 100 BTC)
TxOut0 (значение 1 BTC)
TxOut1 (значение 9 BTC)

Вы только что заплатили 90 BTC в качестве платы шахтерам. Точно так же некорректный шахтер может на самом деле "стирать" монеты постоянно. Если сумма всех передатчиков в блоке 1 BTC и награда блока 25 BTC, но из-за ошибки шахтер делает coinbase ОГО 25,1 BTC, то денежная масса будет снижена на 0,9 BTC на постоянной основе.

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

Bitcoin, вероятно, не может быть изменен на данный момент, однако, для altcoin единственной (задним числом будучи 20/20) изменения, которые я бы рекомендовал бы:
а) внести плату TX явно определена в заголовке Ого и, следовательно, ТЙ является недействительным, если сумма (входы) = / = сумма (выходы) + txfee
б) сделать блок недействительным, если coinbase = / = сумма (tx_fees) + current_block_subsidy

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

19 января 2014, 6:19:48 AM   # 7
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

Например сказать некорректным клиент создал этот ТХ

TxIn0 (значение 100 BTC)
TxOut0 (значение 1 BTC)
TxOut1 (значение 9 BTC)

думаю, что вы только что заплатили 90 BTC шахтерам.

И в случае, если это не было очевидно, что это не просто теоретическая проблема. Это произошло с несколькими разработчиками при работе над программным обеспечением, которое строит сделки (в том числе и себя).

Точно так же некорректный шахтер может на самом деле "стирать" монеты постоянно. Если сумма всех передатчиков в блоке 1 BTC и награда блока 25 BTC, но из-за ошибки шахтер делает coinbase ОГО 25,1 BTC, то денежная масса будет снижена на 0,9 BTC на постоянной основе.

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

Основными клиентами являются в данный момент довольно интенсивное тестирование, так что риск больше пользовательских реализаций или делать такие вещи, как вызов rawtx RPC (что очень низкий уровень и позволит вам делать вещи, как платить 90 BTC шахтерам на BTC ТХ 9) ,

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

19 января 2014, 6:29:05 AM   # 8
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

Допустим, Z стать TxOut0 и Y становится TxOut1. Входы затем расположены в последовательности случайным образом. Допустим, А становится TxIn0, В становится TxIn1, и С становится TxIn2.

Теперь у нас есть ТЕ, который выглядит следующим образом:
TxIn0
Техасяn1
TxIn2
TxOut0
TxOut1

Упрощенный вариант ОГО создается (TxIn0, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для A и находится в Sig & раздел Публичных для TxIn0.
Упрощенный вариант ОГО создается (TxIn1, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для B и находится в Sig & раздел Публичных для TxIn1.
Упрощенный вариант ОГО создается (TxIn2, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для C и находится в Sig & раздел Публичных для TxIn2.

FTFY.

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

2 февраля 2014, 2:20:22 PM   # 9
 
 
Сообщения: 1260
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

котировка
Упрощенный вариант ОГО создается (TxIn0, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для A и находится в Sig & раздел Публичных для TxIn0.
Упрощенный вариант ОГО создается (TxIn1, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для B и находится в Sig & раздел Публичных для TxIn1.
Упрощенный вариант ОГО создается (TxIn2, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для C и находится в Sig & раздел Публичных для TxIn2.

Пожалуйста помоги. Что "упрощенная версия ОГО" хэширования?
Я работаю пример из http://bitcoin.stackexchange.com/questions/3374/how-to-redeem-a-basic-tx
Но он работает только с одним входом.
Можете ли вы объяснить, пожалуйста, как создать транзакцию с более чем одним входом?
amaclin сейчас офлайн Пожаловаться на amaclin   Ответить с цитированием Мультицитирование сообщения от amaclin Быстрый ответ на сообщение amaclin

8 февраля 2014, 7:43:14 PM   # 10
 
 
Сообщения: 2002
Цитировать по имени
цитировать ответ
по умолчанию Re: Простая сделка подписывания Вопрос

котировка
Упрощенный вариант ОГО создается (TxIn0, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для A и находится в Sig & раздел Публичных для TxIn0.
Упрощенный вариант ОГО создается (TxIn1, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для B и находится в Sig & раздел Публичных для TxIn1.
Упрощенный вариант ОГО создается (TxIn2, TxOut0, TxOut1) и хэшированный. Хэш подписывается закрытым ключом для C и находится в Sig & раздел Публичных для TxIn2.

Пожалуйста помоги. Что "упрощенная версия ОГО" хэширования?
Я работаю пример из http://bitcoin.stackexchange.com/questions/3374/how-to-redeem-a-basic-tx
Но он работает только с одним входом.
Можете ли вы объяснить, пожалуйста, как создать транзакцию с более чем одним входом?

https://en.bitcoin.it/w/images/en/7/70/Bitcoin_OpCheckSig_InDetail.png
DannyHamilton сейчас офлайн Пожаловаться на DannyHamilton   Ответить с цитированием Мультицитирование сообщения от DannyHamilton Быстрый ответ на сообщение DannyHamilton



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW