Ethereum: ¿Qué es el gas?

Ethereum funciona a traves de la Ethereum Virtual Machine (EVM), esta máquina funciona como si fuese un único ordenador pero realmente es la suma de una serie de nodos. Cuando se ejecutan los contratos inteligentes los nodos soportan un coste de funcionamiento, eléctrico y de tiempo. Para compensar ese coste está el "Gas".

Las operaciones en la EVM pueden ser las siguientes:
  • Desplegar contrato inteligente
  • Transferir datos
  • Ejecutar un contrato inteligente
Cada operación no tiene el mismo coste, dependiendo del tipo de operación y de la complejidad del  contrato inteligente requerirán mayor o menor cantidad de "Gas". No es lo mismo un contrato inteligente con 10 líneas que uno con 100 por poner un ejemplo básico.

El "Gas" al ser limitado sirve de freno a la saturación del sistema, si por ejemplo un contrato inteligente cae en un bucle infinito solo se ejecutará mientras tenga el "Gas" asignado por consumir.

Cuando asignas "Gas" a una operación una vez termina se te devuelve el "Gas" sobrante a tu cuenta.

El "Gas" no es en sí una moneda, no vale nada, es una unidad de medida de coste, pero para que a los mineros les salga rentable contribuir a la red existe un "Gas price" que permite cobrar el gas utilizado en Ethers.

¿Por qué se mide en "Gas" y no en Ethers? El valor del Ether es muy volátil, cambia cada día, el gas sin embargo es estable ya que no opera en ningún mercado de especulación. De no usar el gas habría que actualizar a diario todo el protocolo de la red.

Si la operación a realizar ha consumido más gas que el máximo se marcará como fallida, habrá que pagar el gas que falta para que se transfiera a la red.

Si ofreces más gas por la operación tienes muchas más opciones de que se ejecute antes por parte de los mineros.

Los contratos inteligentes los creamos con Solidity, pero al compilarlos se convierten en OP Codes. Haré pronto un post sobre estos. Cada OP Code tiene un coste en gas, podéis ver aquí el precio actualizado de cada uno de ellos.

En fin, hasta las redes blockchain necesitan su gasolina para funcionar.

Comentarios