Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
10 января 2011, 11:45:31 PM   # 1
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Второй ключ для Bitcoin кошельков

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Я хотел бы официально предложить идею о том, что протокол Bitcoin и программное обеспечение быть модифицировано, чтобы следующее (или, возможно, кто-то может объяснить, как следующие может быть сделано в рамках существующей структуры и операции по-прежнему считаются действительными):

- Загромождать адрес Bitcoin с более чем одного секретного ключа (с учетом запроса, подписанного транзакционных первого ключа).
- Удалить или изменить обременение (учитывая подписанную сделку всех контролирующих секретных ключей).
- Разрешить обременения объявить, какие ключи необходимы для подписания будущих сделок (например, "обе клавиши", или "либо ключ"Или, возможно, " Keya И (ИЛИ KEYB keyC)", Где Кея был оригинальный адрес ключ).

ЗАЧЕМ?

BIG 1. Этого вид логики имеет жизненно важное значение для любой схемы, которая позволяет Bitcoins быть сохранялась в пределах материальных объектов со встроенными секретными ключами, без необходимости верить, что человек, который сделал объект впоследствии может украсть биткойны, потому что он, вероятно, знает секретный ключ. Способность уверенно торговать Bitcoins в материальной форме является то, что будет на самом деле продвижения целей Bitcoin в обществе.

Значительные вторичные преимущества:
2. Возможность создания опекунов на основе механизмов, снижающих риск: а) кражи или потери wallet.dat б) отказ смарт-карты, которая содержала Bitcoins
3. Всех преимуществ, которые уже ведут человек открывать текущие счета, которые требуют две подписей

Это мое понимание того, что это могло бы отдаленно возможно ... или, по крайней мере, что это может быть возможно в пределах "операция" Синтаксис, используемый Bitcoin, но не обязательно может представлять собой сделку, которая будет принята как действительные. В поисках обратной связи.
casascius сейчас офлайн Пожаловаться на casascius   Ответить с цитированием Мультицитирование сообщения от casascius Быстрый ответ на сообщение casascius


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


11 января 2011, 6:30:31 AM   # 2
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Второй ключ для Bitcoin кошельков

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





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

OP_DUP OP_HASH160 key1 OP_EQUALVERIFY OP_CHECKSIG OP_VERIFY OP_DUP OP_HASH160 key2 OP_EQUALVERIFY OP_CHECKSIG

И что "а и (б или в)" логика может быть достигнута с "если" условный оператор.

Учитывая наличие OP_CHECKMULTISIG, кто-то, очевидно, думал об этом первым. Это просто не видно в клиенте, но присутствует в архитектуре.

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

11 января 2011, 7:27:55 AM   # 3
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: Второй ключ для Bitcoin кошельков

OP_DUP OP_HASH160 key1 OP_EQUALVERIFY OP_CHECKSIG OP_VERIFY OP_DUP OP_HASH160 key2 OP_EQUALVERIFY OP_CHECKSIG

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

ScriptSig будет выглядеть следующим образом:


Если вы можете использовать полные открытые ключи в scriptPubKey вместо хэши, он становится еще более компактным:

scriptSig:
scriptPubKey: 2 2 OP_CHECKMULTISIG

С OP_CHECKMULTISIG, вы можете также изменить первые 2 в scriptPubKey к 1, чтобы потребовать или key1 или key2 подписать. И вы можете указать до 20 открытых ключей с одним OP_CHECKMULTISIG.

Ваш "Keya И (ИЛИ KEYB keyC)" так просто, как это (при условии, вы можете использовать все открытые ключи):
1 2 OP_CHECKMULTISIGVERIFY OP_CHECKSIG

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

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

11 января 2011, 3:37:31 PM   # 4
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Второй ключ для Bitcoin кошельков

OP_DUP OP_HASH160 key1 OP_EQUALVERIFY OP_CHECKSIG OP_VERIFY OP_DUP OP_HASH160 key2 OP_EQUALVERIFY OP_CHECKSIG

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

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



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW