Если порт 8333 закрыт, будет ли узел ретрансляции сделок с его сверстниками?

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

Я ищу хороший ресурс, который решает эту проблему. Где я могу его найти?

+606
zedka 21 авг. 2018 г., 6:40:31
29 ответов

Код не оптимальный, особенно не на Объединенной горно стороны. В настоящее время не существует оптимального метода для обработки блока цепи без более продвинутый Шахтер-бассейн протокола связи.

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

Это включает в себя три компонента.

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

  2. Пересчет заголовки блоков. В блоке каждого шахтера будет завершить свою работу в разное время и, следовательно, getwork просит расположены в шахматном порядке. Однако, когда блок изменяется пул должен обновить заголовок каждого шахтера блок сразу. Бассейн не хватало достаточной вычислительной мощностью, чтобы быстро вычислить и заблокировать заголовки будут у шахтеров, работающих на устаревших работать дольше и, следовательно, имеют более высокий средний несвежий %. Обновление шахтеры в порядке их мощность может немного снизить общую сталес бассейна. Я не знаю, если в настоящее время любой бассейн это.

  3. Обновление шахтеров. Латентность ссылке Шахтера, не зависящим от бассейна, но бассейн может повысить эффективность на несколько серверов бассейн уменьшает количество прыжков для всех шахтеров. Сервера бассейн должен быть расположен как можно ближе к шахтеров. Бассейн, состоящий в основном из шахтеров в Азии не должны использовать Восточное побережье США датацентр например.

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

Осуществление опроса гарантирует, что шахтеры получают уведомление, когда изменение происходит блокировка (минус задержка указано выше), а не продолжать работать на устаревших данных до полного. Завершив один круг извращенец занимает около 10 секунд для 400MH Шахтер. Без опроса в среднем Шахтер будет тратить 5 секунд на Изменить блокирует работу на данных, которые не могут предъявить действительный блок. Данный блок изменений происходят каждые 600 секунд, что составляет примерно 1% процессорного времени впустую хеширования недопустимые заголовки блоков. Медленнее шахтеры имеют более длительный период между getworks и, таким образом, тратить больше % ГП. Бассейн не может быть эффективным без хорошей реализации избирательных.

Оба NTimeRolling и длинные опросы (ЛП) требует Шахтера, которые правильно понимают эти команды.

+991
bernerbrau 03 февр. '09 в 4:24

Если я переведу деньги через мульти-сиг сделки, они оставят мой счет, но где они до тех пор, пока другие стороны подписывают и они идут до адресата? Если никто не знаки, они вернуться ко мне?

+986
dmitriy 29 мая 2017 г., 14:14:01
Другие ответы

Связанные вопросы


Похожие вопросы

Во-первых: напомню settxfee не абсолютная плата за транзакцию. Это плата за килобайт.

Пример:

  1. Алиса посылает Бобу 1BTC
  2. Алиса 11 раз 0.1 BTC в кошельке (она получила 11 раз 0.1 БТЦ от разных лиц)
  3. Сделки Алиса будет требовать все 11 х 0,1 БТЦ вклад в создание 1BTC-к-Боб-сделки
  4. Поэтому сделка будет больше (в плане bytesize), то если она будет занимать 1 х 1.1 BTC в кошельке.

Биткоин-ядра принимаем только сделки это mempool, который содержит минимальную плату.

+982
garageagle 7 мая 2018 г., 17:22:13

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

Настоящий "продавать" с потребителями. Если достаточное количество потребителей использовать биткоины, купцы начнет принимать их - и даже если они не с их ценностью как средств дальней перевод средств и, возможно, в качестве средства сохранения стоимости. Потребителей и не заботятся о технических ограничений, это для нас, гиков, чтобы выяснить, от их имени, так что пункты 2, 5 и 6, в основном "наши проблемы" исправить. Что потребители будут заботиться о самых, на мой взгляд, #4: "клиент и его действия трудно понять."

Когда есть "приложение", который просто работает и не нуждается в официальные документы, Вики и т. д. понять, самым большим препятствием была прыгнул.

+979
Kostas Tsoleridis 17 апр. 2013 г., 15:30:30

