Вы не тратите баланс в blockchain, вместо этого вы проводите введенные ранее.
Например - допустим, вы получили 1 BTC от кого-то и еще 1 BTC от кого-то другого. Это дает вам 2 BTC.
Если вы хотите отправить 1,5 BTC вы в конечном итоге "утверждая," как 1 BTC исходных данных, которые вы получили, отправив 1.5 BTC для получателя (в данном случае магазин), а остальные обратно к себе.
Сделка прибудет это уникальный идентификатор, который в основном состоит из точных деталей на входе и сколько вы платите кому.
В вашем примере вы бы создать два различных операций. Так как утверждают те же входы вы получите лавку направляющей сделки, то магазин B, направляющий транзакцию как о том, этих входах используются. Они будут вокруг распространение информации о сети - в том числе шахтеров.
Когда шахтер обнаруживает блок они подберут сделки. Если шахтер видел только одну из ваших сделок, то она будет включать в себя, что один (который может быть для лавки или магазин В зависимости от сети). Если он видел, как я считаю, что будет принимать только первый он видит.
После того, что шахтер принял и "опубликованный" Ваша сделка становится "подтвердил" к сети. На этом этапе вы увидите сделку шахтер принятой в "1 подтверждение" а другой "неподтвержденный",
Если в то же время два разных шахтеров и обнаружили блок и они оба опубликованы различные операции, вы бы временно увидеть осиротевшую цепь. Это то гонка, какой один получает большинство людей, чтобы увидеть его. После того, как 51% сети уже видели один из двух подтвержденных сделок первых - это становится "официальный" сделка, а другой является "осиротевший" то есть деньги не могут быть потрачены.
В вашем примере один из двух хранителей магазина получат BTC, а другие не будет.
Для Bitcoin сделок это вниз к поставщику, чтобы решить, сколько они требуют подтверждения, прежде чем выпускать товары. Поскольку количество подтверждений идет вверх изменение разворота становится expoentially более трудным. Вилки очень редко встречаются в течение более двух блоков таким образом 5, как правило, хороший пример того, что у вас есть деньги. Если вы продаете Ј1mn картины вы, вероятно, хотите ждать 30-или-так блоков.
Если один из ваших магазинов ниже продает дорогой товар, было бы справедливо для них, чтобы сказать "вернуться в течение 30 минут, чтобы забрать его", Если они оба сильная качка вам Ј10 товаров, то один из них сделал потери в результате мошенничества. Это ничем не отличается от магазина не делает "отсутствует Авт" на низкой стоимости кредитных карт, чтобы ускорить время транзакций (т.е. они не контактируют банк, надеюсь, что это будет хорошо, и взять на себя риск себя, чтобы служить людям быстрее, как при оплате картой в Макдональдсе).
Таким образом, ситуация, вы описываете может произойти, но только один человек получает деньги в конечном счете.
Другие монеты внедрить системы "0 подтверждения" - или начинают. Они по-прежнему не дают 100% уверенности, но, безусловно, подходить имея несколько блоков подтвержденных в нынешней системе, поскольку это добавляет дополнительный слой поверх выше.