Christof Jori

11 min de lectura · 14 de junio de 2024

¿Por qué existen los gas fees?

El gas es como los impuestos. Nadie quiere pagarlo, ya que sale de nuestra wallet y nunca vuelve. Pero el gas cumple una tarea muy importante. Ha habido momentos en que los gas fees de Ethereum han alcanzado alturas astronómicas y llegado a las noticias. ¿Pero por qué? ¿Cuáles son las circunstancias que llevan a esos picos? ¿Y por qué los fees en Arbitrum, Optimism o Binance Smart Chain son tan bajos?

Empecemos por la definición de gas, y qué propósito cumple para entender mejor las comisiones de transacción. El gas es una comisión que hay que pagar para realizar una transacción en muchas blockchains. ¿Pero por qué existe? Bueno, tiene que haber algún tipo de mecanismo para proteger e incentivar la red. En blockchains Proof of Stake (como Ethereum) los llamamos: Validators. En blockchains Proof of Work, la palabra correcta es: Miners. Estas personas son responsables de verificar y procesar transacciones. En consecuencia, como no hay tal cosa como un almuerzo gratis, necesitan recibir compensación por su trabajo. Es decir, partes de tu gas. Así que ambas partes quedan satisfechas: tu transacción se procesa en la blockchain y el validator cobra por actuar como validator.

¿Pero qué fórmula define los precios del gas? En general, los precios del gas se calculan por la cantidad de trabajo que ocurre en la blockchain. Si simplemente envías un activo de A a B, los precios del gas son menores que llamar a smart contracts complejos. Es decir, el gas se calcula por las acciones que ocurren en la blockchain. Una transferencia simple de A a B muchas veces solo cambia valores individuales. Las llamadas a Smart Contracts complejos por otro lado necesitan más cómputo, lo que lleva a precios iniciales de gas más altos. Eso explica qué son los gas fees y cómo se calculan, pero no por qué a veces son tan extraordinariamente altos.

Una competencia por el block space

Imaginemos lo siguiente: estás vendiendo manzanas frente a tu casa. Pero hay un problema. Más clientes quieren comprar manzanas de las que puedes satisfacer. ¿Qué haces? Como persona que piensa económicamente, la ecuación es clara. Subes el precio. Eso hará que un par de personas se vayan, ya que no están dispuestas a pagar el precio. Si todavía hay más gente frente a tu casa de la que puedes satisfacer, subes el precio aún más. Si nadie visita tu tienda, tus precios podrían ser demasiado altos. Por tanto, los bajas y más gente visitará tu tienda.

Y lo mismo pasa en una blockchain. Si la red está congestionada, hay competencia por el block space, lo que lleva a precios de gas crecientes. Si no hay transacciones, los validators se ven forzados a recoger cualquier transacción, con gas fees potencialmente más bajos. Si hay más transacciones de las que los validators pueden manejar, pueden elegir las transacciones con gas fees más altos. Los gas fees fluctúan y a menudo cambian en minutos. Muchas wallets o block explorers pueden dar más información sobre el precio actual del gas por unidad. Mantener un ojo en estas tendencias puede ayudarte a tomar decisiones informadas. Pero, una mejor forma podría ser aprovechar soluciones Layer-2, veámoslas en la siguiente sección.

¿Layer 2s al rescate?

Imagina que vas conduciendo por la autopista hacia tu oficina. Hay dos carriles, y temprano por la mañana, estos carriles se congestionan con tráfico. Ahora, imagina si se añadieran carriles adicionales junto a la vía principal. Estos carriles extra ayudarían a aliviar el tráfico, permitiendo que más coches se muevan con suavidad. A pesar de tomar rutas diferentes, todos los coches eventualmente vuelven a la autopista principal para llegar al mismo destino. Esto es similar a cómo funcionan las soluciones Layer-2 (L2). Procesan transacciones fuera de la blockchain principal (off-chain), reduciendo la congestión.

Las L2s consumen menos gas porque manejan el grueso de los cómputos de transacciones off-chain, solo enviando el estado final o resumen de vuelta a la cadena principal de Ethereum. En las Layer-2s, varias transacciones se agrupan antes de enviarse a la cadena principal, repartiendo el coste de los gas fees entre muchos usuarios y haciéndolo más barato para cada transacción individual. Debido a estas optimizaciones, las soluciones L2 pueden manejar un volumen mayor de transacciones con gas fees significativamente más bajos mientras siguen asegurando la seguridad y finalidad de la blockchain principal de Ethereum.