Допустим, у меня есть блокчейн кошелек, и я хочу использовать другой Andoid приложение, или другой кошелек. Я могу это сделать? Будет ли комиссии?

+900
Aprin Sani 10 окт. 2014 г., 21:41:15

Это может работать из коробки, я считаю.

Вам не нужно беспокоиться о профилактике анализировать, что при работе с выходов образующихся при добыче полезных блока. Эти новые выходы и они не являются (при нормальных обстоятельствах) доступен в цепочке блоков Bitcoin. Клиент ОЦК может даже обеспечить эту защиту по умолчанию, я не знаю. Но как только вы делаете выплату на Шахтер, они, безусловно, добавить предупреждению повтора, если они тратят свои КБК по умолчанию.

https://github.com/coinfoundry/mining-core/blob/master/src/MiningCore/config.json#L218

Я предлагаю вам изменить существующий тег БТЦ (вместо добавления новых КБК монета), https://github.com/coinfoundry/mining-core/blob/master/src/MiningCore/config.json#L218

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

Но я хочу работать как биткоин и Bitcoin наличными - как мне это сделать? Я не собираюсь делать работу за вас, есть несколько изменений, необходимых и никто здесь не сможет ответить вам в полном объеме. Я предлагаю вам отредактировать теги БТЦ просто потому, что здорово упрощает объяснения я должен делать, и позволяет проверить, если это работает, прежде чем даже думать о проектированный подход. Люди здесь вообще не отвечаю на вопросы инженерии программного обеспечения, не говоря уже о тех, что связаны КБК.

+841
Naing Thein Kyaw 15 апр. 2018 г., 18:55:48

возможно? да. разумные? может, зависит от вашей ситуации. вы можете использовать Tor, чтобы скрыть сервере каждый сайт, который вы размещаете, но обычно вы используете Tor, только если у вас есть причина, почему вы хотите быть анонимным (или хотят повысить анонимность пользователя). Тор-это не взлом-защита.

+828
MrBlargg 15 мая 2011 г., 9:05:50

Это, кажется, некоторые проблемы с bitcoind.

Сделка может быть decripted здесь:
https://live.blockcypher.com/btc/decodetx/

обновление

Я также нашел это объяснение
https://github.com/MetacoSA/NBitcoin/issues/47

+787
JasperDM 16 авг. 2018 г., 4:27:17

Хотя это, конечно, можно реализовать скрипт для обработки доверяю путь свой Namecoin ручками ДНС-как сделки, есть несколько возможных "слабых звеньев" в такой системе. Во-первых, поскольку индивид не может Обычно быть известны доверие может быть только связана с отдельных адресов, что будет способствовать повторному использованию адресов и таким образом уменьшить анонимность в сети в целом, так как купцы не хотят, чтобы найти способы, чтобы обойти генерируя новый адрес для каждой транзакции для того, чтобы увеличить доверие клиентов. Единственной альтернативой является внедрение системы привязка нескольких адресов в один доверенная учетная запись"", который в дальнейшем будет нарушить анонимность, делая это известно точно, кто владеет какой-адресов, тем самым связывая крайней мере с одной стороны большинство биткоин-сделки с реальным человеком.

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

+777
Deriss Barda 7 июл. 2015 г., 10:29:51

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

Но какое отношение фактической добычи процесса работы? В Горно военнопленных, люди "находят" блоки генерации хэш, который выполняет определенное условие. Как мне Пос блок? Требуется минер? Или же просто кто держит монеты получить свою долю после определенного количества времени?

В Peercoin конкретно, PoW и PoS майнинг сделать самостоятельно или же они вмешиваться или влиять друг на друга?

+714
Steven Silvey 7 мая 2010 г., 3:25:07

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

+695
Chinonso Chukwuogor 16 февр. 2014 г., 23:19:39

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

+693
Humberto C 30 янв. 2015 г., 7:11:29

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

+693
andrei 29 апр. 2018 г., 10:06:45

Как же торговых точках Управлять массивной нестабильности цене?

Они действительно переоценка каждый второй с 25-50% шипов и падает за 24 часа?

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

Просьба отвечать только с реальных счетов управления ценовыми нестабильность продавцами.

