Почему этот метод добычи не удастся?

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

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

В чем проблема с этим решением?
(Я знаю, что это есть проблема, но я не могу видеть это, и я думаю, зная, что это поможет мне лучше понять, зачем нам нужны доказательства работы)

+577
quest 14 сент. 2011 г., 6:11:42
15 ответов

Я работаю на небольшой скрипт для разбивки данных внутри транзакций blockchain кошелек. Это в значительной степени улучшить свое понимание наследия и сделок SegWit (с учетом операций фонда данных меньше, чем например multisig Техас, это легче для меня, чтобы работать через).

Одна вещь, я заметил о таких сделках-это различия в выходном сценарии. В биткойн-протокола RPC API-интерфейс работает довольно хорошо в расшифровке их, хотя я хотел бы знать, как это сделать без внешнего инструмента. Я знаю, что существуют различные типы, такие как P2PKH, P2SH, и P2PK. Однако, то, что я не знаю как отличить их дают только сырые шестнадцатеричное представление.

Например эта сделка имеет два выходных скрипты:

76A91494155788E7233D7BEA9AA29FEB2ED37BC878C40B88AC

и

6A24AA21A9ED7387872912D999B657F4146043675D84B9BBCF66AD5DEC8BCC14117E4FB6999E

Протокол RPC API-интерфейс говорит мне, что первый имеет тип pubkeyhash с P2SH значение 3EstC3Hhe8zvNGP73oX9oDvo36sNCygjji

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

Другой пример, Генезис заблокировать приложение Coinbase транзакции декодируется в RPC API имеет тип по умолчанию с помощью этого скрипта:

4104678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5fac

Вопрос: Как я могу взять этот скрипт и определить тип и сборка проводки (ОП код скрипта) без внешних API?

Спасибо!

+986
Liberty Sky 03 февр. '09 в 4:24

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

Кроме того, я хочу, чтобы монетизировать приложение, применяя для пользователей, чтобы оплатить гонорар для того, чтобы пройти. Все это без проведения каких-либо средств, благодаря операции P2SH. Я хотел бы знать, если эта модель заявление должно соответствовать/ЗСК правил ПОД / ФТ, или если пользователи могут оставаться анонимными.

+980
Vaibhav Sharma 13 июн. 2018 г., 17:00:26

Im, используя библиотеку bitcoinj и blockcypher API для создания кошельков и транзакций в биткоин тестовом режиме. Я получаю эту ошибку при отправке подписанной сделки.

сообщение "Error": "ошибка при проверке генерируется транзакции: ошибка запуска сценария для ввода 0 ссылок 1eaf42445d037370ed5b37dd2e5a4a4f672aabb659e200d81a5f6fe9545e52d7 в 0: сценарий не был успешно проверен."

Итак, сначала я создаю новую транзакцию, то в ответ я получаю это

{
 "Техас": {
 "block_height": -1,
 "block_index": -1,
 "хэш": "a3d9881f64e987bf700436118da676745629b29aaec00ceee658f03a61330987",
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc",
"mgKGQMT9TB9XjhpVZCUsSNNQV5pWF6yqsb"
],
 "итого": 11320617,
 "сборы": 4700,
 "размер": 119,
 "преферанс": "высокий",
 "relayed_by": "82.117.202.34",
 "получил": "2019-01-31T13:30:07.624499085 з",
 "Сильвер": 1,
 "double_spend": ложные,
 "vin_sz": 1,
 "vout_sz": 2,
 "подтверждений": 0,
 "входы": [
{
 "prev_hash": "1eaf42445d037370ed5b37dd2e5a4a4f672aabb659e200d81a5f6fe9545e52d7",
 "output_index": 0,
 "output_value": 11325317,
 "последовательности": 4294967295,
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc"
],
 "script_type": "оплата-по умолчанию-хэш",
 "возраст": 1453583
}
],
 "выходы": [
{
 "ценность": 5000,
 "сценарий": "76a91408c24023f9172ab0042ea2bef2b077517e0b826288ac",
 "адреса": [
"mgKGQMT9TB9XjhpVZCUsSNNQV5pWF6yqsb"
],
 "script_type": "оплата-по умолчанию-хаш"
},
{
 "значение": 11315617,
 "сценарий": "76a9142d36b60f3dd37f3cca06876846a597bfdf2cf63f88ac",
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc"
],
 "script_type": "оплата-по умолчанию-хаш"
}
]
},
 "на предмет заключения": [
"389a2e15c404b2c2a85ce4d68101fc568f55e42df3a4c1c97fdeaa7816cee29c"
]
}

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

