Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
17 июля 2013, 5:14:32 PM   # 1
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Общий вопрос в том, как настроить веб-сайт или услугу, чтобы принять биткойны без использования каких-либо услуг третьих лиц и не оставляя ключи уязвимых для злоумышленника. Наиболее прямой метод с использованием "смотреть бумажник" (ака "только для чтения" или "смотреть только бумажник"). Это кошелек делает именно то, что это звучит. Это может только "смотреть" собственности адрес для входящих операций. Он не в состоянии потратить / передачи монет. Он делает это, просто не имея закрытых ключей, необходимых для подписания сделки. Существуют комплименты "расходы бумажник" который может быть безопасным в автономном режиме (или, по крайней мере, от видимого общественного веба-сервера), который имеет закрытые ключи и может подписывать сделки. Злоумышленник не может украсть то, чего нет. Другие клиенты поддерживают смотреть бумажники, но bitcoind не, это руководства, однако проиллюстрируем обходного пути, который позволяет использовать bitcoind в "смотреть только" манера.  

Предположения по моей части:
1) Bitcoind требует шифрования бумажник, чтобы быть разблокирована, чтобы REFIL в keypool.
2) кошелек будет выполнять это пополнение прозрачно (без уведомления пользователя) в любое время бумажник разблокирован для какой-либо причины.
3) Если бумажник никогда не разблокирован keypool в конечном итоге будет исчерпан.
4) Если кошелек истощается и заблокирован, запрос на новый адрес (вызов RPC getnewaddress) будет всегда терпит неудачу и адрес не будет возвращен.

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


Случайный метод ключевой фразы для создания "смотреть бумажник" используя bitcoind:
 Устаревшие теперь pywallet поддерживает создание часов только клонов.
1) На компьютере защищенного непубличный, создать новый кошелек, расширить keypool до нужного размера, зашифровать с сильной известной кодовой фразой
2) Сделайте резервную копию форума бумажника и ключевой фразы = "расходы бумажник"
3) Изменение шифрования фразы для случайной битовой строки 256 (64 шестнадцатеричных цифр) = "смотреть бумажник"
4) В целях безопасности, выбросьте и не записывают случайную фразу в любом месте.
5) Передача "смотреть бумажник" для бумажника сервера.

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


Pywallet метод для клона создавая "смотреть бумажник" для использования с bitcoind
В это время возможность клонировать смотреть копии доступна только в бета-версии Pywallet (v2.1.0b2 или более поздней версии).
Pywallet будет работать с зашифрованной копией файла бумажник, не имеет доступа к приватным ключам и не требует кодовой фразы.
BETA ОТКАЗ: Бета программное обеспечение должно быть использовано только для развития, а не для производства.

Pywallet 2.1.0b2

1) Закрепите "расходы бумажник",
Вам потребуется копия кошелька, который может быть использован, чтобы тратить монеты, как смотреть бумажник не хватает для закрытых ключей, необходимых. Мы начнем с обеспечения у нас есть хорошие "расходы бумажник", Я рекомендую начинать с новым кошельком (начать Bitcoin, не wallet.dat и будет создавать новый). Вы должны шифровать бумажник, установив пароль. Прежде чем идти дальше, убедитесь, ключевая фраза установлена ​​правильно, разбудив бумажник. Это также хорошее время, чтобы надежно регистрировать автономную ключевую фразу в резервной копии бумаги. Сильная криптография является отличным инструментом, но потерять / забыли кодовую фразу, и вы поймете, кошмар, насколько сильно он на самом деле. Бумажник у вас есть в настоящее время является "расходы бумажник", Он должен быть надежно храниться в автономном режиме или на защищенном (непубличной) компьютера. Расходы бумажник никогда не должны быть на том же сервере, что и смотреть бумажник, как поражения цели.

