Я пытался восстановить публичный ключ с подписью, но мне не удалось

Я использовал данные, которые поступают от https://github.com/bitcoin/bips/blob/master/bip-0143.mediawiki#p2sh-p2wpkh. Это легко узнать, как получить sigHash. Но когда я пытаюсь восстановить открытый ключ, все от меня ожидали.

И мой вопрос

  1. Сообщение должно быть подписано не 64f3b0f4dd2bb3aa1ce8566d220cc74dda9df97d8490cc81d89d735c92e59fb6?
  2. Если сообщение 64f3b0f4dd2bb3a...59fb6, ничего плохого в моем коде?

Мой код

импорт уровнем

из алгоритма ECDSA.импорт уровнем int_to_string, string_to_int
от импорта binascii hexlify

прик = "eb696a065ef48a2192da5b28b694f87544b30fae8327c4510137a922f32c6dcf"
прик = байт.fromhex(прик)

pubk = "03ad1d8e89212f0b92c74d23bb710c00662ad1470198ac48c43f7d6f93a2a26873"

сиг = '3044022047ac8e878352d3ebbde1c94ce3a10d057c24175747116f8288e5d794d12d482f0220217f36a485cae903c713331d877c1f64677e3622ad4010726870540656fe9dcb'
сиг = байт.fromhex(сиг)

raw_msg = "64f3b0f4dd2bb3aa1ce8566d220cc74dda9df97d8490cc81d89d735c92e59fb6"
raw_msg = байт.fromhex(raw_msg)

попробуйте:
 по умолчанию = по алгоритму ECDSA.VerifyingKey.from_public_key_recovery(
 подпись=сиг данных=raw_msg, кривой=уровнем.кривые.Кривая secp256k1, sigdecode=уровнем.утиль.sigdecode_der)
 печати([hexlify(паб.to_string()) для паба в умолчанию])

за исключением исключений, как е:
 поднять е

деф check_recovery(паб):

 padx = (б'\0'*32 + int_to_string(паб.умолчанию.точка.х()))[-32:]
 если паб.умолчанию.точка.г() & 1:
 УП = Б'\3'+padx
другое:
 УП = Б'\2'+padx

 возвращение hexlify(СК)

список = [check_recovery(P) для P в умолчанию]
печать(списки)
печати([л == pubk для L в списки])

То, что я получил, был: ['519e33c6b146628b4010ae2b56aa9127ae9b795c82df021979436296daf4cceac17eb495101c3c15011e9d5a08163122054ad375730ee2e219504540eb658211 b', 'd28ba1b718b542f52fe42b51635850b5900f111affbbdcbb63465e9a3dd79ffb80251268ba8d5b5ba4aaec8a682145af51b87bd7c7ab9e956895d31db24c4d4b b'] [б'03519e33c6b146628b4010ae2b56aa9127ae9b795c82df021979436296daf4ccea', '03d28ba1b718b542f52fe42b51635850b5900f111affbbdcbb63465e9a3dd79ffb б'] [Ложное, Ложное]

Что я пропустил?

+643
Will Sams 2 мая 2018 г., 18:58:08
23 ответов
  • через физические банкоматы - дешевые распространено стоимость мин 2.5 % + 1 % (плата за сделку), но больше времени и вашей работы. Большой рынок.
  • Них. (используется авиакомпания airBaltic) - полегче, но дороже.

Ждем лучше децентрализованных систем BT до сих пор. Т. к. им идет.

+967
mvr950 03 февр. '09 в 4:24

Шахтеры держат сеть Биткойн работает

  • Шахтеры создавать новые биткоины, но

  • Сеть Bitcoin регулирует собственной добычи сложно, так что еще есть шахтеры меньше биткоины каждый майнер получает. Это держит денежную массу устойчивый (не inflatory - вы просто не можете "печатать новые деньги", как вы делаете с фиатной валюте, как доллар США).

  • Добыча требует много энергии, поэтому шахтеры сталкиваются с ростом стоимости электроэнергии и сколько нужно вложить в горно-шахтного оборудования для горных работ выгодно.

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

Вот тоже вопрос Как сложности влияет на Шахтерской доход?

+902
DOC99 3 апр. 2019 г., 16:56:14

Я прочитал оба вопроса, поэтому, пожалуйста, поправьте меня, если им отвечать на неправильный вопрос.

  1. Пользователя, который вы хотите оплатить должны отправить вам свой открытый ключ (или QR для сканирования) для того, чтобы отправить им деньги. Это, конечно, если их открытых ключей (кошелек) размещена на общедоступном веб-сайте. Пожалуйста, см. https://en.bitcoin.it/wiki/Help:Introduction#Sending_payments

  2. В общем* нет никакого вреда в разоблачении открытого ключа. Этот вопрос на крипто клиент StackExchange переходит в более подробно подвергая публичному ключу плохие?

+887
Sorcy 15 февр. 2015 г., 4:22:42

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

+882
zenit 3 нояб. 2012 г., 22:41:22

Новый блок добавляется в блокчейн, если более 50% шахтеров говорят, что она решена правильно. Это значит, что все остальные шахтеры тоже так же подтверждение работы в том числе такие же операции, как в транслируемого Блока, И же nounce, как Шахтер в последнем блоке?

+823
DJcleb 24 февр. 2010 г., 23:55:22

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

+794
Prosper 29 янв. 2016 г., 20:30:03

enter image description here

Я могу использовать API bittrex и Python для торговли.

Мне интересно о низкой спросить и высоких цен на пару.

В этом примере:

Я хочу продать XRP на 0.00008215 цене и на 0.00008245

Какой курс я могу пройти мимо? 1.0 или 1.1 или разные? И что для снижения цен?

Что это число значит?

+757
malte 1 окт. 2011 г., 19:15:27

У меня была такая же беда при добавлении средств на BTC-е. Лучший способ сделать это с помощью wiretransfer. Они дают вам информацию, необходимую для вашего банка, чтобы отправить деньги на свой счет на BTC-е.

Однако, как я добавил средства, это создать учетную запись с www.virwox.com . Вы можете добавить USD с вашей кредитной карты на ваш счет на сайте. С тех пор вы должны торговать в долларах США за Линден задатка. Оттуда вы можете перевести Линден задатка в биткоинах. Затем отправить биткоины на BTC-е счета и там Вы имеете его! Самый сложный способ получить средства на БТЦ-е.

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

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

+635
nhkni 10 сент. 2013 г., 9:58:26

Например :

взгляните на этот 37d1d453311ea5682cdb31468826178db15fa731722a5dbb09525ea901f1c41c scripthash.

Мне нужна помощь по преобразованию его адрес base58.

Спасибо.

+583
jcobhams 11 нояб. 2013 г., 17:08:16

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

Какой механизм запрещает атак такого типа?

+565
Marcell Davis 4 авг. 2011 г., 10:30:43

Да, биткоин не будет иммунитет к инфляции на уровне М2, как китайский юань, его М0 составляет всего 5,5 трлн, но ее м2 составляет 97,5 трлн. Если только биткоин облигации, выданные биткоин банковские услуги.

+512
Barmeny4 25 окт. 2017 г., 2:23:47

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

Некоторые из вопросов, которые могут потребовать изобретать что-то может быть в отношении:

  • Требования прозрачности для правительства, чтобы эффективно решать
    • Черная экономика
    • НДС и общую налоговым мошенничеством
    • Финансированием терроризма
  • Возможность привязки валюты к другим валютам, если это оценивается как хорошая идея
  • Эффективной банковской системы
  • Способность бороться с дефляцией

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

+424
SpeedBirdNine 22 окт. 2013 г., 2:14:10

https://blockchain.info/charts/blocks-size утверждает, что текущий размер биткоин блокчейн-это ~134,000 МБ. Это 127 ГБ. Означает ли это, что все машины, которые в настоящее время добыча выделяет 127 ГБ+ на блокчейн?

+423
Luke Tomes 25 нояб. 2011 г., 12:12:26

Нем используются некоторые сервера как валидаторы транзакций под названием НИС. Пользователь подписывает этот код, а затем подписал байт, передаваемых по сети, которая поступает и обрабатывается на других серверах. Если вы не сервер, то все, что вам нужно сделать, это подписать сделку и отправить его на серверы и поэтому на нем не нужен подобный язык сценариев, таких как Bitcoin. Однако серверы должны иметь сложный механизм, и код для проверки транзакций.

Вы можете проверить НЭМ сервера здесь , и кто с серверным программным обеспечением работающих под управлением может быть сервером.

Это создает клиент-сервер архитектуры, которая устраняет некоторые процессы от клиентов.

Ресурс: Макото нем основной разработчик

+362
Elzo Valugi 26 июл. 2016 г., 8:44:35

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

bitcoin:12A1MyfXbW6RhdRAZEqofac5jCQQjwEPBu?amount=1.2&[email protected]

+343
Magnus Gustavsson 29 окт. 2011 г., 13:04:16

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

По сути ответ на твой вопрос: нет, они не могут получить какого-либо преимущества перед любой другой майнер. Они могут выбирать и включать сделки с платы, но это может быть сделано путем всех шахтеров.

+313
annapovargo 7 мар. 2012 г., 8:45:34

В данном конкретном случае, я думаю, вы могли бы сказать:

2014-06-02 20:08 по Гринвичу я TheDJFC пользователей Reddit, который выложил http://www.reddit.com/r/Bitcoin/comments/273vi2/if_you_just_received_800_bitcoin_out_of_the_blue/ и прошу вернуть деньги на 1P6iT6SJe4fZkKdzZBvMGoNj4KLnpSgNsp моего 800 БТЦ, что я случайно отправил в неизвестном партии с операции 4c1c085b39a64bcbdc8e651d5ffc3cddbb212d43c455c14d652c4600aa751fd6

И подписать его со всеми 5 ввод адреса (его подписать с 1 из них только действительно мне подсказывает, что отправитель 200 из них БТЦ его подписали, не является владельцем всех 800.00197476). И если я хочу оспорить его сейчас, сказав: "У меня есть 800 БТЦ, пришлите мне то же сообщение, но включают специальное 18291312", то он должен быть в состоянии подписать (опять же со всеми 5 ввод адреса)

2014-06-02 20:08 по Гринвичу я TheDJFC пользователей Reddit, который выложил http://www.reddit.com/r/Bitcoin/comments/273vi2/if_you_just_received_800_bitcoin_out_of_the_blue/ и прошу вернуть деньги на 1P6iT6SJe4fZkKdzZBvMGoNj4KLnpSgNsp моего 800 БТЦ, что я случайно отправил в неизвестном партии с операции 4c1c085b39a64bcbdc8e651d5ffc3cddbb212d43c455c14d652c4600aa751fd6 извращенец 18291312

В других сценариях, в том числе и другие вещи, которые вы упоминаете (дата, адрес электронной почты, полное имя, с открытым ключом PGP) было бы хорошей идеей. Е. Г. если кто-то хотел послать по электронной почте мне, я мог бы подписать сообщение

2014-06-02 20:08 мирового моим открытым ключом PGP отпечатков пальцев a1b2c3a1b2c3a1b2c3a1b2c3 и мой адрес электронной почты [email protected]

Приведенные выше примеры не очень нужна дата, ИМО: на Реддите поток имеет свой собственный дата (и на самом деле, мне плевать, что он подписал это сообщение 5 минут или 2 минуты назад), и PGP отпечатков пальцев относится к от открытый ключ (который может быть прервано, если будет нужно, я думаю). Но, это никогда не помешает, и это может помочь прояснить и укрепить вещи.


Какой смысл?

Вот несколько способов, я мог крутить простой подписи как его (просто "DJFC" с одного из адресов) в свою пользу:

  • Я могу создать аккаунт на Reddit, что выглядит как "DJFC", и сказать то же самое
  • Я мог бы попросить кого-нибудь подписать (якобы это нонсен) сообщение "DJFC" с свой адрес, и делать вид, что я этого человека.
  • Несколько входов в сделки может быть различные стороны. Скажем, 200 БТД были моими, и 600 были DJFC по. Я мог бы подписать сообщение с просьбой вернуть деньги мне (и только мне) с одного из адресов, но я не мог подписать его от других.
+312
AQ The Alternate 5 дек. 2010 г., 2:50:27

Я прочитал все статьи и я понимаю почти все концепции криптовалюты. Что я до сих пор не могу понять, какие действия от операций на допустимый блок. На посту на этом ГП я нашел это:

  • Собирает транзакции из сети
  • Проверяет их, и не допускать противоречащих друг
  • Помещает их в большие пучки называемые блоки
  • Вычисляет криптографические хэши и если находит "достаточно хорош, чтобы рассчитывать"
  • Затем отправляет блок в сеть, добавив его в blockchain и зарабатывать награды взамен.

Давайте возьмем практический пример и, пожалуйста, поправьте меня, если я сделал несколько неправильных шагов:

  • Я посылаю 10BTC в Batman.
  • Потому что у меня есть отправлять BTC, сделка создается в системе.
  • Эта сделка послать ко всем узлам сети (все пользователи)
  • После поступления сделки всем пользователям, транзакция добавляется в очередь, где шахтеры занять свои сделки.
  • Шахтер возьмет сделки, обработать его (доказательство работы), и создает блок с более сделок.
  • После всех операций, проверяются Шахтера, новый блок отправлять в сеть для проверки.

Теперь вопросы:

  • Как у каждого пользователя проверить этот блокчейн (Blockchain и поделить проверки каждой транзакции, если транзакция с блокчейн-это же с одним, что он есть (потому что первые сделки отправить всем пользователям сети P2P и после этого отправить в очередь на процесс со стороны Шахтера. Это как пользователь может сравнивать сделок))?
+278
iamarno 25 янв. 2016 г., 6:02:05

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

+254
Reece Daniels 19 февр. 2014 г., 22:40:36

Это, конечно, возможно. Карта, по сути, нужны четыре функции: добавить/создать учетную запись, добавить биткоинов, биткоины доказать, потратить биткоины. Карта можешь скинуть на внешней смарт-системы, поэтому карточки не нужно делать очень много.

Каждая функция будет осуществляться следующим образом:

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

Добавить биткоинов: список идентификаторов транзакций и выходные параметры будут загружены в карту. Это также будет безопасной работы.

Доказать биткоины: эта операция будет доказать способность держателя карты провести определенное количество биткоинов. Внешнее устройство задает количество биткоинов, чтобы доказать. При желании, утверждении со стороны держателя карты с помощью PIN-кода или подобный механизм. После этого карточку формы сделки платить, что количество биткоинов, но ущерб, поэтому сделка недействительна (например, он добавляет один вход сделки на миллиард биткоинов). Затем он подписывает его. Получатель, увидев недействительная сделка подписана знает, что владелец карты мог подписать соответствующее действие. (При желании, проблема может быть включен, чтобы доказать, подписанные транзакции генерируется на месте.)

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

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

Это минимальная реализация. Можно, конечно, добавить больше возможностей.

+145
djoleasterix 22 февр. 2019 г., 22:42:47

Я думаю, что это относится к вашему биткоин.конф. Есть платформа-конкретную информацию о том, где найти его по адресу: https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File

+138
user1761818 18 дек. 2018 г., 7:08:51

Почему эта сделка включает один и тот же адрес несколько раз? Это было сделано, чтобы "скрыть" двух других адресов, где фонды возникла?

+60
annalebedeva 19 авг. 2015 г., 14:38:15

Источник в bitcoinqt является Windows совместимым, если он не был, тогда не было бы порта для Windows это. Я предполагаю, что вы должны установить Cygwin, чтобы получить соответствующие средства разработки, такие как gcc. Поскольку вы не знаете о Cygwin, я могу только предположить, что вы не знаете, как компилировать программы на *Nix. Измените текущий каталог на bitcoinqt, а затем введите "./настроить", а затем "принять". Обычно это работает, вам может потребоваться указать параметры настройки, которые вы можете узнать с "./настроить --помочь".

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

+35
Anakin86708 30 авг. 2016 г., 11:43:20

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