частная весело getSignedTransactionHex(transactionToSign: строка): строка {
 Вэл кошелек = walletService.loadWalletFromFile("dsadasd")

 ВАР закрытый ключ: типа BigInteger? = нуль
 кошелек.importedKeys.по каждому элементу {
 закрытый ключ = это.привчной
 открытый ключ = это.publicKeyAsHex
 Системы.из.код println("открытый ключ: $открытый ключ")
}

 ecKeyWif Вэл = Эке.fromPrivate(закрытый ключ)
 Вэл wifAsString = ecKeyWif.getPrivateKeyAsWiF(walletService.getTestNetwork())

 Вэл ДПК = DumpedPrivateKey.fromBase58(нуль, wifAsString)
 Вэл эке = ДПК.ключ

 тестовом режиме Вэл = walletService.getTestNetwork()
 Вэл проверить = эке.getPrivateKeyAsWiF(тестовом режиме)

 хэш-Вэл = Sha256Hash.обертывание(transactionToSign)
 подпись Вэл = эке.знак(хэш)

 Валь РЭС = подпись.encodeToDER()

 возвращение РЭС.toHexString()
}

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

{
 "Техас": {
 "block_height": -1,
 "block_index": -1,
 "хэш": "a3d9881f64e987bf700436118da676745629b29aaec00ceee658f03a61330987",
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc",
"mgKGQMT9TB9XjhpVZCUsSNNQV5pWF6yqsb"
],
 "итого": 11320617,
 "сборы": 4700,
 "размер": 119,
 "преферанс": "высокий",
 "relayed_by": "82.117.202.34",
 "получил": "2019-01-31T09:39:33.07827321 з",
 "Сильвер": 1,
 "double_spend": ложные,
 "vin_sz": 1,
 "vout_sz": 2,
 "подтверждений": 0,
 "входы": [
{
 "pre1v_hash": "1eaf42445d037370ed5b37dd2e5a4a4f672aabb659e200d81a5f6fe9545e52d7",
 "output_index": 0,
 "output_value": 11325317,
 "последовательности": 4294967295,
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc"
],
 "script_type": "оплата-по умолчанию-хэш",
 "возраст": 1453583
}
],
 "выходы": [
{
 "ценность": 5000,
 "сценарий": "76a91408c24023f9172ab0042ea2bef2b077517e0b826288ac",
 "адреса": [
"mgKGQMT9TB9XjhpVZCUsSNNQV5pWF6yqsb"
],
 "script_type": "оплата-по умолчанию-хаш"
},
{
 "значение": 11315617,
 "сценарий": "76a9142d36b60f3dd37f3cca06876846a597bfdf2cf63f88ac",
 "адреса": [
"mje2F5tdP5t2R5sWyPGdTD2EycbBJqKGtc"
],
 "script_type": "оплата-по умолчанию-хаш"
}
]
},
 "на предмет заключения": [
"389a2e15c404b2c2a85ce4d68101fc568f55e42df3a4c1c97fdeaa7816cee29c"
],
 "подписей": [
"30440220236ab8fddb66f9ae008e17e05795ed37394e07f0f1df4325d30d03aac4fac56a02200f45f4eb9174c58d419df3d98ad045a4f21cc35b1a5912c3df63e336e7ce59c4"
],
 "публичные ключи": [
"0268768af434d44d700e0578bbbd89ad7100ee83f86430310fec3b7931468c1b9e"
]
}

Я делаю что-то неправильно, наверное, у вас есть какие-либо предложения?

+828
Dannise 22 янв. 2016 г., 8:54:14

может быть, нужно (пере)определить безопасность немного больше. Проблема безопасности будет означать вреда для Вас, Вашего компьютера или может на свои деньги (ака потерял Сатоши). Вы правы, вы опубликовать открытый ключ в подписанный сделки. Это делают все пользователи, которые делают операции, и как такие "как задумано". Никакого вреда безопасности занимается такого разглашения вашего адреса (старшие эксперты Bitcoin на доказательство меня неправильно). Почему? Но ваше право на конфиденциальность может потеряться. Опять вы правы, повторное использование адреса плохо для конфиденциальности. Следовательно, HD-кошельки и (BIP32/43/44). Потеря конфиденциальности может стать проблемой безопасности в следующий шаг за более или менее причинам: 1. кто-то пытается скрыть биткоин богатство или не задекларировал средства перед налоговыми органами, и теперь "боится" санкций, после его деятельности узнают! В этом случае санкции являются законным. И да, они потом вызывают вопрос безопасности для вас (компьютеры конфискованы, рискует попасть в тюрьму). 2. кто-то (налога, заявленной, достойное) богатство раскрыта, которая привлекает преступников, которые могли бы подготовить меры, чтобы ограбить вас в одну или другую сторону. Это, как правило, считается проблема безопасности, а также.

Резюме: сохранить приватность на максимум, не повторного использования адресов. Технология биткоин позволяет для защиты активов и минимальный набор личной жизни. Высшее конфиденциальности, и как таковой больше "безопасность" приходит с Следующий уровень технологии как tumblebit или перебежчиков mimble. Просто мои мысли.

+803
dragonwizard404 23 янв. 2011 г., 21:43:56

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

Плохие причины, чтобы отправить изменения на тот же адрес

  • Сборов. Некоторые люди думают, что они будут платить меньше Фесс, если все свои средства в один и тот же адрес. Это не тот случай, сборы определяются количество входов (и возраст, подписей и выходов), а не адреса. 1 BTC в адрес и в адрес Б будет стоить, чтобы отправить тем же, чем 2 BTC в двух разных входов в адрес, а
  • Удобство. Некоторые люди думают, что имея много адресов труднее управлять. Это неправильно, все кошельки будут делать это автоматически.

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

  • Адреса Multisignature (тех, которые нуждаются в несколько сторон, подписывающих сделки). Те работают иначе, чем обычные адреса, а не "жить" в бумажнике. Пользователи должны создать их по одному, как правило, по очень веским причинам (например, нужны две подписи, чтобы платить с общих денег) и отправить изменения на новый адрес multisignature бы победить своей цели.
  • Отчетности. Если кто-то публикует адрес, чтобы другие могли проверить, что он делает с фондами имеет смысл всегда посылают туда изменения, так что легче для тех, кто проверить.
+795
polyone 26 авг. 2019 г., 19:05:31

В консоли делать listunspent
которая покажет вам все UTXO в вашем бумажнике, включая txids.
Вы можете помочь , чтобы получить список команд,
затем Help <команда> для получения подробной информации о каждой команде


+657
Cenitel 26 июл. 2015 г., 7:17:22

Это свидетель сразу после подписания.

ScriptSig: PUSHDATA(22)[00144b9d2d3dd1174ad656754a0c664e7a129b131f3b]
Свидетель: 0247304402201cf8db0c4afc164970ec4397327fe9b1dd9b7ff4a9093f94e554d624b5ffdcb702202848072c17f2bcce16b8d3d7cb2efdad87bc6c942b79f44b79f1c52f817d81ea012102384052a5ecde83bf8ee7ed77f378edb58aa65de22c4e91af87eee68015b9d509