+646
oatzy 6 февр. 2019 г., 6:56:10

Просто создал новый кошелек, используя биткоин версии v0.15.1 (64-х разрядных Windows), зашифрованные с помощью пароля, и создал один адрес получателя. Размер этого кошелька составляет 1 Мб.

Для сравнения, мой старый кошелек, около десятка адресов и транзакций, зашифрована, используя пароль точно такой же длины, только 100 Кб.

Я думал, что 1 Мб-это слишком большая и подозрительная. Какие могут быть причины для такого размера?

+592
user337215 10 апр. 2010 г., 4:46:16

Я только что закончил следуя инструкциям по этой ссылке https://steemit.com/btc/@libert/step-by-step-guide-on-claiming-bitcoincash-from-mycellium-wallet-201783t112141477z и это довольно легко получалось. Намного легче, чем предыдущим комментарием.

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

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

+587
carlos gutierrez 22 апр. 2016 г., 5:42:40

Есть ли способ получать уведомления по bitcoind с помощью командной строки, что некоторые входящие сделка была подтверждена?

+471
swobi 10 июл. 2011 г., 19:53:01

и сожалею о вашей потере.

Вы можете сделать поиск файла для "кошелька.дат" на его компьютер(Ы) и поиск по всему диску(с), включая вложенные папки, и скрытые файлы. Обратите внимание, в каком каталоге он находится. Если он находится в каталоге "биткоин", вы, возможно, нашли бумажник. Если да, то просто попробуйте и запустить его биткойн-клиент (программа) и посмотреть, если вы можете получить доступ к данным кошелька. Если Сомс вверх, он покажет вам баланс. Если нет баланса, то любой БТЦ, что у него, возможно, были сохранены в "обмен" кошелек или бумажный кошелек, somwehere в интернете. если есть баланс, он может изменится на другой кошелек, или отправлены в обмен на денежные стоимости. Это может, возможно, быть защищен зашифрованным паролем, который вы должны выяснить, прежде чем вы можете делать с ней что угодно.

Искать текстовые файлы, также (.txt) файл, который может содержать свой логин и пароль(ы). Они могут быть под одним из ряда программ, таких как Microsoft Office, в блокноте, в WordPad. и т. д.

Вы должны дать немного больше информации, мы можем помочь больше. Какую операционную систему он использовал (Windows 7 и Windows XP, и т. д.)

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

Я буду хранить свои данные в текстовый файл, называется "(что-то)_login.txt" и я держать их в зашифрованном виде, но я всегда держу копию пароля. Он ,возможно, также сохранить их на USB-накопителе, если вы видите какие-либо заложить вокруг, что это самый надежный способ их сохранить.

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

Я могу дать более подробные инструкции, если я знаю, какую операционную систему он использует (Windows 7 и Windows XP, и т. д.)

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

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

Одна вещь, я могу, также, предположить, что у вас есть друг, компьютерщик, пусть он/она осмотрелась вокруг на компьютер, чтобы помочь, но держать глаз на него, а я не доверяю никому. Не позволяйте никому ничего удалить, период. Заставить их работать на нем, то и есть. БТЦ стоит много денег, и вы можете потерять значительную сумму, если он делал это на некоторое время.

+435
pplorins 18 мая 2019 г., 6:40:05

Ниже текст скопированный с биткоин ссылка на разработчика bitcoin.org:

Если блок имеет три или более сделок, образуются промежуточные Меркле рядами деревьев. В TXIDs размещаются в порядке и парные, начиная с TXID фонда сделки. Каждая пара сцепляется вместе как 64 необработанные байты и SHA256(SHA256 на()) хэшируется, чтобы сформировать второй строки хеши. Если есть нечетное (не четное) число TXIDs, в последние TXID сцепляется с копией себе и хэшируются. Если есть более двух хэшей во втором ряду, процесс повторяется создать третью строки (и при необходимости повторяют еще создать дополнительные строки). Раз подряд получается только с двумя хэшами, те хэши сцепляются и хэшированных для производства Меркле корень.

