¿Qué es Ethereum?

Cuando ya empezábamos a entender y pillarle el truco a Bitcoin, la creatividad alrededor de la Blockchain explosiona y aparecen un montón de ideas fascinantes dispuestas a extender sus posibilidades y formar parte indisoluble de nuestras vidas. Introduciendo más o menos ingeniosas variantes en el código de Bitcoin ya se habían creado otras interesantes criptomonedas: Litecoin, Dash, Monero… Pero Ethereum también ha marcado un antes y un después a partir de su lanzamiento oficial en 2015. Parece muy poco tiempo aún pero las cosas avanzan muy deprisa, se precipitan y, en el caso de Ethereum, se consolidan. Incluso se afirma que Ethereum terminará por robarle la corona a Bitcoin. Por eso, sin más dilación, vale la pena conocerlo un poco más a fondo.

La idea de un muchacho de 17 años

Vitalik Buterin, sin duda, ha sido un creador precoz. Con 17 años, aparte de jugar a World of Warcraft, ya era un reconocido colaborador en el desarrollo de Bitcoin y había cofundado Bitcoin Magazine. Dos años más tarde elaboró el White Paper  inicial de lo que sería la plataforma Ethereum, basada en la Blockchain pero con capacidad para hacer muchas más cosas que simples transacciones de una criptomoneda.

En 2014, junto con dos socios en el desarrollo, lanzaron una campaña de financiación vendiendo el token Ether que es la base de la plataforma en lo que sería la primera ICO, Initial Coin Ofering u Oferta Inicial de Monedas. Consiguieron unos 18 millones de dólares y en 2015 lanzaron la primera versión de Ethereum. Desde entonces hay cientos de programadores implicados en su desarrollo.

A pesar del poco tiempo transcurrido desde su lanzamiento el camino no ha sido siempre fácil. En 2016 la plataforma sufrió un robo de tokens  valorados en cerca de 50 millones de dólares  pero resolvieron el problema mediante una bifurcación en la cadena de bloques (hard fork) que dio lugar a la aparición de dos tokens o monedas distintas que siguieron su propio camino: Ethereum (ETH) y Ethereum Classic (ETC). Cabe decir que para resolver el conflicto y tomar la decisión de hacer ese hard fork todas las personas que teníamos tokens pudimos votar haciendo uso de la propia plataforma.

Ethereum ha seguido prosperando de una forma exponencial y ETH es hoy en día una de las grandes estrellas que prometen un futuro brillante a la tecnología Blockchain. Es la segunda en capitalización de mercado, alrededor de los 80 mil millones de dólares, algo por detŕas de Bitcoin pero acercándose a él de manera constante.

¿En qué se diferencian Bitcoin y Ethereum?

Técnicamente parecen similares ya que ambas se basan en la tecnología Blockchain, sin embargo las diferencias son definitivamente importantes.

Bitcoin es básicamente una criptomoneda cuyo objetivo es idéntico a cualquier otra moneda basada en confianza. Es decir, Bitcoin sirve para transferir valor y con él adquirir bienes y servicios. O sea, lo dicho, es una moneda (descentralizada).

Ethereum, sin embargo, es mucho más. Es una plataforma descentralizada con una criptomoneda (Ether). No solo puede usarse como moneda sino que pueden ejecutarse con total fiabilidad pequeñas piezas de código o smart contracts (contratos inteligentes) con lo que sus posibilidades van muchísimo más allá de las meras cuestiones monetarias. Es decir, Ethereum es una cadena de bloques sobre la que cualquiera puede programar cosas o introducir pequeños programas en ella.

Otras diferencias son estructurales. Por ejemplo, la cantidad total de Bitcoin que habrá en circulación son 21 millones mientras que Ether tendrá una masa circulante de algo más de 90 millones. Actualmente restan uns 3 millones de Bitcoin por ser minados mientras que aproximadamente en el año 2021 solo se habrán creado unos 45 millones de Ether.

