Спасибо DeathAndTaxes за ответ. Боб не мог бы попытаться дать 80BTC кому-либо в течение нескольких месяцев. Ева может немедленно опубликовать ее мошенническую сделку. Кажется, Ева затем будет принят (если программное обеспечение Боба не говорит ему, что кто-то пытается провести его 80BTC).
И если Боб и Ева так как пришли новые сделки почти одновременно и узлы заметить двойной потратить, то как Боб (псевдонимов его открытым ключом) когда-либо убедить сеть, что он правильный хозяин?
Ура, Ed
Я понял ваш первый пост, и таким образом ответил на вопрос, не просил, вероятно, добавив путаницу.
Транзакция содержит выходы предварительного сделки. Вы должны иметь закрытый ключ, соответствующий эти выходы, чтобы передать их.
Так
Алиса -> Боб. Для того, чтобы провести Боб использует этот вывод и подписывает его ж / его закрытый ключ (только он).
Алиса -> Боб. Ева не может потратить, потому что включить этот вывод она будет нужна закрытый ключ Боба. Время не имеет значения. Она никогда не сможет создать действительную сделку с этого входа.
Выход этой сделки АДРЕС Боба (
который да хэш (наряду с проверкой ошибок & мета-данные открытого ключа, но не общественность сам ключ). Для того, чтобы провести Боб включает в свой открытый ключ, выход предварительного сделки, новый пункт назначения, количество и т.д., и подписывает все ж / его закрытым ключом.
С помощью открытого ключа они могут восстановить адрес предыдущих Выходов,.
С помощью открытого ключа они могут проверить подпись.
Это гарантирует, другие узлы могут:
а) проверить этот вывод не был использован ранее (во избежание двойного тратиться)
б) эта сделка подписывается правом закрытого ключа (обеспечить только владелец может передать).
Теперь "" является лишь частично, потому что ни один узел не может знать, что видел все сделки. "" является "решена" как только она была хэшированной в блок делая каноническую запись о транзакции, предотвращая эти выходы из используются снова (хорошо обнажая 51% атаку).