Привет, я прочитал эту страницу на Bitcoin вики https://en.bitcoin.it/wiki/Contingency_plans#SHA-256_is_broken , в основном раздел о SHA-256. Я triyng, чтобы понять, почему и как атаки, указанные на этой странице может быть сделано.
1) Атакующий может быть в состоянии победить OP_CHECKSIG, который хэширует сделки до подписания. Я не могу понять, что означает, "поражение OP_CHECKSIG", Я стараюсь, чтобы выяснить, какой тип атаки будет связан с этим: пользователем А отправляет транзакцию T пользователя B. User C перехватывает T1 до распространения в сеть, и если бы мы могли взломать че второго сопротивления прообраза ша мы могли бы найти другие ТЕ T2 который имеет тот же самый хэш T1 (это сохранение целостности знака для Т2). В частности, если он может найти транзакции Т2, который отличается от T1 только адрес назначения (адрес Х вместо Б-адрес) (и Т1 и Т2 имеют одинаковый хеш), он может изменить адрес назначения и так отправить Т2 к сети ( и удалить T1). С помощью этой операции Bitcoin А будет поставляться с некоторыми "Икс" адрес вместо B. Проблема злоумышленника теперь, чтобы получить секретный ключ этого адреса х, чтобы попытаться провести его (ECDSA probem)
Является ли это нападение связано с OP_CHECKSIG? Или что-то другое?
2) Атакующий может быть в состоянии очень быстро создавать блоки. Я считаю, что это связанно с первым сопротивлением прообраза: если я мог бы нарушить это свойство ша я мог исправить хэш-значение меньше, чем цели, и я мог получить заголовок блока, который генерирует этот хэш. Даже я мог бы быть в состоянии сделать это, я также буду иметь проблемы. Что я получаю от этого "задний ход" операция должна иметь разумный смысл в Bitcoin протокола, я имею в виду, что битовая строка действительного заголовка имеет структуру, и я не могу использовать некоторый случайный бит в качестве блока заголовка, потому что это зависит от того, что сделки блок содержит. Даже если я включаю только coinbase сделку была бы depence между этой сделкой и блоком (Merkle корневого хэшем). Так что я понимаю, что даже если кто-то смог бы взломать первое сопротивление прообраза ша было бы очень трудно мой блок-с помощью этой атаки. Это правильно, что я должен?
3? двойной тратить?) Это не поименованный в вики-странице, но я думаю, что если Сомон нарушил бы второе сопротивление он мог бы прообраз выполнить двойные расходы. Это похоже на 2) атаки: предположим, я послал транзакции T1, что теперь подтверждается. Если бы я мог создать транзакции T2 для некоторого пользователя B, который имеет тот же хэш T1 и затрачивает тот же вход, когда я выкладываю его в сеть другие узлы будут видеть, что T2 хэш хэш, что подтверждается в blockchain все же? На этом этапе каждый узел будет отбрасывать T2 или T2 будет распространяться снова в сеть? Или они сначала себе, что те входы не существует между utxo и так отбрасывать сразу T2?
Возможно, я не понимаю, как удвоить тратить, воспользовавшись разбив свойства ша. Есть кто-нибудь какая-то идея по этому поводу? Или двойные израсходует могут быть сделана только йота вычислительной мощности атака?