Я пытаюсь использовать эту логику, чтобы воссоздать Меркле корень для блока № 100000. Есть 4 операции в этом блоке. Я начала копировать хэш транзакций, Coinbase и один после-обратно в калькулятор SHA256 для получения хэша. Тогда я хэш, хэш еще раз: то SHA256(SHA256 и()). Повторяю эту процедуру еще раз со вторым две транзакции в блоке. Наконец, я повторяю процедуру снова, используя полученные хэши, чтобы получить Меркле корень. К сожалению, это не привязывает к Меркле корень отображается в заголовке блока blockchain.info.

Может кто-нибудь объяснить, где я пошло не так?

Спасибо.

+367
Johnny Sharky 20 июл. 2014 г., 16:08:56

Да, сделка включает в себя открытый ключ. Поэтому, только когда вы тратите монеты из обращения открытого ключа на самом деле становится достоянием общественности (если вы разделили его с кем-либо иное).

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

+320
Jarett Platsis 2 мая 2010 г., 23:17:06

Я новичок в этом биткоин и, кажется, слегка смущен.

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

Итак, я начал bitcoind и через биткоин-Кинк, я выработал новый адрес(getnewaddress) и отправить биткоины на него.

Но на операции экране, он показывает выплаты для себя и баланс счета не меняется.

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

НПМ пакет, который я использовал : https://www.npmjs.com/package/bitcoin-core

+246
pandoJohn 29 дек. 2012 г., 14:07:24

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

+212
xjm 19 окт. 2014 г., 13:44:14

Давайте я перепишу свой вопрос в другой нотации, где все строчные значения являются целыми числами и заглавными значения точек.

  • Группа генератор - Г (известная постоянная).
  • Закрытый ключ-это вопрос, соответствующий открытый ключ м = кг.
  • Значение nonce Н, соответствующий точке Р = НГ.
  • X координата Р является Р.
  • Хэш-функция н(х).
  • Сигнатуры (Р,С), где с вычисляется как Н-1(H(М) + Кварта).
  • Подпись действительна МКФ р = х(х-1(х(г)г + КР)) (где (Х) означает "х-Координата точки ...")

Теперь для двух подписей, он считает, что:

  • с1 = п-1(H(М1) + Кварта)
  • с2 = н-1(H(М2) + Кварта)
  • с1 - с2 = н-1(H(М1) - ч(м2))
  • п = (с1 - с2)-1(H(М1) - ч(м2))

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

Как только вы знаете н, вы можете найти вопрос , переписав первое уравнение:

  • НС1 = ч(м1) + qр
  • НС1 - ч(м1) = qр
  • м = р-11 - H(М1))

Подставляя это в предыдущих уравнений дает:

  • м = (р (с1 - с2))-11с2 - м2х1)
+167
marcinP 21 мая 2014 г., 2:29:38

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

+155
iamchriswick 27 мая 2014 г., 8:28:04

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

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

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

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

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

По этой причине, даже с мульти-подписью сделок или шпонка вариант не рекомендуется, если у вас есть основания не доверять 2-й партии.

+70
MemoPalomas 27 мая 2013 г., 8:48:26

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

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

Статус: 0/не подтверждено, в память пула Дата: 1/12/17 20:48 Общий дебит: -0.00004551 БТЦ Общая сумма кредита: 0.00004551 БТЦ Плата за сделку: -0.00001001 БТЦ Чистая сумма: -0.00001001 БТЦ ID транзакции: 766dd7ea920a7f40579ee805e649a2fc886e89e9b514f653837b8ab219825af9 Общий размер сделки: 225 байт Индекс выхода: 0

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

В моем отладки.журнал в этот раз после перезагрузки узла я вижу:
AddToWallet 766dd7ea920a7f40579ee805e649a2fc886e89e9b514f653837b8ab219825af9

Ранее я использовал, чтобы увидеть отладка.журнал сообщений для ретрансляции транзакций после перезапуска узла, который я предполагаю, что сейчас была одна, хотя нет трансляции граф, но я не вижу, что сообщение еще этот узел перезапуска. Редактировать: сообщение журнала потребовалось некоторое время, и выглядит вот так:
2018-01-24 10:51:10 перекладку wtx 766dd7ea920a7f40579ee805e649a2fc886e89e9b514f653837b8ab219825af9 2018-01-24 10:51:10 ResendWalletTransactions: повтор 1 неподтвержденные транзакции