Por otra parte, los bloques en la Blockchain de Bitcoin se crean cada 10 minutos mientras que en Ethereum la creación de un bloque tarda unos 12 segundos lo que hace que las transacciones sean muchísimo más rápidas.

Los nodos de la red de Bitcoin almacenan una copia entera del «libro de cuentas» o Blockchain. Los nodos de la red Ethereum no solo hacen esto sino que también conservan un historial de contratos inteligentes así como el estado más reciente de dichos contratos. Para ejecutar tales contratos inteligentes los nodos de Ethereum conforman una gigantesca máquina virtual (EVM) capaz de compilar y ejecutar código escrito en un lenguaje simple y particular denominado bytecode. Dichos programas que cualquiera puede volcar en la Blockchain son extremadamente simples; no se trata de complejísimos algoritmos sino de estructuras de código sencillo que dicen básicamente «si pasa esto, hago esto y si pasa esto otro entonces hago esta otra cosa». Estos programas podrían ser ejecutados en cualquier ordenador o, incluso, un teléfono moderno sin mayores complicaciones. La gracia de Ethereum estriba, por tanto, en que se ejecuten en una máquina virtual asociada a una Blockchain y así se convierten en «contratos inteligentes» o un código que se ejecuta de forma transparente, inmutable e inalterable lo que evita fallos humanos y manipulaciones. Todas las partes que conocen el contrato virtual pueden tener la absoluta tranquilidad de que este se ejecutará según las reglas acordadas previamente.

Comprendiendo conceptos

Ethereum es una plataforma basada en Blockchain y usa una criptomoneda que es el Ether (ETH). Cada vez que se quiere introducir algo en un bloque es necesario pagar, igual que en las transacciones Bitcoin, una comisión en ETH. ¿Por qué es necesario pagar una comisión? Simplemente porque es el incentivo que tienen quienes aportan los ordenadores que sostienen la red. Si no existiera ese incentivo, seguramente solo unos pocos fans contribuirían a crear la red y la escalabilidad sería inviable. Es cierto que hay criptomonedas cuyas transacciones son pequeñísimas pero entonces el incentivo es otro. Un ejemplo es Digibyte, donde el incentivo puede estar en que en un futuro sea la criptomoneda más usada por su rapidez y su utilidad en cuestiones de micropagos. Otro, Faircoin, cuyo incentivo está en los objetivos de la comunidad activista que la sostiene.

En Bitcoin la comisión a pagar depende del tamaño de la transacción (no del importe sino del tamaño en bytes que ocupe lo que depende de cuan fraccionadas estén las monedas entre diferentes direcciones de un monedero). En Ethereum también depende del tamaño de la transacción; o sea, que será más barata si el programa que intentas introducir está bien optimizado desde el punto de vista de su codificación. En este sentido se incentiva que los contratos inteligentes que se quieran introducir no contengan código inútil; o sea, que se simplifiquen todo lo posible.

En Ethereum hay un concepto más a tener en cuenta. Fíjate, si introduces en la Blockchain un programa o contrato inteligente pagas una comisión por hacerlo. Pero, a partir de ahí, tenemos un programa que se ejecutará durante un tiempo. Puede ser una vez o puede ser que ese programa se deba ejecutar más veces o durante más tiempo. Igual que cualquier maquinaria necesitará una fuente de energía para funcionar. Aquí esa fuente de energía se llama GAS. Por tanto, para evitar código mal construido o código malicioso que pretenda ejecutarse indefinidamente es necesario establecer un límite medido en puntos o pasos de computación. Cada paso de un algoritmo precisa aproximadamente 1 GAS o alguno más si implica más poder computacional o más datos a almacenar, que no es lo mismo calcular 3×4 que las raices cuadradas de una secuencia de números primos capicúas. Es un decir; luego veremos algunas ideas de contratos inteligentes más concretos y útiles. En definitiva, el cálculo del GAS necesario incluye estos parámetros y unos 5 GAS por cada byte que sea necesario transaccionar.

Por tanto, Ethereum está bien protegido frente a ataques maliciosos (serían bastante costosos) y a la vez proporciona suficientes incentivos para la red de ordenadores que sostienen su Blockchain y las operaciones que en ella se llevarán a efecto.

Más ventajas de Ethereum

Con Ethereum cualquiera puede crear nuevos tokens que sirvan como moneda o acciones para financiar proyectos. Se pueden crear contratos inteligentes que funcionarán de la forma prevista sin el concurso de terceras partes. Se pueden crear sistemas de votación y formas de gobernanza virtual en las que no exista duda alguna sobre su confianza. Se pueden habilitar formas de garantizar identidades o sistemas de reputación que no es posible alterar artificialmente. Sistemas de custodia de fondos que solo se liberen cuando se han cumplido determinados requisitos; por ejemplo, intercambio de monedas o valores de manera segura sin que tenga que custodiarlos un tercero en el que haya que confiar. Las posibilidades son virtualmente infinitas.

Ejemplos de contratos inteligentes

Son tantas las cosas que se pueden llegar a inventar alrededor de Ethereum que cuesta resumirlas todas en unas lineas. Voy a imaginar algunos tipos de contratos inteligentes que son perfectamente posibles actualmente.

  1. Supongamos que compro algo online y el vendedor quiere garantizarme que lo recibiré en 2 días. El vendedor puede implementar un contrato inteligente sobre la Blockchain de Ethereum de tal forma que yo pago X por los gastos de envío. El transportista está unido a este contrato inteligente y cuando yo firmo el recibo según el cual me ha llegado la mercancía, se vuelca el dato a la Blockchain. Si me ha llegado en el plazo, X es entregado al vendedor. Si ha tardado más, recibe X-Y (donde Y es un descuento acordado) y a mi me vuelve el resto. O, simplemente, vuelvo a estar en posesión de lo que pagué por los gastos de envío si no se ha cumplido el plazo. Tal vez se tarda más en explicarlo que hacerlo. Esto serían apenas unas lineas de código y todo el mundo vería en esto un aliciente para hacer pedidos a ese vendedor.
  2. Un contrato inteligente puede establecerse a cualquier nivel, incluso entre dos personas. Si yo apuesto contigo X dinero a que gana el partido un equipo de fútbol, es fácil conectar este contrato a los resultado publicados por una web dedicada a mostrarlos. Si mi equipo gana, mis Ether y los que apostó mi amigo pasan a ser controlados por mi. Si ocurre lo contrario, se los lleva mi amigo. Transladado esto a una empresa de apuestas online el grado de fiabilidad y confianza se dispara porque nadie puede alterar ese contrato.
  3. Para gestionar los fondos de una comunidad dichos fondos serán utilizables solo si determinado porcentaje de miembros llegan a un acuerdo o a un consenso.
  4. Podríamos crear una Organización Autónoma Descentralizada (DAO), un tipo de organización basada en reglas precisas que se llevarían a efecto cuando se dieran unas determinadas condiciones, sin intervención humana. Además de la idea que he expuesto en el punto 3 hay muchas otras posibilidades como que determinados fondos se utilicen de una u otra forma si se llega a juntar determinada cantidad o que se ejecute periódicamente una distribución proporcional de fondos. Incluso que las compras de materias primas se realicen de forma automática en base a las ventas o stock en un almacén.

¿Podrá la Blockchain de Ethereum sostener su crecimiento?