2) Расширение keypool (при необходимости)
Поскольку новые ключи добавляются в keypool случайно, наблюдавший бумажник будет оставаться постоянно заперто, так что никакие новые ключи не добавлены.  Это важно, потому что новые ключи являются случайными, так что если смотреть бумажник расширяется, то это не будет соответствовать "расходы бумажник", Ведя наблюдение бумажника статическими мы можем гарантировать, что нет никакой потери ключей. Недостатком является то, что в конечном итоге смотреть бумажник keypool будут исчерпаны (0 доступные новые ключи) и вам нужно будет повторить этот процесс. По умолчанию keypool в bitcoind относительно невелика при 100 будущих ключей поэтому для большинства приложений, которые вы хотите, чтобы расширить keypool к чему-то большему.

Для расширения keypool Bitcoin (GUI клиента) или bitcoind (демон) должен быть запущен с --keypool аргумент. Это может быть сделано только при запуске нет вызова RPC доступен. 

Код:
bitcoind -keypool = XXXX  <--- для запуска deamond
Bitcoin -keypool = XXXX <- для запуска графического интерфейса клиента

ХХХЙ желаемое количество частных ключей в keypool (т.е. keypool = 1000 будет увеличить keypool до 1000 ключей). Значение, указанное в новом размере keypool не как большой, чтобы развернуть его. На новом бумажнике с использованием keypool = 1000 добавят больше 900 ключей в общей сложности 1000 не 1000 новых ключей в общей сложности 1,100. Команда только информирует клиента он должен расширить keypool, когда он имеет доступ. Клиент не может расширить зашифрованный кошелек, если он заблокирован. Вы можете заставить бумажник, чтобы временно разблокировать с помощью команды walletpassphrase RPC.

Код:
walletpassphrase ="<пароль>" <время оставить бумажник разблокирован в секундах>
walletpassphrase ="азбука" 120

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

Производительность Примечание: бумажники с большим количеством ключей (более 5K до 10K в зависимости от системы) могут быть вялыми в ответ на команды RPC. Кроме того, потребуется больше ресурсов для сканирования blockchain для входящих транзакций. Постарайтесь сбалансировать размер keypool с ожидаемым количеством клавиш и вычислительной мощностью доступна. Если ваши потребности сайта <10 новые ключей в день и работают на маломощных VPS делает бумажник с 20000 ключевыми keypool, скорее всего, не будут производить хорошие результаты, но с другой стороны, если вам нужно в среднем 200 ключей в день и иметь специальные решения сервера keypool 250 будет нуждаться в безостановочную освежать.

3) Убедитесь, что keypool установлен правильно.
Чтобы проверить размер keypool, используйте получить данные RPC вызов.
Код:

> получить данные
...
    "keypoolsize" : 301,
...

Это бумажник имеет 301 ключей в keypool.

4) Сделайте резервную копию
Сделайте резервную копию текущего wallet.dat. Это резервная копия "расходы бумажник", Я рекомендую вам назвать резервную описательным, чтобы избежать путаницы с наблюдающей бумажника копии (т.е. "wallet.spending.dat", На данный момент расходов бумажник должен иметь расширенный keypool и быть зашифрован с сильной ключевой фразой.   

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

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

Резервное копирование бумаги закрытых ключей (опция)
Для обеспечения дополнительной безопасности можно экспортировать и печатать секретные ключи, используя дамп из pywallet, хранить в безопасном месте вне офиса (несгораемый сейф).
Код:
pywallet.py --dumpwallet > dump.encrypted.txt
или
pywallet.py --passphrase ="проходить" --dumpwallet > dump.decrypted.txt


Dumpwallet команда сбросит весь кошелек (историю Ой, keypool заказ, этикетка и т.д.). Для краткости можно напечатать только "ключи" Секция (она включает в себя ключи в keypool). Вам не нужно "бассейн" раздел как он содержит только порядок keypool. Если включить ключевую фразу ключи будут расшифрованы. Если вы не включили ключевую фразу ключи будут оставлены в зашифрованном виде. Я использую зашифрованный вариант для печати аварийного восстановления (а резервное копирование для резервного копирования) копии всех компаний закрытых ключей, которые хранятся с местом в огнестойком сейфе. Да, я немного параноик о резервных копиях, но не потеряли Satoshi еще.

5) Клонирование резервной копии "расходы бумажник" чтобы произвести "смотреть бумажник" используя pywallet
Вам понадобится pywallet (и питон и необходимая зависимость) установлено. Установка выходит за рамки данного руководства:


Только бета-версия pywallet (2.1.0b2 или выше) имеет поддержку только наблюдать клоны.
http://pastebin.com/raw.php?i=2FtQDj3v] Pywallet 2.1.0b2

Мы будем использовать pywallet создать "смотреть только" клон существующего зашифрованного кошелька. Для обеспечения смотреть бумажник не может быть использована для проведения существующих ключей будут перезаписаны со случайными заполнителей. Pywallet не может просто удалить закрытые ключи, как bitcoind не в состоянии справиться бумажник без значения для закрытого ключа, так он использует случайное значение в качестве заполнителя. Смотреть бумажник должен оставаться постоянно заперт, как будто он разблокирован keypool освежит с новыми случайными ключами, не содержащихся в расходах бумажника. Pywallet защищает от случайного пользователя отпирания, установив ключевую фразу на наблюдающий бумажнике неизвестной случайной величины.

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


Команда для создания часов копии кошелька с помощью pywallet является:
Код:
pywallet_2.1.0b2.py --clone_watchonly_from /path/towallet/wallet.dat --clone_watchonly_to /path/to/clone/wallet.watching.dat

Экстрагируют пару ключей сбрасывали из кошелька до клонирования.
Код:
       {
            "адр": "1FHiDfisR6fysDtQnYouVXrmjZZmp7neBx",
            "сжатый": правда,
            "encrypted_privkey": "d37ea90b1d6f5c33a087c24caa45ca2ff688ece354356a6d86f4d89a44b64ca829996e669c20207947588f738daf4b7c",
            "Публичных": "032101fb87879f540d9496f744e3b159eea5243d766a0540a7d67cb5e3eaa50868",
            "резерв": 1
        }


То же пара ключей сбрасывали из клонированных часов только копии.
Код:
       {
            "адр": "1FHiDfisR6fysDtQnYouVXrmjZZmp7neBx",
            "сжатый": правда,
            "encrypted_privkey": "06a858fc422cd20c4dd92017592c3b878b2973496bf0ed5e6cb25711d90e32d7fcd809325a7c9c747eb38534b6091f88",
            "Публичных": "032101fb87879f540d9496f744e3b159eea5243d766a0540a7d67cb5e3eaa50868",
            "резерв": 1
        }

Вы можете сохранить резервную копию, наблюдая бумажник в том же месте, что и расходы бумажник. Там нет риски потерять деньги, если смотреть кошелек потерян / украдены / повреждено, однако имея резервное копирование позволяет избежать необходимости reclone покупательного бумажника. Настоятельно рекомендуется пометить файлы надлежащим образом (т.е. wallet.spending.dat & wallet.watching.dat).

6) Загрузить часы только скопировать на общедоступном сервере.
Загрузите часы только копию кошелька на общедоступном веб-сервере. Убедитесь, что вы загружаете правильный. При необходимости переименовать бумажник wallet.dat. Перезапустите bitcoind. После того, как синхронизируются текущего блока, если клиент все еще показывает неправильный баланс, перезапуск с помощью "--rescan" командная строка варианты.  
DeathAndTaxes сейчас офлайн Пожаловаться на DeathAndTaxes   Ответить с цитированием Мультицитирование сообщения от DeathAndTaxes Быстрый ответ на сообщение DeathAndTaxes


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


17 июля 2013, 5:19:49 PM   # 2
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

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





О, это мне что-то, чтобы ворчать снова.
Детерминированные бумажники, что gmaxwell изобретенные уже два года назад и относительно просты, чтобы реализовать - где они?
Type-2, он вышел с того, что вы можете создать дополнительные открытые ключи за пределами частного кошелька, блестящий - именно то, что вам нужно здесь.
Но где это?
Вместо того, что мы получили в течение последних двух лет?
Это то, что мы получили за эти два года шутку - или я шучу?
piotr_n сейчас офлайн Пожаловаться на piotr_n   Ответить с цитированием Мультицитирование сообщения от piotr_n Быстрый ответ на сообщение piotr_n

17 июля 2013, 5:29:40 PM   # 3
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

О, это мне что-то, чтобы ворчать снова.
Детерминированные бумажники, что gmaxwell изобретенные уже два года назад и относительно просты, чтобы реализовать - где они?
Type-2, он вышел с того, что вы можете создать дополнительные открытые ключи за пределами частного кошелька, блестящий - именно то, что вам нужно здесь.
Но где это?
Вместо того, что мы получили в течение последних двух лет?
Это то, что мы получили за эти два года шутку - или я шучу?

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

Однако до того дня, когда я не прошу, если я пропустил что-нибудь от безопасности или удобства использования точки зрения с этим "обходной путь",  Я не считаю, что я и в тестировании как функция бумажников, как ожидается, просто пытаюсь получить второе мнение.
DeathAndTaxes сейчас офлайн Пожаловаться на DeathAndTaxes   Ответить с цитированием Мультицитирование сообщения от DeathAndTaxes Быстрый ответ на сообщение DeathAndTaxes

17 июля 2013, 5:33:00 PM   # 4
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

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

17 июля 2013, 5:56:30 PM   # 5
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Это просто писать код, и это, кажется, не так много работы.
/ Я с нетерпением жду рассмотрения вашего патча.
gmaxwell сейчас офлайн Пожаловаться на gmaxwell   Ответить с цитированием Мультицитирование сообщения от gmaxwell Быстрый ответ на сообщение gmaxwell

17 июля 2013, 6:12:11 PM   # 6
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Это просто писать код, и это, кажется, не так много работы.
/ Я с нетерпением жду рассмотрения вашего патча.
мой клиент уже имеет детерминированный бумажник
piotr_n сейчас офлайн Пожаловаться на piotr_n   Ответить с цитированием Мультицитирование сообщения от piotr_n Быстрый ответ на сообщение piotr_n

18 июля 2013, 9:50:08 AM   # 7
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Процесс создания "смотреть бумажник" используя bitcoind:
1) На компьютере защищенного непубличный, создать новый кошелек, расширить keypool до нужного размера, зашифровать с сильной известной кодовой фразой
2) Сделайте резервную копию форума бумажника и ключевой фразы = "расходы бумажник"
3) Изменение шифрование фраза для случайного 256 битовой строки (base64) = "смотреть бумажник"
4) В целях безопасности, выбросьте и не записывают случайную фразу в любом месте.
5) Передача "смотреть бумажник" для бумажника сервера.

На данный момент у вас есть два идентичных копий одного и того же кошелька (в том числе и той же последовательности частных ключей в keypool). "смотреть бумажник" имеет неизвестную и неразрывную случайную ключевую фразу, потеря бумажника сервера не скомпрометирует закрытые ключи. В ходе тестирования, казалось бы, что нет никакого сценария, где смотреть бумажник может создать ключ не в кошельке расходов, однако я хотел бы получить подтверждение того, что я не пропустил ничего.
Было бы более элегантно (а также безопаснее), чтобы буквально стереть (перезапись случайными данными) закрытые ключи, вместо того, чтобы зашифровать их с "Неуязвимый" пароль.
Может быть, jackjack может добавить такую ​​возможность его столь полезным инструментом pywallet.

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

К сожалению, нет явного сообщения о том, что пул только что был продлен - не на GUI, хотя я считаю, в журнале отладки должна быть что-то вроде этого:
Код:
keypool добавлен ключ XXX, размер = YYY
piotr_n сейчас офлайн Пожаловаться на piotr_n   Ответить с цитированием Мультицитирование сообщения от piotr_n Быстрый ответ на сообщение piotr_n

18 июля 2013, 10:41:17 AM   # 8
 
 
Сообщения: 1148
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Есть ли способ, чтобы сказать, сколько ключей там осталось в keypool?
TierNolan сейчас офлайн Пожаловаться на TierNolan   Ответить с цитированием Мультицитирование сообщения от TierNolan Быстрый ответ на сообщение TierNolan

