Можно ли потратить BTC без комиссии, чтобы подделать платеж?

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

Пока транзакция ожидает подтверждения, возможно ли, что получатель использует эту сумму? Если да, то если подтверждения так и не произойдет, третье лицо потеряет эти деньги?

Ответы (2)

Самая простая защита — не считать платеж сделанным вам до тех пор, пока он не получит какое-то количество подтверждений. Количество может зависеть от суммы платежа. Для небольших платежей, вероятно, достаточно одного. Для крупных платежей некоторые решили дождаться целых шести подтверждений.

Да, совершить такую ​​сделку возможно. Можно совершать все виды сделок. Конечно, гораздо интереснее, будет ли такая сделка действительной. И это было бы. Требование к действительной транзакции состоит в том, что денег, которые входят в нее, не больше, чем уходит. Разница между тем, что входит в транзакцию, и тем, что выходит из нее, называется комиссией. Комиссия может быть 0.

Однако то, что такая транзакция будет действительной, не означает, что она будет подтверждена, как вы уже подозревали. Но чтобы обмануть того, кто принимает нулевое подтверждение, ему нужно как минимум знать о транзакции. Это будет сложно, если вы не включите комиссию: https://bitcoin.org/en/glossary/minimum-relay-fee

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

Есть 3 способа защиты от этого.

Первый очевиден: не принимайте транзакции с нулевым подтверждением.

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

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

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