Una comparación de redes

Ethereum (Mainnet)

Una unidad de gas es la unidad básica de cómputo en Ethereum. Cada operación en una transacción consume una cierta cantidad de gas. Además de eso, la Base Fee es una comisión mínima por unidad de gas que la establece el protocolo de la red. Esta comisión se ajusta arriba y abajo dependiendo de la demanda de la red.

La Ethereum Improvement Proposal (EIP-1559) estableció una base fee para cada transacción, que luego se incinera, reduciendo la oferta total de ETH. Siguiendo la tasa de quema de ETH, los usuarios pueden obtener información sobre la presión deflacionaria en Ethereum y su impacto potencial en la dinámica económica a largo plazo de la red. La priority fee (mejor conocida: "Tip") es una cantidad adicional que se paga a los miners para priorizar la transacción. Si quieres ajustar tu configuración de gas, puedes definir una Max Fee así como un Gas Limit. La Max Fee es la cantidad máxima que estás dispuesto a pagar por unidad de gas (incluyendo tanto base fee como tip). El Gas Limit es el límite global que estás dispuesto a gastar para esta transacción.

Optimism (OP)

El OP Mainnet fue diseñado originalmente para ser equivalente a EVM. Eso significa que reutiliza código de Ethereum con el que la gente está familiarizada. Pero, las comisiones de transacción necesitan divergir de Ethereum. El coste total de una transacción en Optimism es la Execution Gas Fee y la L1 Data Fee.

La Execution Gas Fee es 1:1 idéntica a la que hemos visto en la sección de Ethereum Mainnet. En general, es la cantidad de gas usada por la transacción multiplicada por el precio del gas adjunto a la transacción. OP también usa la EIP-1559. Aquí viene la clave: si una transacción cuesta 50.000 de gas en ETH mainnet, también lo cuesta en OP mainnet. La única (gran) diferencia es que el precio del gas en OP es mucho, mucho menor. Para calcular los gas fees en Optimism, puedes usar el mismo cálculo que para Ethereum mainnet.

La L1 Data Fee difiere de la comisión de transacción de Ethereum. Pero espera, ¿por qué necesitamos otra comisión, si nuestro objetivo principal es reducir los gas fees? La L1 Data Fee tiene en cuenta el coste de publicar una transacción de OP Mainnet en Ethereum y se determina principalmente por la base fee actual en Ethereum. Cuando se introdujo la actualización Ecotone, las cadenas Optimistic tienen la opción de publicar transacciones usando blobs. Si está habilitado, el precio del gas de los blob data de Ethereum determinará en gran medida la L1 data fee.

Ecotone fue una actualización que contenía la actualización Dencun de L1 y la adopción de blobs EIP-4844 para data-availability. Con Ecotone, el cálculo del gas cambió un poco. Sin entrar en detalles matemáticos, en esencia, se calcula serializando la transacción, tomando la base fee actual de Ethereum y/o la blob base fee en consideración y dos parámetros que escalan la base fee y la blob base fee.

Binance Smart Chain (BSC)

La Binance Smart Chain, junto con sus tokens BEP-20 se ha hecho muy popular debido a una razón principal: Gas fees bajos. En los últimos tiempos, toneladas de proyectos se han movido de Ethereum a BSC por esta razón. La gente estaba (y sigue) frustrada con los gas fees astronómicos de Ethereum y con miedo de perder clientes que no están dispuestos a lidiar con eso.

Pero vamos a meternos en las razones por las que los gas fees de BSC son tan bajos. En realidad hay varios factores que llevan a gas fees bajos en BSC. Empecemos con el mecanismo de consenso. BSC utiliza un Proof of Staked Authority (PoSA) que es menos intensivo en recursos que el Proof of Stake de Ethereum, lo que lleva a tiempos de bloque más rápidos y comisiones de transacción más bajas.

El diseño de red de BSC soporta un alto throughput de transacciones por segundo (TPS), reduciendo la congestión y manteniendo comisiones bajas. Con un tiempo de bloque de alrededor de 3 segundos y tamaños de bloque mayores, BSC puede procesar más transacciones rápidamente, evitando ralentizaciones de red. Su escalabilidad asegura eficiencia incluso durante alta demanda, y los incentivos y subsidios de Binance mantienen aún más bajas las comisiones para atraer usuarios y desarrolladores.

Christof Jori

5 min de lectura · 27 de mayo de 2024