18 июля 2013, 11:35:16 AM   # 9
 
 
Сообщения: 1106
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Есть ли способ, чтобы сказать, сколько ключей там осталось в keypool?

AFAIK нет.

Это было бы хорошо, чтобы добавить к вызову RPC GetInfo, и он может быть установлен в MaxInt, когда 2-го типа бумажники реализуются.
Peter Todd сейчас офлайн Пожаловаться на Питер Тодд   Ответить с цитированием Мультицитирование сообщения от Peter Todd Быстрый ответ на сообщение Peter Todd

18 июля 2013, 11:37:26 AM   # 10
 
 
Сообщения: 983
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Есть ли способ, чтобы сказать, сколько ключей там осталось в keypool?

AFAIK нет.

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

Как насчет GetInfo -> "keypoolsize"?
Domob сейчас офлайн Пожаловаться на Domob   Ответить с цитированием Мультицитирование сообщения от Domob Быстрый ответ на сообщение Domob

18 июля 2013, 11:37:31 AM   # 11
 
 
Сообщения: 488
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Разве это не "keypoolsize" в ответ GetInfo?

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

18 июля 2013, 11:40:48 AM   # 12
 
 
Сообщения: 1106
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Doh, я полностью пропустил что-то ...
Peter Todd сейчас офлайн Пожаловаться на Питер Тодд   Ответить с цитированием Мультицитирование сообщения от Peter Todd Быстрый ответ на сообщение Peter Todd

18 июля 2013, 11:43:26 AM   # 13
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Есть ли способ, чтобы сказать, сколько ключей там осталось в keypool?

Из GetInfo () RPC вызова

котировка
E: \ Bitcoin \ bitcoind>bitcoind GetInfo
{
    "версия" : 80202,
    "protocolversion" : 70001,
    "walletversion" : 60000,
    "баланс" : 168.78386905,
    "блоки" : 247193,
    "офсет" : 1,
    "связи" : 8,
    "полномочие" : "",
    "трудность" : 26162875.68256990,
    "testnet" : ложный,
    "keypoololdest" : 1369918535,
   "keypoolsize" : 99,
    "paytxfee" : 0.00010000,
    "unlocked_until" : 0,
    "ошибки" : ""
}

"keypoolsize" отражает текущее количество ключей в keypool не желаемого размера.

Вы можете проверить это с помощью следующей последовательности:
walletlock ()
получить данные()
getnewaddress ()
получить данные()
getnewaddress ()
получить данные()
walletpassphrase ()
получить данные


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

18 июля 2013, 12:22:56 PM   # 14
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Это просто писать код, и это, кажется, не так много работы.
/ Я с нетерпением жду рассмотрения вашего патча.
мой клиент уже имеет детерминированный бумажник
О, теперь я вижу проблему.
заменив вызов secret.MakeNewKey (fCompressed) с secret.DetermineNewKey (fCompressed, lastKey) будет очень простой хак ...
если бы не тот факт, что получение lastKey значения представляется весьма сложным, если не невозможно, с текущей архитектурой.

так жаль, что я должен взять его обратно; это не просто хак. не в этом коде.
но я вижу, что его получение изменилось, как мы говорим - хорошо!
piotr_n сейчас офлайн Пожаловаться на piotr_n   Ответить с цитированием Мультицитирование сообщения от piotr_n Быстрый ответ на сообщение piotr_n

18 июля 2013, 3:47:03 PM   # 15
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

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

18 июля 2013, 4:22:03 PM   # 16
 
 
Сообщения: 1778
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Ваша логика кажется твердой, но я не вижу какой-либо вопрос в ОП.

Конечно bitcoind не заполнит ключ бассейн, если вы не разблокировать кошелек - это своего рода очевидна.
Если вы не только нашли критическую ошибку, но теория в том, что она не может, даже если захочет.
 
piotr_n сейчас офлайн Пожаловаться на piotr_n   Ответить с цитированием Мультицитирование сообщения от piotr_n Быстрый ответ на сообщение piotr_n

18 июля 2013, 9:06:14 PM   # 17
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Ваша логика кажется твердой, но я не вижу какой-либо вопрос в ОП.

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

К сожалению у меня было сформулировано как предложение. 

Является ли это исправить, что bitcoind всегда исчерпывает keypool и не пополнить его ни при каких обстоятельствах, когда он зашифрован и заблокирован кошелек?
Является ли это правильно, что bitcoind всегда будет возвращать ошибку при запросе нового адреса, когда keypool исчерпан и не может быть пополнен?

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

18 июля 2013, 9:16:27 PM   # 18
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Было бы более элегантно (а также безопаснее), чтобы буквально стереть (перезапись случайными данными) закрытые ключи, вместо того, чтобы зашифровать их с "Неуязвимый" пароль.
Может быть, jackjack может добавить такую ​​возможность его столь полезным инструментом pywallet.

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

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

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

Договорились мы уже использовали 5000 ключевых keypools в прошлом. Это должно быть достаточно для большинства случаев использования.
DeathAndTaxes сейчас офлайн Пожаловаться на DeathAndTaxes   Ответить с цитированием Мультицитирование сообщения от DeathAndTaxes Быстрый ответ на сообщение DeathAndTaxes

19 июля 2013, 12:12:02 AM   # 19
 
 
Сообщения: 1218
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

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

Основываясь на том, что она должна быть достаточно прямо вперед, чтобы иметь возможность где данный существующий wallet.dat он будет обновлять wallet.dat к "смотреть бумажник" заменой всех закрытых ключей со случайными данными. Необязательно, чтобы предотвратить случайное отпирание (который может смутить дерьмо из bitcoind) ключевая фраза может одновременно быть изменена на случайное значение, а также.

котировка
Защиту render_GET (я, запрос):
          глобальный AddrType
          пытаться:
                                паб = request.args [ 'паб'] [0]
                                пытаться:
                              wdir = request.args [ 'реж'] [0]
                              wname = request.args [ 'имя'] [0]
                              LABEL = request.args [ 'метка'] [0]

                              db_env = create_env (wdir)
                              дб = open_wallet (db_env, wname записываемый = True)
                              update_wallet (дБ, 'CKEY', { 'public_key': pub.decode ( 'шестигранной'), 'Encrypted_private_key': random_string (96) .decode ( 'шестигранной') })
                              update_wallet (дб, 'имя', { 'хэш': public_key_to_bc_address (pub.decode ( 'шестигранной')), 'имя': "Только для чтения: "+ Этикетка})
                              db.close ()
                              вернуть "Только для чтения адрес "+ Public_key_to_bc_address (pub.decode ( 'шестигранной')) +" импортный"
                 Кроме:
                              вернуть "Только для чтения адрес "+ Public_key_to_bc_address (pub.decode ( 'шестигранной')) +" не импортируется"

https://github.com/jackjack-jj/pywallet/blob/master/pywallet.py#L4176

Я послал jackjack в ПМ, чтобы уточнить это возможно, а также возможность создания щедрот.


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

19 июля 2013, 6:09:29 AM   # 20
 
 
Сообщения: 1848
Цитировать по имени
цитировать ответ
по умолчанию Re: «смотреть бумажник» обходной путь для bitcoind (требуется pywallet бета)

Является ли это исправить, что bitcoind всегда исчерпывает keypool и не пополнить его ни при каких обстоятельствах, когда он зашифрован и заблокирован кошелек?
Является ли это правильно, что bitcoind всегда будет возвращать ошибку при запросе нового адреса, когда keypool исчерпан и не может быть пополнен?

Да и да. Моя маленькая игра FlipSide была некоторое время простоя (HTTP 500 ошибок), так как использовались новые ключи (из-за людей просто browing сайт) и бумажник был заперт (люди не ставку или не обоюдного нет необходимости, чтобы разблокировать его), так Я в конце концов кончатся ключей в бассейне.
dserrano5 сейчас офлайн Пожаловаться на dserrano5   Ответить с цитированием Мультицитирование сообщения от dserrano5 Быстрый ответ на сообщение dserrano5



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW