клонирование биткоин Биткоин как найти новых узлов

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

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

вопрос именно про узлы,позвольте мне объяснить мою ситуацию.

У меня сейчас 3 ВМ работает биткоин кошельки клон, который сейчас новую монету.

ВМ 1 = подключен к узлу 100.00.00.0

coinname.конф

задача addnode=100.00.00.0

ВМ 2 = это сервер, который предоставляет IP: 100.00.00.0 для виртуальной машины 1

ВМ 3 = случайный кошелек, а также подключить к IP - 100.00.00.0 для виртуальной машины VM2.

coinname.конф

задача addnode=100.00.00.0

Мне удалили узлы и DNS от net.cpp для этого эксперимента ОК?

strMainNetDNSSeed[][2]

pnSeed[]

так что я начал делать эксперимент, превратив в ВМ 2 , которая обеспечивает IP для подключения кошельки.

после этого VM1 и виртуальная машина 3 потеряли связь, я ожидал, что.

так что мой вопрос, как кошелек ВМ 1 и ВМ-3 позволит подключить к себе и держать сеть, если ВМ 2. если сервер находится в автономном режиме? а также если 2 пользователи не знаете IP-это совместное узлы?

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

Как биткоин найти сверстников?

Как изначально биткоин узлы найти сверстников?

https://en.bitcoin.it/wiki/Satoshi_Client_Node_Discovery

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

+736
Ryan Conner 9 авг. 2019 г., 17:28:53
27 ответов

Я новичок в Bitcoin и blockchain и я пишу диссертацию для моего университета об этой теме.

У меня вообще вопрос о цифровых подписей, которые необходимы для проверки транзакции.

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

Это секретный ключ равен секретный ключ, который необходим, чтобы провести операции.

Аналог: это открытый ключ проверки такой же, как открытого ключа, хеш-биткоин адрес ?

Спасибо заранее.

+995
Bruce Lehnertz 03 февр. '09 в 4:24

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

+987
Nick Anderegg 14 июл. 2015 г., 17:15:03
Другие ответы

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


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

На прошлой неделе Департамент внутренней безопасности США перестал Dwolla все трансферы в/из МФ Gox. Делать банковские переводы в/из МФ Gox все еще работает? Будут МДИ нас в итоге закрыли переводы в/из МФ Gox?

+907
paul2520 7 мар. 2012 г., 6:34:33

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

  • оригинальный секретный семян
  • идентификатор / порядковый номер нужного ключей

Существует два типа детерминированных кошельков:

  • последовательный детерминированные кошельки
  • иерархически детерминированные кошельки

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

Например, если я использую фразу:

пастух Маис набор эмаль Гораций дива размер максимальной рыкает на самом деле торговый центр'

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