Что нужно сделать чтобы устранить это?

+67
tchaymore 30 апр. 2012 г., 4:56:46

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

Пример команды запроса:

{
 "событие": "адреса:обновить",
 "фильтры": {
 "адреса": ["1Biteasym3p5E4soZq8So6NjkjYugEnz2x"]
}
}

И когда баланс обновляется, вы получите следующий ответ:

{
 "событие": "адреса:обновить",
 "сведения": {
 "баланс": 1746000,
 "total_sent": 0,
 "total_received": 1746000,
 "адрес": "1Biteasym3p5E4soZq8So6NjkjYugEnz2x"
}
}
+58
Price 8 окт. 2019 г., 15:35:15

Я искал Шнорра реализации в Bitcoin Core и был удивлен увидеть, что он был снят в ноября 2016 (совершить e06e878fd7dcc99825025fa99aedb86bc7d5c29f). Почему исходный код полностью удален из ядра биткоин? Это было переехали в другое РЕПО развития?

+52
Anthony Genovese 23 янв. 2010 г., 13:03:35

Я пытаюсь "извлечь" адреса отправителя от операций OP_RETURN биткоин, но мой код не работает должным образом.

getWalletAddressOfSender(окончательной сделки Техас)

публичный статический адрес getWalletAddressOfSender(окончательной сделки Техас) {

 Адрес fromAddress = нуль;

 для (окончательной TransactionInput ти : Техас.getInputs()) {

 попробовать {

 Сценарий scriptSig = ти.getScriptSig();
 Список<ScriptChunk> чанков = scriptSig.getChunks();

 байт[] по умолчанию = scriptSig.getPubKey();
 fromAddress = новый адрес(MainNetParams.получить(), утилиты.sha256hash160(по умолчанию));// scriptSig.getFromAddress(MainNetParams.получить());

 возвращение fromAddress;

 } поймать (финал для scriptexception х) {
Системы.из.println(х.метод GetMessage());
}
}

 возвращать значение null;
}

Когда TransactionInput из адреса начиная с 3... (P2SH) scriptSig список '.getChunks()' будет иметь 5 товаров и getPubKey()' будет кидать скрипт за исключением не правильного размера, ожидал 2, но получил 5'.

scriptSig.getPubKey()

/**
 * Возвращает открытый ключ в этом скрипте. Если скрипт содержит две константы, и ничего, это считается
 * быть scriptSig (ввод) для оплаты и адреса выход и второй константа возвращается (первый
 * подписи). Если скрипт содержит постоянную и OP_CHECKSIG операции, постоянно возвращается, как это
 * предполагается прямой оплаты-ключ scriptPubKey (выход) и первый постоянный публичный ключ.
*
 * @бросает для scriptexception если сценарий ни один из названных форм.
*/
публичных байт[] getPubKey() броски для scriptexception {
 если (чанки.размер() != 2) {
 бросить новый для scriptexception("скрипт не правильный размер, ожидал 2, но получил" + куски.размер());
}
 окончательный ScriptChunk chunk0 = ломти.получить(0);
 последний байт[] chunk0data = chunk0.данных;
 окончательный ScriptChunk chunk1 = ломти.получить(1);
 последний байт[] chunk1data = chunk1.данных;
 если (chunk0data != значение null && chunk0data.длина > 2 && chunk1data != значение null && chunk1data.длина > 2) {
 // Если у нас есть две большие константы предполагать, что входные на платные и адресов вывода.
 возвращение chunk1data;
 } остальное, если (chunk1.equalsOpCode(OP_CHECKSIG) && chunk0data != значение null && chunk0data.длина > 2) {
 // Большой постоянный последующим OP_CHECKSIG ключ.
 возвращение chunk0data;
 } еще {
 бросить новый для scriptexception("сценарий не совпадает с ожидаемой форма:" + это);
}
}

Поэтому я изменил код, чтобы

