BTC $79,350.61 -0.83%
ETH $2,489.00 -0.51%
BNB $743.90 -1.77%
XRP $1.40 -1.44%
SOL $105.10 -1.48%
TRX $0.3368 +0.79%
DOGE $0.0897 -0.31%
ADA $0.2188 -0.33%
BCH $256.70 -1.66%
LINK $13.29 +8.06%
HYPE $87.77 -0.19%
AAVE $134.76 -0.14%
SUI $0.8133 +1.74%
XLM $0.1921 +2.83%
ZEC $1,208.14 +1.71%
BTC $79,350.61 -0.83%
ETH $2,489.00 -0.51%
BNB $743.90 -1.77%
XRP $1.40 -1.44%
SOL $105.10 -1.48%
TRX $0.3368 +0.79%
DOGE $0.0897 -0.31%
ADA $0.2188 -0.33%
BCH $256.70 -1.66%
LINK $13.29 +8.06%
HYPE $87.77 -0.19%
AAVE $134.76 -0.14%
SUI $0.8133 +1.74%
XLM $0.1921 +2.83%
ZEC $1,208.14 +1.71%

Виталик Бутерин: о криптоплатежах, мой личный опыт и небольшие советы

Summary: Пользовательский опыт является ключевой причиной, по которой многие пользователи Ethereum (особенно пользователи южного полушария) часто выбирают централизованные решения вместо децентрализованных альтернатив на блокчейне.
Пользовательский опыт является ключевой причиной, по которой многие пользователи Ethereum (особенно пользователи южного полушария) часто выбирают централизованные решения вместо децентрализованных альтернатив на блокчейне.

Автор: Vitalik Buterin

Перевод: Katie 辜, Odaily 星球日报

В 2013 году я зашел в суши-ресторан рядом с интернет-архивом в Сан-Франциско, потому что слышал, что там принимают биткойны, и хотел попробовать. Когда пришло время платить, я попросил оплатить биткойнами. Я отсканировал QR-код и нажал "Отправить". К моему удивлению, транзакция не прошла. Казалось, что она была отправлена, но ресторан не получил ее. Я попробовал еще раз, но снова безуспешно. Я быстро понял, что проблема заключалась в плохом соединении с мобильным интернетом. Мне пришлось пройти более 50 метров до ближайшего интернет-архива, подключиться к их Wi-Fi и только тогда я смог отправить транзакцию.

Урок: интернет не на 100% надежен. Нам нужны лучшие способы передачи данных, такие как системы оплаты на месте с некоторыми функциями (NFC и отображение QR-кода для клиентов и т.д.), которые позволят клиентам напрямую передавать свои данные транзакций продавцам.

В 2021 году я купил чай для себя и друзей в кафе в Аргентине. Они объяснили, что не собирались заставлять меня платить криптовалютой. Просто владелец кафе узнал меня и показал свой аккаунт на криптовалютной бирже, поэтому я предложил заплатить ETH (использование аккаунта биржи в качестве кошелька — стандартный способ оплаты на месте в Латинской Америке). К сожалению, моя первая транзакция на 0.003 ETH не была принята, возможно, потому что она была ниже минимального депозита в 0.01 ETH на бирже. Я отправил 0.007 ETH. Вскоре обе транзакции были подтверждены (мне не жалко было переплатить в три раза, считай, это был чаевые).

В 2022 году я попытался купить чай в другом месте. Первая транзакция провалилась, потому что мой мобильный кошелек по умолчанию отправил только 21000 Gas, а получающий аккаунт был контрактом, который требовал дополнительный Gas для обработки перевода. Попытка отправить вторую транзакцию провалилась, потому что интерфейс моего мобильного кошелька не работал, и я не мог прокрутить вниз и отредактировать поле с ограничением Gas.

Урок: простой и стабильный пользовательский интерфейс лучше, чем модный и сложный. Но в то же время большинство пользователей даже не знают, что такое ограничение Gas, так что нам действительно нужны лучшие настройки по умолчанию.

Часто между тем, как моя транзакция принимается в цепочке, и тем, как сервис подтверждает транзакцию, проходит удивительно долгое время. Иногда я действительно беспокоюсь, что у них там проблемы с платежной системой.

