сборка в блоки по сути нужна только для ускорения
А как же тогда выбирать, какая из двух транзакций, расходующих одни и те же средства, верна?
никак - это нарушает правила со стороны клиента.
При нормальном использовании такого быть не может.
Если все-же такая коллизия произошла - то это уже другой случай,
и можно ввести какие-то правила, вариантов тут масса.
Мне больше нравяться эти(придумать таких вариантов можно гораздо больше):
a) выбирать ту у которой время меньше(по метке времени тк есть неопределенная задержка на передачу по сети)
b) блокировать такие монеты как спорные, с последующей их заменой на другие монеты такой-же стоимости
(ключ от монеты есть только у клиента, так что специально повторную транзу для блокировки никто не может сгенерить,
кстати это полезно еще для блокировки в случае если кошелек украли)
Кстати, а как сейчас поступает биткоин в случае двух разных транзакций на 1 монету?
Какое же ускорение даёт сборка в блоки, если транзакции и так рассылаются мгновенно, а пока они получат подтверждение, нужно ждать в среднем десять минут?
Это получается, от блоков нет никакого ускорения, а сплошные задержки.
ждать иногда приходиться гораздо больше тк нет никакой гарантии что блок будет найден за 10 минут - некоторые
блоки на пулах вон по 1-2 нед майняться...
Вот и я тоже не понимаю зачем эта фигня с блоками(кроме того что биток не будет работать в "горячих точках"
где отключен внешний интернет).
Насчет скорости я имел ввиду что хранить и обрабатывать историю легче блоками,
но эти странные реализации кошельков все равно умудряются тормозить...
(впрочем если транзы рассортированы, то это так-же быстро как и с блоками)
Vladimir
PS может быть просто использовать часы и метки времени в транзакциях?
Скажем в ТУ написать требование к точности установки часов +-5 минут,
и все транзакции которые не успели придти в 10-минутный интервал тупо отбрасывать.
(это гарантирует что через минут 20-40 уже точно будешь знать принята транза сетью или нет,
сейчас же это лотерея с неопределенным временем ожидания - я считаю что если система
не может гарантированно провести платеж скажем за 0.5-1 часа, то он должен быть отменен
тк в этом случае проще перевести деньги другими путями через другую систему,
сейчас же она просто замораживает средства и создает неопределенность! )