публичный статический адрес getWalletAddressOfSender(окончательной сделки Техас) {

 Адрес fromAddress = нуль;

 для (окончательной TransactionInput ти : Техас.getInputs()) {

 попробовать {
 Сценарий scriptSig = ти.getScriptSig();
 Список<ScriptChunk> чанков = scriptSig.getChunks();
 если(чанки.размер() > 2) {
 Системы.из.Print("это сделка 5 чанков... ");
 байт[] pubKeyHash = scriptSig.getPubKeyHash();
 fromAddress = адрес.fromP2SHHash(MainNetParams.получить(), pubKeyHash);
 } еще {
 байт[] по умолчанию = scriptSig.getPubKey();
 fromAddress = новый адрес(MainNetParams.получить(), утилиты.sha256hash160(по умолчанию));// scriptSig.getFromAddress(MainNetParams.получить()); 
}

 возвращение fromAddress;
 } поймать (финал для scriptexception х) {
Системы.из.println(х.метод GetMessage());
}
}

 возвращать значение null;
}

но он также будет бросить еще одно исключение-скрипт не в стандартной форме scriptPubKey' (когда чанки.размер() > 2)

scriptSig.getPubKeyHash()

/**
 * <P>если программа соответствует стандартным шаблоном HASH160 ДУП &ЛТ;по умолчанию хэш&ГТ; EQUALVERIFY опция -- checksig
 * тогда эта функция получает третий элемент.
 * В этом случае, это полезно для получения адреса назначения сделки.</п>
 * 
 * <P>если программа соответствует стандарту HASH160 шаблон &lt;сценарий хэш&ГТ; равные
 * эта функция возвращает второй элемент.
 * В этом случае, это полезно для извлечения хэш выкупить сценарий сделки.</п>
 * 
 * <P>в противном случае он бросает для scriptexception.</п>
*
*/
публичных байт[] getPubKeyHash() броски для scriptexception {
 если (isSentToAddress())
 вернуть куски.получим(2).данных;
 еще если (isPayToScriptHash())
 вернуть куски.получить(1).данных;
еще
 бросить новый для scriptexception("скрипт не в стандартной форме scriptPubKey");
}

Вот такой сделке, где куски.размер() == 2, и я в состоянии извлечь адрес отправителя (1KYiKJEfdJtap9QX2v9BXJMpz2SfU4pgzw)

https://www.blockchain.com/btc/tx/b5765d54e275794939eb48c77dd8862a6e865dee6d71bc7004660dca32de8c43

Вот некоторые операции, где куски.размер() == 5 и я не в состоянии извлечь адрес отправителя (3....)

https://www.blockchain.com/btc/tx/b02e17479660a4685daba4e8f0f73aea96e0c36ab14142b68f868ac76a77455a

https://www.blockchain.com/btc/tx/f0a6708167eca88b9fe4dad4c110ddff2b3f6c5e08771793b8ca40400d4effab

https://www.blockchain.com/btc/tx/28a91393393916367e890965200d4f8af04416b65ee6fea22c0adf29af8ea3b8

Каков правильный способ получить адрес отправителя в этих случаях ?

К вашему сведению: вот мой говенный способ получить адрес получателя

// ЭТО ЕСЛИ ПИЗДЕЦ ОБХОДНОЙ ПУТЬ, ЧТОБЫ ИСПРАВИТЬ КАК МОЖНО СКОРЕЕ
@Обнуляемыми
публичный статический адрес getWalletAddressOfReceiver(окончательной сделки Техас, конечный адрес senderAddress) {

 для (окончательного вывода TransactionOutput : Техас.getOutputs()) {
 попробовать {
 заключительный сценарий сценарий = выход.getScriptPubKey(); 
 Адрес receiverAddress = скрипта.getToAddress(MainNetParams.получить(), истина);
если(receiverAddress.равна(senderAddress))
продолжить;
 возвращение receiverAddress;

 } поймать (финал для scriptexception х) {

}
}

 возвращать значение null;
}

В качестве адреса получателя в случайной позиции в "Техас.getOutputs()" я просто пропустить его, если он равен адреса отправителя и получить следующий.

+44
Tara Gol 14 июн. 2017 г., 14:24:05

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil