Compartir este artículo

Coinbase y ZenGo discuten sobre los estándares de códigos QR que podrían afectar a los tokens ERC-20

Los usuarios que deben utilizar códigos QR deben verificar los detalles de la transacción antes de confirmarla definitivamente para ahorrarse dinero y dolores de cabeza.

Pequeños problemas, agravados por la falta de coordinación de los desarrolladores, pueden tener un enorme impacto en la seguridad de las monedas de los usuarios de Cripto .

CONTINÚA MÁS ABAJO
No te pierdas otra historia.Suscríbete al boletín de The Protocol hoy. Ver Todos Los Boletines

Caso en punto:

El miércoles, el jefe de seguridad deZenGo, un proveedor de billeteras de Criptomonedas , tuiteóUna investigación muestra que problemas con los códigos QR generados por la aplicación de Coinbase.com han provocado que algunos usuarios envíen fondos a la dirección del contrato en lugar de a la dirección de billetera prevista dentro de la aplicación. Este error bloquea los fondos, sin posibilidad de revertir la transacción.

El problema del código QR que identificó ZenGo se basa en un problema de compatibilidad con versiones anteriores entreERC-67(el formato estándar de URL QR original) y el más nuevoEIP-681estándar. Coinbase utiliza EIP-681, lo que genera problemas de compatibilidad con otras billeteras que utilizan el estándar anterior.

“Los códigos QR son un formato muy problemático en el ámbito de las Criptomonedas ”, afirmó Tal Be'ery, cofundador e investigador de seguridad de ZenGo. “Como los códigos QR no son legibles por humanos, a los usuarios les resulta difícil detectar errores, ya sea por malicia O por error. Debido a la irreversibilidad de las Criptomonedas, los errores suelen ser fatales.

Dicho esto, los códigos QR pueden ser más confiables y menos propensos a errores en general que una Human copiando y pegando la dirección de una billetera.

Este problema ha afectado a algunosusuarios en los últimos ocho mesesy, según Be’ery, probablemente ha existido por más tiempo. Fueinformado públicamenteTambién en diciembre de 2020.

Los estándares de código QR EIP y ERC

ZenGo descubrió el problema como parte de su proceso de control de calidad. Be'ery afirmó que el equipo estaba probando el módulo de decodificación de QR de ZenGo alimentándolo con códigos QR generados por diversas billeteras y observó que la aplicación ZenGo no procesa los QR de la aplicación Coinbase para tokens ERC-20, como Tether o DAI.

Los tokens ERC-20 se pueden usar normalmente para representar objetos, otorgar derechos de voto, pagar comisiones de transacción, financiar colectivamente e incorporar nuevas funciones a un token. ERC-20 es actualmente el estándar de tokens ERC más popular en Ethereum.

Sigue leyendo: ¿Qué es el estándar de token ERC-20 de Ethereum ?

Una vez que los códigos QR se decodifican de acuerdo con el estándar de URL de código QR más antiguo utilizado por ZenGo, la URL aparece en el campo de dirección debajo del código QR como, esencialmente, "Ethereum:<dirección>" seguido de algunos parámetros opcionales.

En el formato más nuevo, compatible con la aplicación de Coinbase, la URL decodificada aparece debajo del código QR como “ERC-20 Ethereum:<dirección del contrato>/transfer?address=<dirección del destinatario>”.

Esto significa que si los desarrolladores no son cuidadosos con su implementación, un algoritmo puede decidir tomar solo el primer parámetro como la dirección relevante a la que enviar e ignorar todos los demás, según Be’ery.

“Cuando este algoritmo ‘ingenuo’ se aplica al nuevo formato, provocará que el usuario de la billetera envíe fondos por error al contrato ERC-20 y no al destinatario previsto, lo que resultará en una pérdida de dinero”, dijo Be’ery.

Be'ery tuiteó un ejemplo de la aplicación de Coinbase, donde la primera dirección es la dirección del contrato en lugar de la dirección de la billetera.

La documentación del estándar EIP-681 <a href="https://eips.ethereum.org/EIPS/eip-681%23backwards-compatibility">Ethereum</a> reconoce este problema, afirmando esencialmente que es compatible con versiones anteriores de pagos ETH pero no con ERC-20.

Sigue leyendo: Buscamos estafas de Cripto en las tiendas de aplicaciones de Google y Apple. Esto es lo que encontramos.

'Un estándar terrible'

Coinbase no proporcionó el comentario solicitado al momento de la publicación, pero Pete Kim, jefe de ingeniería de Coinbase Wallet, respondió al tweet de Be’ery.

Be’ery afirmó que, si bien Coinbase no está "equivocada" por seguir un estándar, el equipo de ZenGo cree que se trata de un ejemplo clásico de "más vale ser inteligente que tener razón".

“Al implementar una funcionalidad entre billeteras, como los códigos QR que pueden ser creados por una billetera y consumidos por otra, es mejor utilizar una actitud de 'mínimo común denominador'”, dijo Be'ery.

En concreto, ZenGo crea códigos QR que codifican la dirección en un formato sin procesar (Trust Wallet también lo hace) que solo especifica la dirección y nada más. Es básico y, por lo tanto, reduce el margen de error e incompatibilidades.

Kim más tardese corrigió a sí mismo, señalando que el nuevo estándar se estaba utilizando en la aplicación minorista de Coinbase, o su aplicación de intercambio, en lugar de Coinbase Wallet, que es una aplicación de billetera sin custodia.

Kim continuó diciendo que esto era un error en ZenGo por no ser compatible con el estándar EIP-681, y señaló que otras billeteras como Trust, Exodus,Criptoy Metamask admiten EIP-681 correctamente.

Elegir la dirección correcta

Mientras tanto, como regla general, Be’ery indicó que los usuarios que deben usar códigos QR deben verificar los detalles de la transacción antes de confirmarla. Por ejemplo, al buscar una dirección enEtherscanLe indicará si la dirección es una dirección de contrato o una dirección de billetera. Lamentablemente, verificar qué estándares admite su billetera preferida es bastante difícil.

Todo esto puede parecer arduo para quienes se inician en el mundo de las Cripto y no están familiarizados con su funcionamiento, y puede que lo sea. Sin embargo, a la larga, puede ahorrarles BIT dinero y dolores de cabeza.

“Por eso en ZenGo ampliamos nuestros códigos QR con algunos indicadores visuales sobre el tipo de moneda/token y también la dirección misma para facilitar la comparación y verificación”, dijo Be'ery.

Lo más importante al leer códigos QR es no confundirse con los diferentes formatos y estándares. Es mejor fallar en caso de un formato no compatible (como hacemos nosotros) que intentar "adivinar" y poner en riesgo el dinero de nuestros clientes. En el futuro, podríamos decidir admitir también este formato y entonces seleccionaremos la dirección correcta para evitar pérdidas de fondos.

Corrección: jueves, 3 de marzo de 2021, 16:00 UTC:La versión original de este artículo indicaba que el problema se debía a la billetera Coinbase. Se ha modificado para indicar que el problema se debe a las direcciones de billetera dentro de la aplicación Coinbase.com.

Se han agregado comentarios adicionales de Pete Kim de Coinbase Wallet.

Benjamin Powers

Powers es reportero de tecnología en Grid. Anteriormente, fue reportero de Privacidad en CoinDesk , donde se centró en Privacidad financiera y de datos, seguridad de la información e identidad digital. Su trabajo ha aparecido en el Wall Street Journal, Daily Beast, Rolling Stone y The New Republic, entre otros. Es propietario de Bitcoin.

Benjamin Powers