Всем, кто хоть раз что-то покупал за биткоин, знакома одна большая проблема – задержка транзакций. Из-за внутренней структуры сети сделка не может быть завершена мгновенно. Должен пройти конечный промежуток времени, за который информация о транзакции добавляется в новый блок. Новые блоки появляются один раз в десять минут. Даже в этом случае они не могут рассматриваться как необратимые по причине возможности «двойной траты». Это длится до того момента, пока не появится еще несколько блоков в цепи.
Этот момент не имеет существенного значения при покупке в интернет-магазинах. Задержка в десять минут будет незаметна. Это время уйдет на загрузку или отправку покупки. Однако при покупке «вживую» задержки уже становятся важным моментом. Ожидание длительностью десять или двадцать минут для подтверждения транзакции очень неудобно и создает барьеры на пути торговли. На практике для небольших покупок стоимостью в несколько долларов в сети уже есть инструмент покупок с нулевым подтверждением, и это достаточно безопасно. Причина в том, что любая атака, которое может быть организовано для хищения денег намного дороже нескольких долларов, которыми можно завладеть в такой ситуации. Таким образом, вероятность махинаций со стороны клиента ничтожно мала.
Однако было бы хорошо обрести возможность расчетов с оптимальными параметрами. С одной стороны, нет желания тратить время на надежную транзакцию. С другой, не очень хочется рисковать с быстрыми транзакциями без подтверждения. Подобную технологию недавно предложили в BitPay в виде решения под названием “Impulse”.
Вот как это работает. Перед походом в магазин нужно загрузить сумму на расходы в специальный кошелек с мультиподписью. Этот кошелек запрограммирован особым образом. Для работы ему необходимы подписи от двух ключей для совершения сделки. Кроме этого, он имеет временную функцию, и если операции не проводятся по истечении установленного времени, то деньги возвращаются безопасно для пользователя. Контролем над одним из ключей обладает владелец кошелька. Другой ключ принадлежит платежному процессору, который при обнаружении подписи транзакции со стороны пользователя, не будет подписывать какие-то другие транзакции от него, кроме этой, пока она не будет подтверждена.
Продавец, который видит адрес транзакции, принадлежащий платежному процессору, уже будет иметь к нему определенную степень доверия. По этой причине он будет уверен, что сделка будет проведена, несмотря на то, что транзакция еще не подтверждена сетью. При этом пользователю вообще не нужно задумываться о том, доверять или нет платежному процессору, благодаря функции блокировки по времени. Таким образом, процессор никаким образом не может украсть деньги. Вероятность того что процессор будет входить в сговор с клиентом с целью обмана продавца также очень мала, ведь процессор получит приличное вознаграждение в случае проведения сделки на большую сумму. Также при сделках на большие суммы подождать один или два часа не составит труда.
По сути, BitPay старается создать систему, которая позволит смягчить некоторые риски контрагентов. Эта система основана на предоставлении доверия для проведения сделок с нулевым подтверждением. Такие сделки должны быть хорошо приняты ритейлерами. В конечном итоге, это временная мера. Важно приложить усилия, чтобы найти полностью децентрализованное решение, однако пока трудно представить, что именно оно будет из себя представлять. Есть несколько схем, над которыми сейчас ведется работа, они во многом похожи на решение, предложенное BitPay. Также есть интересное решение под названием “No Risk Wallet”, предложенное на недавнем амстердамском Биткоин-хакатоне. Еще одно интересное решение – это функция InstaWallet в GreenAddress. Но еще предстоит выяснить, какие из этих технологий будут пользоваться популярностью.