0247304402201cf8db0c4afc164970ec4397327fe9b1dd9b7ff4a9093f94e554d624b5ffdcb702202848072c17f2bcce16b8d3d7cb2efdad87bc6c942b79f44b79f1c52f817d81ea012102384052a5ecde83bf8ee7ed77f378edb58aa65de22c4e91af87eee68015b9d509

Редактировать:

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

Вам придется парсить свидетеля.

02 : 2 пункты

47 : 0x47 = 71 байт (подпись)

304402201cf8db0c4afc164970ec4397327fe9b1dd9b7ff4a9093f94e554d624b5ffdcb702202848072c17f2bcce16b8d3d7cb2efdad87bc6c942b79f44b79f1c52f817d81ea01 : фактической подписи (последний байт-код sighash)

21 : 0x21 = 33 байт (по умолчанию)

02384052a5ecde83bf8ee7ed77f378edb58aa65de22c4e91af87eee68015b9d509 : собственно по умолчанию

+577
KD DEVELOPER 29 апр. 2010 г., 13:25:23

Почему приверженность сделок просто не может быть HTLCs вместо договоров отзывную имея второй половине отзывную закрытый ключ? Я имею в виду, зачем вообще создавать отзывную открытый ключ из двух половинок Алисы и Боба закрытых ключей и при недействительности сделки обмена на другую половину, когда Элис и Боб могли бы создать две сделки, обе отзывные с двух отдельных ключей известен только Алисе и Бобу, которые позже будут обменены для того, чтобы аннулировать старые транзакции?

Редактировать: мое текущее понимание того, как сделки обязательство работать

Обе Алисы (а) и Боб (б) создать встречных сделок:

TX_A:

5 БТЦ -> Б
если RK_A
 5 БТЦ -> Б
еще если 1к блоков позже
 5 БТЦ -> А
(Подпись Б)

TX_B:

5 БТЦ -> А
если RK_B
 5 БТЦ -> А
еще если 1к блоков позже
 5 БТЦ -> Б
(Подписано) 

Где RK_A это ключ отзыв. Теперь, если TX_A и TX_B действительны, ни Б RK_B, не имеет RK_B. Таким образом, оба они могут подписать их соответствующих сделок и "выйти" из этого канала после 1к блоков без риска потерять все свои БТЦ.

Однако, после того, как оба A и B решают забыть о старых балансе у них недействительным TX_A и TX_B. Они делают это путем выявления RK_A к B и B раскрывая RK_B А. Таким образом, если, например, знаки TX_A и транслирует его в сеть Bitcoin, могут взять RK_A и претендовать на дополнительные 5 БТЦ.


Теперь процесс создания и раскрывая RK_X похоже, и на мои вопросы, поэтому, почему бы просто не иметь случайных чисел в места RK_A и RK_B, что только A и B известно и которые впоследствии обменяли, когда TX_A и TX_B должны быть признаны недействительными?

+566
JLund 13 янв. 2016 г., 22:10:22

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

  • 1 МБ каждые 10 минут (в среднем)
  • 6 МБ каждый час (в среднем)
  • Около 144 МБ в день
  • Просто немного более 1 ГБ в неделю
  • Немного меньше, чем 4,4 ГБ в месяц
  • Немного меньше, чем 52.6 ГБ в год

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

+464
user228873 2 сент. 2017 г., 3:00:59

Есть довольно полный список на TradeLi.ст

БТЦ-е:

Фиат

 ПАРА BTC/USD НА БТЦ/РУР БТЦ/ЛТЦ ЕВРО/ДОЛЛАР ЛТЦ/РУР ЛТК/ПСУ ЕВРО/ДОЛЛАР ЧЖК/USD И USD/РУБ EUR/ДОЛЛАР