Esta es uno de los retos principales de cualquier Blockchain. Bitcoin ya se encontró de bruces con este asunto y es lo que ha motivado a mucha gente a crear nuevas variantes de la criptomoneda con características específicas que pretenden solucionar el problema de su sostenibilidad a largo plazo. La hoja de ruta de Ethereum tiene previstas soluciones para este asunto pero, como todas las cosas que aún no se han hecho, siempre plantea incógnitas sobre su efectividad. Por ejemplo, si se crea un bloque nuevo cada 12 segundos podemos preguntarnos si en unos años más un ordenador que actúe como nodo dispondrá de espacio suficiente para albergar una copia de la Blockchain entera o si solo será posible para organizaciones o empresas poderosas en recursos con lo que la idea básica de la descentralización iría perdiendo peso. Una posible solución sería que los nodos no tuvieran que almacenarla completa de una forma que se ha convenido en llamar «sharding» de la base de datos. En este caso las validaciones de las transacciones ocurrirían entre nodos de confianza que, en su conjunto, tuvieran copia de la Blockchain entera aunque cada uno de ellos tendría solo una parte. Lógicamente requiere también soluciones que permitan garantizar la fiabilidad de dichos nodos. Etherum tiene prevista una forma de conseguir dicha confiabilidad. Por otra parte se está desarrollando también una Blockchain en capas o Lightning Network de la que hablaremos numerosas veces en este blog por la relevancia que está tomando en estos momentos y la ampliación de posibilidades que supone.

En definitiva, los creadores de Ethereum están trabajando seriamente en métodos de escalado que permitan aumentar el número de transacciones por segundo y, por tanto, adaptarse al desmesurado crecimiento que intuímos para esta tecnología que apenas acaba de nacer y ya está cambiando el mundo.

Ethereum al rebufo de Bitcoin

Los Ether (ETH) se utilizan ya como referencia en el intercambio de criptomonedas. Aunque lo habitual, aún, es que sea Bitcoin la referencia muchas casas de cambio (Exchanges) utilizan también ETH. Esto significa que puedes adquirir otras criptomonedas a cambio de ETH y no necesariamente Bitcoin. En la «penúltima» crisis o caída de Bitcoin, el Ether se ha mantenido más fuerte y hay una clara tendencia a preferirlos por más que Bitcoin se considere la madre de todas y la «marca» referencial. El mundo de las criptomonedas se despliega en una amplio abanico de posibilidades que, como hemos visto, van mucho más allá de su mera función de divisas o medios de cambio y reserva de valor. Mucha gente prefiere invertir ahora en ETH antes que en BTC, precisamente porque las grandes posibilidades del primero hacen augurar que su futuro es mucho más sólido. Bitcoin casi se ha convertido en una especie de oro digital; tiene valor y muy probablemente ese valor seguirá aumentando con el tiempo. Pero de los lingotes de oro digital no se espera más que eso. Pero con una tecnología funcional como la que está desarrollando Ethereum se pueden construir muchas cosas interesantes lo cual fundamenta aún más su valor. Para ser objetivo también debo expresar aquí el punto de vista opuesto: hay gente que ve en Bitcoin una tecnología que funciona bien para lo que está previsto y por tanto es una apuesta segura mientras que Ethereum, con tantas posibilidades de uso podría ser más susceptible a encontrarse con algún problema difícil de solucionar y que terminará con todas sus expectativas. No es fácil ofrecer una opinión incontrovertible al respecto. Eso ya entraría en el campo de los adivinos y, por el momento, no tengo claro que el futuro sea realmente adivinable. Es parte de su encanto.

¿Cómo se consiguen Ether?

De la misma forma que el Bitcoin se puede comprar en muchas casas de cambio que aceptan moneda fiat (euros, dólares…) y también a cambio de otras criptomonedas. Por supuesto, como otras monedas, se pueden obtener a cambio de bienes o servicios. O sea, puedes aceptar recibir pagos (o donaciones) en Ether lo mismo que en Bitcoin u otra moneda. Incorporar criptomonedas a tu vida económica o laboral no es ya una cuestión reservada a gente rara que está todo el día delante de un ordenador haciendo cosas que no hacen el resto de las criaturas humanas. Es, más bien, decidir formar parte del progreso y las nuevas tecnologías en vez de pensar siempre que «cualquier tiempo pasado fue mejor».

@sofocles