- Повернутися до менюЦіни
- Повернутися до менюдослідження
- Повернутися до менюКонсенсус
- Повернутися до менюСпонсорський матеріал
- Повернутися до меню
- Повернутися до меню
- Повернутися до меню
- Повернутися до менюВебінари та Заходи
Coinbase і ZenGo виступають за стандарти QR-коду, які можуть призвести до втрати токенів ERC-20
Користувачі, які повинні використовувати QR-коди, повинні перевірити деталі транзакції, перш ніж остаточно підтвердити транзакцію, щоб заощадити собі гроші та головний біль.
Невеликі проблеми, ускладнені відсутністю координації розробників, можуть мати величезний вплив на безпеку криптовалют користувачів Крипто .
Приклад:
Середа, начальник охорони при ZenGo, постачальник Криптовалюта гаманців, твітнув Дослідження показало, що проблеми з QR-кодами, створеними програмою Coinbase.com, призвели до того, що деякі користувачі надсилали кошти на адресу контракту, а не на адресу гаманця в програмі. Ця помилка фактично блокує кошти, не маючи можливості скасувати транзакцію.
Виявлена ZenGo проблема з QR-кодом ґрунтується на проблемі зворотної сумісності між ERC-67 (оригінальний стандарт формату URL-адреси QR) і новіший EIP-681 стандарт. Coinbase використовує EIP-681, що створює проблеми сумісності між ним та іншими гаманцями, які використовують старий стандарт.
«QR-коди є дуже проблематичним форматом для домену Криптовалюта », — сказав Тал Беері, співзасновник і дослідник безпеки в ZenGo. «Оскільки QR-коди не читаються людиною, користувачам важко виявити помилки, внесені або злоба або помилково. Через незворотність Криптовалюта помилки зазвичай фатальні».
З огляду на це, QR-коди можуть бути більш надійними та менш схильними до помилок, ніж Human, яка копіює та вставляє адресу гаманця.
Ця проблема торкнулася деяких користувачів протягом останніх восьми місяців і, за словами Б’єрі, ймовірно, існує довше. Це було публічно повідомлено також у грудні 2020 року.
Стандарти QR-кодів EIP та ERC
ZenGo виявив проблему в рамках процесу забезпечення якості. Беері сказав, що команда тестувала модуль декодування QR ZenGo, надаючи йому QR-коди, згенеровані різними гаманцями, і помітила, що додаток ZenGo не обробляє QR-коди додатка Coinbase для токенів ERC-20, таких як Tether або DAI.
Токени ERC-20 зазвичай можна використовувати для представлення об’єктів, надання прав голосу, оплати комісії за транзакції, краудфандингу та включення нових функцій у токен. ERC-20 наразі є найпопулярнішим стандартом токенів ERC на Ethereum.
Читайте також: Що таке стандарт токенів ERC-20 Ethereum ?
Після того, як QR-коди декодуються відповідно до старішого стандарту URL-адреси QR-коду, який використовується ZenGo, URL-адреса з’являється в полі адреси під QR-кодом, по суті, як «Ethereum:<адреса>» з деякими необов’язковими параметрами.
У новому форматі, який підтримується програмою Coinbase, декодована URL-адреса відображається під QR-кодом як «ERC-20 Ethereum:<адреса контракту>/трансфер?адреса=<адреса одержувача>».
Це означає, що якщо розробники не будуть обережні з їх реалізацією, алгоритм може вирішити просто прийняти перший параметр як відповідну адресу для надсилання та ігнорувати всі інші, за словами Беері.
«Коли цей «простий» алгоритм застосовується до нового формату, це призведе до того, що користувач гаманця помилково надішле кошти на сам контракт ERC-20, а не на призначеного одержувача, що призведе до втрати грошей», — сказав Бе’ері.
Бе'ері опублікував приклад із програми Coinbase, де перша адреса була адресою контракту, а не адресою гаманця.
Стандарт EIP-681 <a href="https://eips.ethereum.org/EIPS/eip-681%23backwards-compatibility">https://eips.</a> Документація <a href="https://eips.ethereum.org/EIPS/eip-681%23backwards-compatibility">Ethereum.org/EIPS/eip-681%23backwards-compatibility</a> визнає цю проблему, по суті заявляючи, що він зворотно сумісний для платежів ETH , але не ERC-20.
Читайте також: Ми шукали Крипто в Google і Apple App Store. Ось що ми знайшли
"Жахливий стандарт"
Coinbase не надала запитуваного коментаря до моменту преси, але Піт Кім, керівник інженерного відділу гаманця Coinbase, відповів на твіт Беері.
Technically, Coinbase Wallet is doing the right thing here (using the EIP-681 standard), and ZenGo is not supporting it correctly. However, I do agree that EIP-681 is a terrible standard because it's not backwards compatible. https://t.co/XmwFxTeWjg
— Pete Kim (@petejkim) March 23, 2021
Беері сказав, що хоча Coinbase не «помиляється», оскільки дотримується певних стандартів, команда ZenGo вважає, що це класичний випадок: «Краще бути розумним, ніж мати рацію».
«Під час впровадження функціональних можливостей між гаманцями, таких як QR-коди, які можуть бути створені ONE гаманцем і використані іншим, краще використовувати позицію «найменшого спільного знаменника», — сказав Бе'ері.
"Зокрема, ZenGo створює QR-коди, які кодують адресу в необробленому форматі (це робить і гаманець Trust), у якому просто вказується адреса і нічого більше. Це просто, тому залишає менше місця для помилок і несумісності".
Кім пізніше виправив себе, зазначивши, що новий стандарт використовувався в роздрібному додатку Coinbase або в їхньому додатку обміну, а не в Coinbase Wallet, який не є додатком-гаманцем.
Далі Кім сказав, що це помилка в ZenGo через відсутність підтримки стандарту EIP-681, зазначивши, що інші гаманці, такі як Trust, Exodus, Крипто.com і всі Metamask правильно підтримують EIP-681.
Вибір правильної адреси
Тим часом, як правило, Беері сказав, що користувачі, які повинні використовувати QR-коди, повинні перевірити деталі транзакції, перш ніж остаточно підтвердити транзакцію. Наприклад, пошук адреси на Etherscan покаже вам, чи є ця адреса адресою контракту чи адресою гаманця. На жаль, перевірити, які стандарти підтримує ваш бажаний гаманець, досить складно.
Все це може здатися важким для новачків у просторі, які не знайомі з контурами Крипто, і це може бути. Однак це те, що може заощадити їм BIT грошей і головного болю в довгостроковій перспективі.
«Ось чому в ZenGo ми доповнюємо наші QR-коди деякими візуальними індикаторами типу монети/жетона, а також самою адресою для легкого порівняння та перевірки», — сказав Беері.
«Найважливіше у зчитуванні QR-кодів — це не заплутатися в різних форматах і стандартах, і краще зазнати невдачі у випадку непідтримуваного формату (як ми це робимо) і не намагатися «вгадати» та поставити під загрозу кошти наших клієнтів. Ми можемо вирішити в майбутньому також підтримувати цей формат, і тоді ми виберемо «правильну» адресу, щоб жодні кошти [не були втрачені]».
Виправлення: четвер, 3 березня 2021 р., 16:00 UTC: У оригінальній версії цієї статті вказувалося, що проблема пов’язана з гаманцем Coinbase. Його було змінено, щоб стверджувати, що проблема пов’язана з адресами гаманців у додатку Coinbase.com.
Додано додаткові коментарі Піта Кіма з Coinbase Wallet.
Benjamin Powers
Пауерс є технічним репортером у Grid. Раніше він працював кореспондентом із Політика конфіденційності в CoinDesk , де займався Політика конфіденційності даних і фінансів, інформаційною безпекою та цифровою ідентифікацією. Його роботи були представлені в Wall Street Journal, Daily Beast, Rolling Stone і New Republic тощо. Він володіє Bitcoin.
