У меня есть вопрос о проверке сделки.
Скажем, TX1 передают некоторые биткойны от человека А к В, а затем, скажем, 5 лет спустя я создаю транзакцию TX2 (от А до С), который ссылается на тот же результат как и TX1, на ту же сумму. Это будет двойные расходы, но, чтобы предотвратить это, не нужно пройти через все блоки (и все операции) в истории, чтобы найти TX1 и, таким образом, дисквалифицировать TX2?
Пусть А было 10 монет, чтобы начать с. TX1 переданы 8 монет А->B. TX2 хочет передать 2 монеты до A->C. В этом случае TX2 будет действительным. Для проверки TX2 вам придется искать через все операции во всех блоках после TX1 был отправлен, и проверить, что там не было TX3, что обедненный балансировать на уровне менее 2 монет.
Если TX1 и TX2 являются лет друг от друга, то число операций для проверки может быть очень большим. Он будет расти, как O (п), где п число сделок исторически. Не будет ли это вызвать проблемы?