шестигранные(и SHA256 ("пастухом" Маис набор эмаль Гораций дива размер максимум реально ревут центра 0'))
шестигранные(и SHA256 ("пастухом" Маис набор эмаль Гораций дива размер максимально реально ревут центра 1'))
...

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

Иерархической детерминированной кошелек, с другой стороны, начинается с одного ключей в качестве мастер-ключей. Закрытого ключа ключей есть тайное семя.

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

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

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

...

Если вы ищете Python реализации последовательных детерминированных кошельков, я приготовила здесь: https://github.com/blockstack/pybitcoin (или просто сделать "Пип установить pybitcoin").

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

+863
PedroR 16 апр. 2014 г., 15:43:53

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

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

+847
Cliff Brown 29 авг. 2019 г., 6:06:38

В бит поле-это компактное представление цели.

Пример:

бит: 1d00ffff
цель: 00ffff0000000000000000000000000000000000000000000000000000

бит: 1cfff00
цель: ffff0000000000000000000000000000000000000000000000000000

Но эти двое на самом деле представляют один и тот же номер.

инт(цель) -> 26959535291011309493156476344723991336010898738574164086137773096960 для обоих приведенных выше целей.

Что (если что) делает биты на уникальное представление цели?


Уточнение:

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

+814
D Swingley 27 окт. 2016 г., 11:09:45

Вчера я послал сделки от своего 2-на-4 кошелек с мульти-подписью в доплата для Mac. Сделка была подписана мной и еще 1 пользователей. Он был показан в блокчейн (как доплата говорит). Но когда я копирую ТХ ID и найти его на Blockchain.info или понимание - я вижу, что "сделка не найден" сообщение.

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

Есть ли обходной путь для этого?

+791
Taapo 2 июн. 2017 г., 10:58:22

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

отладка=категория

Вывод отладочной информации (по умолчанию: 0, поставляя является необязательным). Если не подается или если = 1, вывод всей отладочной информации. может быть:

чистая, Тор, mempool, протокол HTTP, скамья, zmq, дБ, ЭКП, estimatefee, addrman, selectcoins, переиндексация, cmpctblock, Рэнд, чернослив, прокси, mempoolrej, libevent, coindb, Кварты, leveldb.

+686
Sans Comic 3 июл. 2010 г., 0:24:26

Я знаю, что существуют ограничения на минимальный размер комиссии по сделке (около 5400 Сатоши)

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

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

Абсолютно. Шахтер может включать в себя любую операцию, которая не нарушает правил сети, по любой причине.

+638
Saifulyazan Labey 8 нояб. 2014 г., 6:15:28

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

+578
Kaos 5 окт. 2018 г., 7:36:54

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

"Доступный остаток-это то, что кошелек в настоящее время рассматривает расходуемого".

Адрес, сгенерированный с ./биткоин-Кинк -регтест getnewaddress является, вероятно, просто скрипт, который направляет денежные средства обратно на свой основной аккаунт, так что адреса разные, но можно провести с использованием закрытого ключа в основной аккаунт. Вы можете убедиться в этом ./биткоин-Кинк -регтест listaccounts и, видя, если он возвращает что-то вроде:

{
 "": 10.00000000,
...
}

В "" счет является учетной записью по умолчанию, и вы можете получить его по адресу: ./биткоин-Кинк -регтест getaccountaddress "".

Это может быть более удобным, чтобы генерировать адрес в качестве нового счета bitcoind кошелек. Попробуйте использовать:

./биткоин-Кинк -регтест getaccountaddress "<optional_name>"

Затем отправить монеты на этот адрес и проверить ее баланс с помощью ./биткоин-Кинк -регтест listaccounts

+535
Digital Innovator 12 мар. 2015 г., 0:21:48

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

+521
Pandazoic 5 нояб. 2013 г., 5:00:06

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

+519
kovalesik 17 нояб. 2018 г., 12:18:05

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

+500
slavic 14 авг. 2016 г., 0:32:05

Мне удалось запрограммировать приложение на Python, которое отправляет действительных сделок, которые проводят 1 вход, но я действительно не могу заставить его работать с 2 или более входов.

Так что мой вопрос, как именно это хэш, который должен быть подписан на каждой входной рассчитали?

Что я делал до сих пор, является, например, если мы имеем 2 входа, мы создаем транзакцию, которая проводит только первый вход, и это хэш, который должен быть подписан по первому входу. И то же самое с вторым входом, мы создаем транзакцию, которая проводит только второй ввод. Обе сделки должны иметь одинаковые выходы.

Это правильно? Например, мы хотим провести ввод аааа:0 и ввод вввв:1 и мы хотим, чтобы отправить их на адрес:

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

'Версия': 1,
"входы": (1)
 'output_tx_hash': 'аааа',
 'output_position': 0,
 'скрипт': оригинальный сценарий, как: '76a914' + хэш + '88ac',
 'последовательность': ffffffff,
'выходы': (1)
 "значение": 100000
 'скрипт' : '76a914' + хэш 88ac ключ паб БТЦ+''
'locktime': 0

И чтобы вычислить хэш, второй вход должен подписать:

'Версия': 1,
"входы": (1)
 'output_tx_hash': 'вввв', # этот изменения
 'output_position': 1, # Этот изменения
 'скрипт': оригинальный сценарий, как: '76a914' + хэш + '88ac',
 'последовательность': ffffffff,
'выходы': (1)
 "значение": 100000
 'скрипт' : '76a914' + хэш 88ac ключ паб БТЦ+''
'locktime': 0

Мы сериализовать их, добавить их 01000000 (SIGHASH_ALL), двойной SHA256 и, что подписать его и добавить 01. Таким образом, мы получаем две подписи, которые мы будем использовать на каждом входе соответственно. Мое приложение делает именно это и не работает. Что я упускаю?

+475
Dennis Guo 20 сент. 2014 г., 0:46:00

Много статей о криптовалютах объяснить понятие "длинная цепочка", которая идет вместе с такими цифрами:

fork example

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

+418
drjlevi6 2 апр. 2019 г., 5:14:56

Я думаю, что вы правы, поскольку успех/неудача каждого извращенца, чтобы удовлетворить сложность цель двоичном, а не непрерывный, это дискретное распределение вероятностей и правильное распределение должно быть отрицательное биномиальное. Однако поскольку число испытаний требуется для каждого блока очень большой, ($> 10^20$ на момент написания этой статьи), это очень хорошее приближение, чтобы взять лимитом $р\к\infty$, как описано на странице Википедии. Это эквивалентно принимая вероятность успеха в любом одном испытании равной нулю, сохраняя среднее значение распределения фиксированной и приводит в распределение Пуассона. Таким образом, разница составляет ориентировочно меньше чем 10^-20 и слишком мал, чтобы быть измеримыми.

+385
Drupka 26 сент. 2010 г., 13:47:51

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

bitcoin-qt.exe -переменной datadir=

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

+251
Queenmum 26 окт. 2010 г., 19:48:09

Я был под впечатлением, что даже отдельный человек может, если он завершает доказательство работы во-первых, причиной добавлением блока в блокчейне? Я что-то упускаю?

Что могло случиться, что в 2 кварталах встречаются одновременно. Который обычно вызывает сеть разбить на две цепи ( одна часть сети собирается построить/найти новый хэш на основе блок Г, а другая часть сети пытается найти новый действующий хэш на основе блока Х.).

Кто найдет блок Z сначала создает самую длинную цепочку и таким образом обесценивает покороче. ( Шахтеров, которые строят на блок Г найти блок Z так что теперь блок Х ( который самый короткий цепь) получает потерянные )= теперь инвалид.

Тот же принцип применим и к 51% атаки, так как у вас большинство hashpower вы всегда будете (гипотетически) найти действительные хэш-быстрее, чем другие цепи, которая имеет 49% hashpower.

В этом случае, ни один человек ( если человек владеет 51% hashpower) будет в состоянии "шахта" блок/(или, скорее, - сделать блок добавлен в длинный/действует цепь).

Ваше название что-то еще, то ваш вопрос,

Сделать несколько шахтеров способствовать горно тот же блок, даже если они не в одном бассейне

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

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

+251
Ha Di 22 апр. 2018 г., 9:47:05

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

BitcoinSpinner пример Андроид приложения, построенного на вершине BCCAPI.

Если вы должны были использовать это, чтобы сделать приложение для iPhone, вам придется портировать BCCAPI с Java на C-подобный язык.

+247
kozachkov 25 июн. 2019 г., 21:06:51

Есть место, где я могу выяснить, как быстро blockchian NXT-это растет? Мне любопытно, потому что его в этом году (2014) где куча функций NXT вышел на сцену и было интересно, как можно было бы контролировать рост размера блокчейна из месяца в месяц. Это может дать мне хорошую идею использования NXT и принятия.

+145
user9980782 26 окт. 2015 г., 7:05:24

Что такое правильный способ для Этси владелец магазина продавать свои товары с помощью Bitcoin?

Я написал подробное руководство о том, как принимать платежи в биткоинах на Etsy - она включает в себя такие вещи, как:

  • как избежать нарушения политики Этси, когда принимать биткоины
  • заказы ценообразования клиентов в Bitcoin по текущему курсу
  • используя дополнительный платежный процессор для преобразования биткоин платежи непосредственно на наличные
+109
hungneox 17 июн. 2019 г., 1:03:30

Это кажется очень простой вопрос, но у меня возникают проблемы в поисках ответов на него. Мое понимание заключается в том, что мой клиент Bitcoin (Биткойн версии v0.7.1-бета) в основном теоретически скачал всю историю сделки каждая биткоин-транзакция, которая когда-либо произошла. Я вижу, мои собственные операции на экране операций. Есть ли способ, чтобы увидеть транзакции с кошельков, что я не импортирован или создан на этом клиенте? Я просто пытаюсь получить полное представление о технологии Bitcoin здесь. Причина клиент не показывает транзакции с других кошельков за счет:

  1. Удобство для пользователя - это будет подавляющим, чтобы вести поиск по всем адресам кошелек, когда большинство людей заботятся только о своих (Есть ли способ, чтобы переопределить это?);
  2. Технические ограничения - это нецелесообразно рассматривать каждую сделку в огромной базе данных, когда вы хотите или какой-то определенной части информации;
  3. Недостатки конструкции - не каждая сделка на самом деле нет всей необходимой информацией;
  4. Неприкосновенности частной жизни - делая его слишком легким, чтобы просмотреть проводки чужие люди будут кричать о личной жизни еще более решительно;
  5. Что-то я пропустил?
+98
BestPractices 29 мар. 2014 г., 5:32:15

Недавно я отправил 0.03 BTC в Сатоши Дайс без ТХ плата от blockchain.info кошелек. Он пробыл около 3 дней, не будучи подтверждены, и он, наконец, закончился. В некоторые моменты, в то время как Техас был неофициальный распространения сети падает до 2 узлов, а затем вернуться назад до 50 узлов. После этого срока сумма сделки была добавлена обратно на мой баланс. Какие-либо подробности сделки исчезли из моего кошелька и от Блока Эксплорер... через несколько часов после окончания сделки, был выдан автоматически с той же суммы на тот же адрес кости Сатоши.

+82
Jim Hitch 14 июн. 2013 г., 0:52:07

Когда люди "Биткойн", они на самом деле имеют доступ к закрытому ключу, что позволяет им подписать один или несколько неизрасходованных сделки выходов (UTXO) соответствующего биткоин сумму. Суммы в выводит сделки фактически указано как количество сатоши.

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

+57
garfbradaz 22 февр. 2017 г., 9:18:31

Это не совсем хороший вопрос, но в рамках ответа Давида Шварца (который, в целом, "да"), я не думаю, что вам нужно, чтобы воссоздать экземпляр SystemRandom за каждый шестнадцатеричный символ создания. От https://docs.python.org/2/library/random.html#random.SystemRandom:

[SystemRandom] использует ОС.urandom() функция для генерации случайных чисел из источников, предусмотренных операционной системой. Не на всех системах. Не полагаться на государственные программы и последовательности непередаваемы. Таким образом, семя() и jumpahead() методы не дают эффекта и игнорируются. В getstate() и выполнении функция setState() методы поднять NotImplementedError, если позовут.

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

от случайных SystemRandom импорт 
от импорта binascii hexlify
от импорта структура структура

SYS_RAN = SystemRandom()
Пакер = структура('>QQQQ')
MIN_VAL = 0x1L
MAX_VAL = 0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141

деф mkprivkey():
 ключ = SYS_RAN.randint(MIN_VAL, MAX_VAL)
 значение key0 = ключ >> 192
 ключ1 = (ключ >> 128) & 0xffffffffffffffff
 ключ2 = (ключ >> 64) & 0xffffffffffffffff
 ключ3 = ключ & 0xffffffffffffffff

 возвращение hexlify(Пакер.пакет(значение key0, ключ1, ключ2, ключ3))

В моем тестирования, выше это на порядок быстрее, даже после нормализации создания SystemRandom экземпляров и снимая тест, чтобы увидеть, если вы превысили максимальное значение (за Дэвида Шварца предложение):

% времени в Python ./test_ecdsaprivkey.py
mkprivkey: 0.016 МС авг
create_private_key: 0.168 МС авг
питон ./test_ecdsaprivkey.py 9.99 пользователей с 11.00 системе с 86% процессора 24.388 общая

Конечно, это, вероятно, не имеет значения, если вы создаете десятки тысяч ключей.

+24
Robin Trietsch 11 июл. 2010 г., 23:31:51

Почему это разные?

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

Это blockchain.info не следует в протоколе Bitcoin сделок от своего сообщения в формате JSON?

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

+13
Dee7 17 янв. 2017 г., 0:41:42

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