Часто между отправкой транзакции и ее принятием в блоке проходит долгое и непредсказуемое время. Иногда транзакция может быть принята за несколько секунд, но в другие разы это может занять несколько минут или даже часов. Недавно EIP-1559 значительно улучшил эту ситуацию, обеспечив принятие большинства транзакций в следующий блок, а недавнее слияние (Merge) еще больше стабилизировало время блоков.

image

Графики в этом отчете были созданы Yinhong (William) Zhao и Kartik Nayak.

Тем не менее, аномалии все еще существуют. Если вы отправляете транзакцию одновременно с множеством других людей, и базовая плата резко возрастает, вы можете столкнуться с тем, что ваша транзакция не будет принята из-за слишком высокой базовой платы. Что еще хуже, интерфейс кошелька не умеет это показывать. Нет явных красных предупреждений, и очень мало четких указаний о том, что вы должны делать, чтобы решить эту проблему. Даже эксперты, которые знают, что в таких случаях нужно "ускорять" транзакцию, выпуская новую транзакцию с теми же данными, но с более высокой "максимальной базовой платой" (max-basefee), часто не знают, где находится кнопка, позволяющая это сделать.

Урок: необходимо улучшить пользовательский опыт (UX) при проектировании транзакций, хотя сейчас есть простые решения. Я благодарен команде Brave Wallet за то, что они серьезно отнеслись к моим предложениям по этому вопросу, сначала увеличив предел максимальной базовой платы с 12.5% до 33%, а затем исследуя более очевидные способы сделать подсказки о "блокировке транзакций" более заметными в пользовательском интерфейсе.

В 2019 году я тестировал один из первых кошельков, пытающихся предложить социальное восстановление (social recovery wallet: обновленный смарт-контрактный кошелек, предлагающий высокий уровень безопасности и лучшую удобство). В отличие от подхода, который мне нравится, основанного на смарт-контрактах, их метод заключался в использовании секретного разделения Шамира, чтобы разделить закрытый ключ аккаунта на пять частей, так что любые три части могут быть использованы для восстановления закрытого ключа. Пользователям нужно было выбрать 5 друзей (в современном языке "опекуны"), убедить их скачать отдельное мобильное приложение и предоставить код подтверждения, чтобы создать зашифрованное соединение с приложением друзей через Firebase и отправить им разделенный закрытый ключ.

Этот метод быстро привел к проблемам с моим кошельком. Через несколько месяцев мой кошелек вышел из строя, и мне нужно было использовать программу восстановления, чтобы восстановить его. Я заставил своих друзей пройти процесс восстановления через их приложение вместе со мной, но все пошло не по плану. Двое из них потеряли части закрытого ключа (key shard), потому что сменили телефон и забыли перенести приложение восстановления. Третья причина заключалась в том, что механизм соединения Firebase долгое время не работал. В конечном итоге мы нашли способ решить проблему и восстановили закрытый ключ. Однако через несколько месяцев кошелек снова вышел из строя. На этот раз обычное обновление программного обеспечения случайно сбросило хранилище приложения и удалило его закрытый ключ. Но я не добавил достаточно участников для программы восстановления, потому что механизм соединения Firebase был слишком плох, чтобы позволить мне успешно это сделать. В итоге я потерял небольшое количество биткойнов и ETH.

Урок: социальное восстановление, связанное с обменом конфиденциальной информации, действительно очень хрупкое, это плохая идея, если нет других вариантов. Друзья (опекуны), участвующие в вашей программе восстановления, не должны скачивать отдельное приложение, потому что если ваше приложение используется только для восстановления в таких особых случаях, его легко забыть и потерять. Кроме того, необходимость в независимых централизованных каналах связи также создает множество проблем. Напротив, способ добавления опекунов в программу восстановления должен заключаться в предоставлении их ETH-адресов, восстановление должно происходить через смарт-контракт с использованием кошельков ERC-4337. Таким образом, опекунам нужно просто не потерять свои кошельки Ethereum.