Крипто

 ЛТЦ/БТЦ НМЦ/БТЦ ЧЖК/БТЦ КИП/БТЦ ППЦ/БТЦ КДК/БТЦ ХРМ/БТЦ

Coinex, Virtuex, бирже Cryptsy (слишком много перечислять)

+445
user266824 21 сент. 2017 г., 16:39:23

Моя ВСН кошелек префиксов адресов с "bitcoincash:" строку и хэш-сама (без префикса) составляет 42 символов. Допустим, мне нужно отправить некоторые МПБ по старому адресу (34 символов без префиксов), будет ли это работать? Если нет, то что мне нужно сделать, чтобы заставить его работать?

+334
Christopher Lee 5 сент. 2010 г., 9:46:14

Итак, существует два способа запустить эту атаку.

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

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

Я думаю, что вы тут говорили о (1) где (2) имеет больше шансов на успех атаку. С (1), Да, это займет долгое время, так как у вас больше 6 блоков, чтобы догнать. С (2), вы, вероятно, БИЛ (1) Вскоре, однако, много подтверждений. Поскольку длина цепочки определяется тем, насколько доказательство работы в нем, вы могли бы выиграть с более короткой цепью (!). В любом случае, рассчитав вероятность этого время t представляет собой интересную задачу для (2), но это на уровне или выше ваш процент мощности майнинга на любую длину пока использовал второй способ атаки.

+300
Thorpentin 16 июн. 2011 г., 0:35:05

Бип 39 имеет такие стандартные для этого, и, насколько мне известно, нет никакого стандарта для разделения семян, как это. Однако вы могли бы создать нечто такое, что использует секрет разделения Шамира разделения семян (который мнемосхема кодирует) на части и затем кодирует эти части как-то запомнился, как мнемоника. Но ЕМНИП, нет программного обеспечения, которое делает это для вас.

+148
varab ban 2 июн. 2014 г., 22:07:01

Я видел комментарии, которые имеют меньше оперативной памяти на материнской плате, чем в одном из своих видеочипов может существенно снизить хэшрейт. Если только работает 2 ГБ оперативной памяти, но карты уже 3, так что попробуйте 4ГБ оперативной памяти на вашей мобо и посмотреть, если это делает разницу

+98
Squiller 6 сент. 2012 г., 23:22:57

Добавление: похоже, монеты были найдены; просто цитирую соответствующее решение с наружной резьбой и ответить на запись. Короче говоря, проблема была, как мы и подозревали: бумажный кошелек не содержат все адреса меняются от 5btc операций, которые произошли после импорта тге. Простое решение проблемы:

Я начал с клиента /приложения/биткоин-Кварты.приложение/содержание/Макосе/биткоин-Qт -salvagewallet. Он по-прежнему синхронизации с сетью, но это выглядит многообещающе, так как он сейчас показывает +баланс 4.9315!


Ок, я начинаю собрать воедино то, что произошло сейчас.

  1. По крайней мере, на свой блокчейн ссылкам, вы изначально получили 10 бтц через 3 операции, в 1Fr3p адрес затем провел 5 по 17 апреля. Так что конкретный адрес только 5 оставшихся на момент ввоза для всех.

  2. Когда вы импортируете, а не отправлять монеты по-прежнему будет отображаться в обоих кошельках; если вы посылаете их от старого После что это не обновление в новый кошелек из-за изменения адреса. Импорт != расходов.

  3. Дополнительно нужно импортировать адреса изменения, которые были созданы с помощью Bitcoin-Qt для всех для правильной синхронизации. Проверить эту нить.

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

  5. Если вы хотите снова использовать Qt клиента, создать новый кошелек по всем сделкам двигаться вперед.

обновление Что вы знаете об этих операциях с вашей ссылке в комментариях? Ваш клиент только показывает -.01 часть этих ТХ но остальные, кажется, чего не хватает...

screenshot from blockchain.info

+58
Sophie C 20 авг. 2018 г., 15:52:46

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