В 2021 году я пытался сэкономить на комиссиях за использование Tornado Cash, используя опцию "самореле" (self-relay). Tornado Cash использует механизм "реле" (reply), когда третья сторона отправляет транзакцию в цепочку, потому что при выводе ваш адрес вывода обычно еще не имеет токенов, и вы не хотите платить за транзакцию с вашего адреса депозита, так как это создает публичную связь между двумя адресами, что и пытается предотвратить Tornado Cash. Проблема в том, что механизм реле обычно очень дорогой, реле берет определенный процент комиссии, который может значительно превышать фактические Gas-расходы транзакции.

Чтобы сэкономить, однажды я использовал механизм реле при первом небольшом выводе, где комиссия была ниже, а затем сам использовал функцию "самореле" в Tornado Cash для отправки второго, более крупного вывода, не используя реле. Проблема в том, что я все испортил, случайно ошибившись при входе в адрес депозита, так что адрес депозита оплатил комиссию, а не адрес вывода. Это привело к созданию публичной связи между ними.

Урок: разработчики кошельков должны начать более четко учитывать вопросы конфиденциальности. Кроме того, нам нужны лучшие формы абстракции аккаунтов, чтобы устранить необходимость в централизованных или даже "совместных реле" и сделать роль реле товарной.

Другие существующие проблемы

  • Многие приложения все еще не работают в Brave Wallet или браузере Status. Это может быть связано с тем, что они не провели должную работу и полагаются на специфические API metamask. Даже Gnosis Safe долгое время не работал с этими кошельками, что заставило меня написать свою мини-версию Javascript Dapp для подтверждений. К счастью, последний пользовательский интерфейс исправил эту проблему.

  • Страница передачи транзакций ERC 20 на Etherscan, например: https://etherscan.io/address/0xd8da6bf26964af9d7eed9e03e53415d37aa96045#tokentxns, легко отправляет мошеннические сообщения. Любой может создать новый токен ERC 20, который может отправить журнал (log), утверждая, что я или любой другой конкретный человек отправил токены другим. Это иногда используется для обмана людей, заставляя их думать, что я поддерживаю какой-то мошеннический токен, о котором я на самом деле никогда не слышал.

  • Uniswap когда-то предлагал очень удобную функцию для обмена (swap) токенов и отправки вывода на разные адреса. Эта функция действительно была удобна, когда мне нужно было заплатить кому-то USDC, но у меня не было USDC. Теперь этот интерфейс не предлагает эту функцию, так что мне нужно сначала обменять, а затем отправить отдельную транзакцию, что неудобно и тратит больше Gas. Позже я узнал, что функции, предлагаемые Cowswap и Paraswap, хотя сейчас, похоже, Paraswap не работает с Brave Wallet.

  • Использование входа через Ethereum — хороший выбор, но если вы пытаетесь войти на нескольких устройствах, и ваш Ethereum-кошелек может использоваться только на одном устройстве, это все еще очень сложно.

Резюме

Хороший пользовательский опыт имеет решающее значение. Чистый и аккуратный пользовательский интерфейс, который делает что-то странное и необъяснимое 0.723% времени, приведет к огромным проблемам, что хуже, чем интерфейс, который открывает пользователю больше реальных существующих проблем. Прямое открытие проблем по крайней мере позволяет пользователям легче понять, что происходит, и знать, в чем проблема, и как ее решить.

Помимо самой важной проблемы высоких транзакционных сборов, вызванной тем, что масштаб еще не полностью решен, пользовательский опыт является ключевой причиной, по которой многие пользователи Ethereum (особенно пользователи из южного полушария) часто выбирают централизованные решения вместо децентрализованных альтернатив на цепочке, которые держат власть в руках пользователей и их друзей и семьи или местного сообщества. На протяжении многих лет пользовательский опыт значительно улучшился. Особенно с EIP-1559, когда средняя транзакция, которая раньше занимала несколько минут, теперь занимает всего несколько секунд после EIP-1559 и слияния, что делает использование Ethereum очень приятным. Но на этом пути к разработке нам все еще предстоит долгий путь.

warnning Предупреждение о рисках
app_icon
ChainCatcher Building the Web3 world with innovations.