Читать книгу Finanzas descentralizadas para inquietos - Miguel Caballero - Страница 17
Оглавление3. El nacimiento de Bitcoin
El 3 de enero de 2021 Bitcoin cumplirá exactamente doce años. Podemos decir que estos primeros años no han sido fáciles: ha sido tasado de estafa, de inútil y de fracaso incontables veces, y, aun así, hoy en día la red de Bitcoin sigue en pie, acumulando más de 300 000 MUSD de capitalización y surgiendo como una posible alternativa al sistema monetario actual.
Figura 9. Capitalización de Bitcoin, coinmarketcap.com
Seguramente la pieza más importante para empezar a considerar Bitcoin como algo más que simplemente un juego es que podamos tener la certeza de que es seguro. Es decir, que podamos confiar en que esta red de dinero digital es segura y nos permite guardar y transmitir valor. Es por esto que empezaremos familiarizándonos con su funcionamiento más técnico. Entender cómo esta red consigue posicionarse como la más segura que ha existido nunca nos permitirá darle un voto de confianza para que nos podamos plantear si algún día puede reemplazar al sistema actual, o, al menos, surgir como una alternativa para todos.
3.1. Algunos conceptos previos
•Red P2P o red de pares. Es una red donde los participantes se conectan de forma directa. De tú a tú, sin intermediarios.
•Protocolo. Software informático que funciona como «lenguaje de la red» y permite a los participantes comunicarse y entenderse.
•Descentralizada. Sin una entidad central.
•Criptografía. Ciencia que permite encriptar información. «Cripto» proviene de ´secreto´, y «grafía» proviene de ´texto´. Hacer que un texto sea secreto.
•Hash. Función criptográfica que cifra una información y además permite crear una secuencia alfanumérica única; crea como una huella digital única de la información.
3.2. ¿Qué es Bitcoin?
Empecemos por el principio. Bitcoin es un protocolo, es decir, un programa que permite una comunicación entre ordenadores. Este protocolo está abierto a todos, es tan fácil como descargarse el software de Bitcoin. Una vez instalado el software, pasas a formar parte de una red de ordenadores descentralizados, porque ninguna tiene más poder que otro, y que usan este protocolo para comunicarse entre ellos. El objetivo principal es permitir transacciones a través de un activo digital (bitcoin) dejando registrado todos los movimientos monetarios en un libro de contabilidad compartido por todos los ordenadores de la red conocido como Blockchain.
Aquí entran varias ideas. La primera es que los nodos son descentralizados, es decir, todos estos ordenadores que componen la red de Bitcoin son independientes. No confían entre ellos y por tanto verifican individualmente todos los movimientos de esta red. Ninguno tiene poder sobre el otro, sino que toman decisiones poniéndose de acuerdo a través de mecanismos que veremos más adelante. En segundo lugar, vemos que realmente Bitcoin es un protocolo informático. Todos estos ordenadores se descargan el software de Bitcoin, esto les permite conectarse en esta red mundial de nodos diseñada para hacer transacciones. Por último, vemos que hay una diferencia entre Bitcoin y bitcoin. Para evitar posibles confusiones, Bitcoin hace referencia a la red de nodos descentralizados y conectados gracias al protocolo, y bitcoin hace referencia al activo digital que utiliza esta red para transferir valor de un lugar a otro.
Como hemos comentado, esta innovación tecnológica se introdujo por primera vez en 2008 por Satoshi Nakamoto en un blog de ciberanarquistas de diferentes matemáticos y criptógrafos que veían en la tecnología y la criptografía una forma de empoderar al ciudadano y hacerlo más libre. Dicho de otro modo, de reducir la dependencia de entidades centrales como los gobiernos u otras instituciones.
Lo más interesante de Bitcoin es que es el primer activo que utiliza la criptografía como mecanismo para verificar las transacciones y asegurar la red a través de un hash (tecnología criptográfica) y que utiliza métodos para llegar a un acuerdo entre ordenadores descentralizados. El concepto de hash lo iremos viendo a menudo: consiste en un algoritmo matemático que transforma cualquier conjunto de datos en una serie alfanumérica de longitud fija, independientemente del mensaje. El algoritmo usado por Bitcoin se lo conoce como SHA-256.
Figura 10. Desempeño de la función hash SHA-256
El resultado siempre será una serie alfanumérica de cuarenta cifras. El objetivo del hash no es cifrar o esconder información, sino generar una especie de «huella digital» de un conjunto de datos. Por lo tanto, el objetivo del hash es validar información más que cifrarla. Otro punto interesante es que una función hash es unidireccional: es muy fácil obtener el resultado, pero es imposible saber los datos previos al hash. Por ejemplo, encontrar el hash de las palabras «Buenos días» es sencillo, pero es imposible saber que del hash «21aebc48383652046150c3663a57b1cb5bf957b5ece024deb9cbc087478cdf80» la palabra de origen es «Buenos días». Este concepto es importante porque se utilizará en muchos de los mecanismos de protección del protocolo.
3.3. ¿Por qué existe Bitcoin?
La raíz del problema del dinero convencional es toda la confianza que se requiere para utilizarlo. Debemos confiar en que el banco central no devalúe la moneda, pero la historia de todas las monedas fiduciarias está llena de violaciones de esta confianza. Debemos confiar en los bancos para guardar nuestro dinero y hacer transacciones electrónicas, pero ellos lo prestan en oleadas de burbujas crediticias con apenas una fracción en las reservas. Debemos confiarles nuestra privacidad, confiar en que no dejarán que ladrones de identidad vacíen nuestras cuentas. Sus enormes costos generales hacen que los micropagos sean imposibles.
Satoshi Nakamoto
Cypherpunks BLOG 2009
La mejor forma de entender Bitcoin es hablar del motivo por el que se creó, compartido por su creador Satoshi Nakamoto.
En esta cita de una de sus intervenciones en el blog de cyberpunks durante la creación de Bitcoin, quedan muy claros los problemas del sistema actual y ofrece Bitcoin como una posible alternativa. Los problemas son dos:
1. Valor del dinero
Desde hace más de un siglo, el control de la moneda ha estado en manos de los gobiernos, completamente monopolizado. Algo cuanto menos extraño es que en un mercado libre el elemento más importante (el dinero) esté controlado por los gobiernos. Estamos en contra de los monopolios empresariales, pero ni nos planteamos el hecho de que el dinero está completamente monopolizado. Probablemente si no fuera por Bitcoin hoy seguiríamos sin conocer ni comprender qué significa esto, ya que su existencia nos ha hecho cuestionar cosas tan fundamentales como qué es realmente el dinero. Cada día, los bancos centrales —porque así se ha decidido— generan más oferta monetaria sin consentimiento alguno de la población, provocando lo que se conoce como inflación. La realidad es que, cada año, cada español se hace un 2 % más pobre, ya que el poder adquisitivo del dinero que utilizamos para guardar la riqueza se ha devaluado. Y eso ocurre en España, un país que utiliza el euro, una moneda con políticas inflacionistas «responsables». Cuando pasamos a escenarios más caóticos como Venezuela, el poder adquisitivo de la población puede llegar a reducirse a la mitad en una semana. Las teorías monetarias predominantes actualmente defienden que una inflación moderada (2 %) es buena para la economía. Una forma de obtener financiación «robando» de manera indirecta a todos los ciudadanos de una región nunca será algo que podrá considerar bueno ni legítimo.
2. Intermediarios
Desde hace años la tecnología ha permitido que el dinero se encuentre principalmente en formato digital. Debido al problema del «doble gasto», para evitar que yo pueda copiar mi dinero digital y pagar dos veces con la misma moneda, ha sido necesario contar con un tercero de confianza responsable de actualizar las cuentas de cada uno y evitar este problema. Esto, a pesar de ser la única solución (antes de Bitcoin y Blockchain) nos genera una gran dependencia respecto a los bancos, dándoles un poder incalculable. Cobran altísimas comisiones, les damos acceso a toda nuestra información económica, abandonando nuestro derecho de privacidad, y, además, tampoco sabemos si están haciendo su trabajo correctamente: simplemente confiamos en ellos. Siempre estaremos expuestos a censura, bloqueo de transacciones, congelaciones de cuentas o incluso que no se nos permita retirar nuestro propio dinero.
Bitcoin se presenta como un mecanismo para transmitir valor entre personas, de forma P2P (de persona a persona) sin intermediarios, y con una política monetaria propia. Esto permite que a partir de ahora ya no tengamos que depender de los bancos comerciales para guardar o transferir dinero por el mundo y en segundo lugar que lo podamos hacer a través de un activo que no está manipulado y controlado por gobiernos o bancos centrales.
3.4. Bitcoin: una moneda digital única
Si volvemos a definir Bitcoin, podríamos decir que es una moneda digital, criptográfica y descentralizada que nace con el propósito de ofrecer un sistema alternativo que no requiere que confiemos a nadie los derechos de manipular las propiedades del activo que utilizamos como dinero ni la capacidad que tenemos para guardarlo y transferirlo, ya que nadie tiene el poder de alterar las normas inicialmente establecidas.
Si le damos una perspectiva histórica, hace más de quinientos mil años que la tecnología del dinero apareció, y aunque ha pasado todo ese tiempo y las formas de dinero no han parado de evolucionar, su función principal no ha cambiado: ser un activo que permita transmitir valor entre personas y a lo largo del tiempo. Bitcoin se presenta como la última versión de este proceso evolutivo. Podríamos comparar este hecho con la industria de las telecomunicaciones.
Las tecnologías de telecomunicaciones han ido evolucionando a lo largo de los años: mensajes enviados con palomas, el telégrafo, el teléfono y finalmente internet. El objetivo ha sido siempre el mismo: transmitir información de forma eficiente entre personas. El internet se ha acabado imponiendo simplemente porque es la tecnología que mejor cumple el objetivo inicial. Además, estas tecnologías tienen un componente conocido como network effect.
El network effect se entiende a la perfección si ponemos Facebook como ejemplo. Si solo una persona tiene Facebook, la utilidad de esta red social es nula, pero si ahora son mil personas las que tienen cuenta, las conexiones posibles se disparan, crecen de forma exponencial. El internet se ha extendido tan rápidamente porque el valor que puede aportar esta red es proporcional a la cantidad de gente que la utiliza. De la misma forma, cuando más gente adopte Bitcoin como alternativa, el valor que aportará la red a cada uno de nosotros aumentará exponencialmente.
3.5. ¿Cómo podría Bitcoin sustituir al sistema actual?
El sistema actual nos permite poder enviar dinero (con sus condiciones) a cualquier lugar del mundo, y nos asegura que si yo tengo 1 EUR, no lo podré enviar dos veces. Este trabajo lo llevan a cabo los bancos comerciales, son los que se encargan de llevar las cuentas de todos y de establecer quién tiene qué.
Bitcoin es una red descentralizada, no hay ningún banco o ningún órgano central que determine el saldo de sus participantes o que se asegure de que las transacciones están bien hechas. Ahora veremos cómo lo consigue.
Hemos quedado en que Bitcoin es una red descentralizada; por lo tanto, para poder estar seguros de que no hay fallos y que nadie utiliza dos veces el mismo bitcoin, o que alguien diga que tiene más bitcoins los que realmente posee, la única opción es que todos estos nodos repartidos por el mundo lleven las cuentas. Es decir, ahora ya no tenemos un banco que se encargue de establecer las cuentas y balances de cada individuo, sino que todos los ordenadores (nodos) son los que llevan las cuentas de todos los individuos, y todos registran a la vez todas las transacciones de la red. Todos tienen una copia completa de la blockchain de Bitcoin o libro contable descentralizado donde se anotan todos estos movimientos y saldos.
Ahora vemos cómo se efectuaría una transacción en este nuevo modelo. Imaginemos que Juan quiere enviar 1 BTC a Marta. Ahora Juan no debe solicitar a su banco y que este, asumiendo el control sobre su dinero, lleve a cabo la operación. Con Bitcoin, Juan deberá anunciar en la red su deseo de hacer esta transacción; a continuación, todos los nodos de la red verificarán que esta transacción es correcta, y si todos están de acuerdo, todos anotarán el movimiento y actualizarán que ahora Juan tiene 1 BTC menos en su balance y que Marta tiene 1 BTC más. Este apunte contable se producirá actualizando la blockchain, donde se ha anotado este movimiento. Bitcoin tiene valor porque sus usuarios confían en este mecanismo descentralizado, que, por cierto, no ha fallado nunca en sus casi doce años de historia.
De alguna manera, Bitcoin quita el control del dinero al banco comercial y a los bancos centrales y se lo entrega a la gente. Hace libres monetariamente a todas las personas del mundo.
Bitcoin es al dinero lo que el internet es la información. |
3.6. Utilizando criptografía asimétrica
Antes de seguir, haré un par de aclaraciones para poder comprender el funcionamiento de Bitcoin. Todas las personas que participan son anónimas, y esto se debe a la tecnología criptográfica de Bitcoin.
Los participantes tienen dos claves:
•Clave pública. Esta vendría a ser como el IBAN de tu cuenta. Consiste en un conjunto de números y letras únicos que permite a los usuarios enviar bitcoins a la dirección de algún otro usuario. Esta dirección es completamente anónima, o, mejor dicho, pseudoanónima. La blockchain es pública, por lo tanto, otros usuarios pueden ver que la cuenta X ha recibido X bitcoins, pero no podrán saber que aquella cuenta pertenece a Juan a no ser que él lo haga público. De todas formas, el número de direcciones que uno se puede crear es ilimitado, así que Juan siempre podrá asegurarse de que su privacidad sea respetada.
•Clave privada. Esta clave es la contraseña que permite a la red saber que Juan es el verdadero propietario de los bitcoins que quería utilizar. Esta contraseña se debe guardar correctamente, ya que en caso de perderla dejarías de tener control sobre tus bitcoins y probablemente quedarían perdidos para siempre. De nuevo, tener el poder sobre tus finanzas está ligado a una gran responsabilidad. En este sistema no hay bancos que se encarguen de todo, sino que tú eres el responsable de guardar bien tu riqueza. Como dice la famosa cita del tío de Spiderman: «Un gran poder conlleva una gran responsabilidad».
Además, cuando decimos que los nodos certifican, estos no son personas, sino ordenadores. Por lo tanto, la acción de verificar y actualizar cuentas es completamente automática. Las normas sobre cómo deben actuar estos nodos están programadas en el protocolo de Bitcoin diseñado por Satoshi Nakamoto.
Por último, necesitamos diferenciar los tipos de nodos que existen en la red:
•Nodos que no verifican. Estos son básicamente todas las personas que utilizan Bitcoin pero que no se han descargado el software y no tienen la copia de la blockchain guardada para acceder a la red los usuarios se descargan un wallet o billetera digital. Un wallet es básicamente un lugar digital donde una persona puede guardar sus bitcoins. Este wallet tiene una clave pública (para poder recibir bitcoins) y una clave privada (la contraseña que debe guardar el usuario y que le permite transferir estos bitcoins).
•Nodos que verifican o full-nodos. Estos son los ordenadores, repartidos por todo el mundo y que funcionan de forma descentralizada, que verifican todas las transacciones y que tienen una copia de la blockchain, la cual se va actualizando constantemente. Estos nodos pueden ser públicos o privados, la mayoría de ellos son privados y por tanto no se conoce con exactitud la cantidad de nodos en el mundo.
•Nodos que verifican y archivan o nodos mineros. Estos son los famosos mineros de la red de Bitcoin. A diferencia de los full-nodos, estos nodos, además de verificar y guardar una copia actualizada de la blockchain, son los encargados de anotar los movimientos. Es decir, primero se verifican las transacciones para todos los nodos, pero la anotación del movimiento de bitcoins a la blockchain es responsabilidad de los mineros. Una vez un minero anota un movimiento nuevo en la blockchain, todos los demás nodos actualizan este libro contable descentralizado.
Figura 11. Distribución de nodos de Bitcoin en el mundo. bitnodes.io
3.7. Tecnología detrás de Bitcoin
Ya lo hemos definido, pero básicamente la blockchain es aquel libro contable donde se anotan todos los movimientos y saldos de los participantes de la red y que guarda cada uno de los nodos. Este libro contable es muy importante para que todos los nodos puedan saber si un usuario está mintiendo; por ejemplo, querer utilizar bitcoins que no tiene para hacer un pago. El nodo solo debe consultar la blockchain donde ha quedado todo registrado desde el 3 de enero de 2009.
El algoritmo de consenso es el mecanismo utilizado entre los nodos para determinar de forma descentralizada quién será el encargado de anotar las transacciones consolidadas en la blockchain (siempre un nodo minero). Como hemos dicho, en esta red no hay ningún órgano central que ponga orden, por lo tanto, el nodo minero encargado de apuntar a la blockchain se tiene que elegir de forma descentralizada y siguiendo un mecanismo con el cual podamos estar seguros de que no está mintiendo, o anotando movimientos que no se han realizado. Un ejemplo podría ser que el nodo minero anote una transacción hacia él mismo de 1000 BTC. El mecanismo de consenso debe asegurarse de que esto no sea posible.
Volvamos a repasar la vida de una transacción entre en Juan y Marta. Para hacer la transacción, Juan debe avisar a toda la comunidad y a continuación todos los nodos del mundo irán comprobando que esta transacción es correcta. Con esto me refiero a que Juan sea realmente Juan (se podrá saber a través de su firma digital hecha con la clave privada que solo él posee), que contiene las instrucciones necesarias (enviar 1 BTC a Marta) y que se demuestre, revisando la blockchain, que Juan realmente tiene 1 BTC para enviar.
Cuando todos los nodos dan por buena la transacción, esta aún no se anota en la blockchain y por tanto aún no se lleva a cabo oficialmente. Antes, irá a parar a un pool de transacciones verificadas. Un pool es un lugar digital donde se guarda algo, en este caso, transacciones pendientes de ser anotadas en la blockchain. Es a partir de este momento cuando entran los mineros, encargados de ir agrupando estas transacciones y anotarlas en la blockchain.
Los mineros, también repartidos por todo el mundo, agrupan las transacciones en bloques de transacciones. Blockchain o cadena de bloques tiene el nombre que tiene porque este libro contable realmente está formado por bloques de transacciones relacionados matemáticamente (criptográficamente) entre ellos. Los mineros en este momento competirán entre ellos para ser los elegidos y poner su bloque en la blockchain. De nuevo hay que tener en cuenta que, aunque los mineros sacan las transacciones del mismo pool, no todos los bloques propuestos serán iguales, ya que hay muchas transacciones cada minuto.
Esta competición es muy sencilla: básicamente deberán dedicar «fuerza computacional» para encontrar un número aleatorio. El primero en encontrar este número tendrá el privilegio de anotar un nuevo bloque en la blockchain y recibirá una recompensa a cambio. Actualmente, la recompensa es de 6,25 BTC. Estas inscripciones en la blockchain tienen lugar cada diez minutos, por lo tanto, la nueva oferta de Bitcoin no depende de cuántas máquinas estén extrayendo como ocurre con el oro, o de un órgano central que puede emitir tanto nuevo dinero como quiera.
La nueva oferta monetaria está dictada por un protocolo informático defendido por cientos de miles de ordenadores repartidos por el mundo. Esto aporta una propiedad única a Bitcoin: la nueva oferta monetaria es pública y se puede prever. Todo el mundo puede estar seguro de que mañana no habrá 1000 BTC más, como puede ocurrir con las monedas fiat o el oro. Bitcoin muestra características que lo pueden convertir en el mejor mecanismo de valor reserva del mundo.
3.8. El halving de Bitcoin
Algunas aclaraciones antes de continuar. Estos bloques tienen una capacidad máxima de un mega, que equivale a unas 2700 transacciones. Cada bloque tiene un identificador único, su hash. Los bloques se generan cada diez minutos y la recompensa que da la red se va reduciendo a la mitad cada cuatro años. Por tanto, los primeros bloques de Bitcoin confirmados por los mineros permitían a estos últimos obtener una recompensa de 50 BTC por bloque. En 2012, tuvo lugar el halving, momento en el que la recompensa pasó a ser de 25 BTC por bloque. En 2016 tuvo lugar el segundo halving, reduciendo la recompensa a 12,5 BTC por bloque. Finalmente, este 2020 tuvo lugar el tercer halving, haciendo que, hoy en día, la recompensa por bloque sea de 6,25 BTC.
Este evento suele estar ligado a momentos de grandes subidas en el valor de Bitcoin. Al final, esto es comprensible: si un activo digital limitado tiene un precio en función de la oferta y la demanda, si la oferta de nuevos bitcoins se divide en dos y en cambio la demanda se mantiene o aumenta, el precio sube.
Figura 12. Ciclos de halving de Bitcoin. Tradingview
Dejando de lado la parte especulativa y recuperando la idea de Bitcoin como mecanismo para guardar valor, volvemos a ver cómo realmente Bitcoin puede convertirse en unos años en el mejor activo que hemos visto nunca. No se pueden crear más bitcoins de los que determina el sistema (x bitcoins por cada bloque confirmado). Estos nuevos bitcoins que reciben los mineros como recompensa se reducen a la mitad cada cuatro años. Si hacemos los cálculos, la cantidad de bitcoins generados llegará a 0 aproximadamente el 2140, cuando se llegue exactamente a la cantidad máxima de bitcoins (también determinado por el sistema), que son 21 000 000 de unidades.
Cada cuatro años, la inflación de Bitcoin irá bajando, siendo inferior que el oro (el mejor activo en términos de stock-to-flow) a partir de 2024, con el cuarto halving. Tocaremos estos aspectos cuando analicemos Bitcoin con un punto de vista monetario.
3.9. El algoritmo de consenso: proof-of-work
Volvamos revisar la forma en que se registran las transacciones. Hemos dicho que para determinar cuál será el minero responsable de anotar el nuevo bloque, este tendrá que encontrar un número aleatorio y el primero de todos los mineros del mundo que lo encuentre, lo anunciará a los demás, el resto confirmará si están de acuerdo y, en caso afirmativo, el minero tendrá derecho a anotar el nuevo bloque y recibir la recompensa. Este proceso se conoce como proof-of-work y ahora profundizaremos un poco más sobre cómo funciona.
El proof-of-work es un sistema que surgió durante los años 90, inventado por Adam Back, para evitar el spam. Algunos años después, Satoshi Nakamoto utilizó esta innovación desconocida para hacer de Bitcoin una red extremadamente segura y robusta. La idea era la siguiente: para evitar correos spam, cada vez que una persona envía un correo, el ordenador tiene que resolver un cálculo matemático que le consume energía (y por lo tanto dinero). De esta manera no se envían muchos mensajes seguidos a modo de spam porque debería gastar demasiado tiempo y dinero (ya que la fuerza de cálculo del ordenador consume energía). El sistema desincentiva a los usuarios a enviar mensajes spam.
Aplicado a Bitcoin, tiene el mismo objetivo: como hay que gastar energía para resolver estos problemas, un minero que quiera «verificar transacciones falsas» simplemente solo conseguirá perder dinero. Es decir, desincentiva querer manipular la red. Primero, porque encontrar este número aleatorio tiene un alto coste energético; y segundo, porque antes de verificarlo todos los mineros deben aprobar el bloque; y, si este bloque está manipulado, sencillamente no lo aceptarán. Por tanto, el proof-of-work consigue que solo tenga sentido participar en hacer la red de Bitcoin más segura si no quieres engañar, ya que es la única forma de obtener una recompensa y para contrarrestar los costes que tiene el querer participar. Por otro lado, el resto de los mineros aceptarán rápidamente cualquier bloque que sea correcto porque así no pierden tiempo ni dinero en aportar capacidad de cálculo para intentar minar el siguiente bloque. El proof-of-work consigue que un minero obtenga el máximo rendimiento cuando actúa de la forma más justa y honesta, por la red.
Veamos cómo está formado un bloque de la blockchain de Bitcoin para así comprender cómo se aplica el proof-of-work:
•Primero tenemos el hash del bloque anterior.
•Después el timestamp, para determinar la hora exacta en la que se ha creado el bloque.
•A continuación, la raíz de Merkle de las transacciones, es decir, todas las transacciones del bloque se encuentran hasheadas y representados en un árbol de Merkle, incluyendo en el bloque el hash resultante.
•Ahora aparece el nonce, que es simplemente aquel número que los mineros tienen que descubrir para poder anotar el bloque y recibir la recompensa.
•Y, por último, tenemos el HASH del bloque, que sale hacia al siguiente. De aquí el término de que los bloques están encadenados: están unidos siempre por un hash de entrada y salida.
Figura 13. Incorporación de transacciones (hasheadas) en bloques y configuración de cabeceras
Para entender mejor el último término introducido, el nonce, debemos introducir el concepto de dificultad. El protocolo de Bitcoin dice que los bloques se deben pasar por un hash siempre, y este hash debe comenzar por un número X de ceros. Por lo tanto, los mineros tendrán que encontrar el número (nonce) que, haciendo el hash del bloque, dicho bloque empiece con el número de ceros necesarios. Antes hemos visto que la función hash es unidireccional, así que la única forma de encontrar tal número es por fuerza bruta. Gastar enormes cantidades de energía para probar números de forma aleatoria hasta encontrar el correcto.
El número de ceros va cambiando para aumentar la dificultad del problema y asegurar que los bloques se minen siempre cada diez minutos. Por ejemplo, si hoy hay cinco mineros y entre los cinco tardan diez minutos en descubrir el nonce, y por tanto en anotar un nuevo bloque, si el día siguiente hay diez mineros, la lógica nos dice que ahora tardarán cinco minutos en encontrar el nonce. Para evitar esto y asegurar que siempre se tarde de media diez minutos por bloque, y así hacer de Bitcoin un sistema monetario con una inflación programada y controlada, se utiliza la dificultad. Esta se basa en modificar el número de ceros con lo que debe comenzar el hash cada nuevo bloque. Si hay muchos mineros, aumentará el número de ceros para hacer más difícil el cálculo, y si hay menos, se reducirá ese número de ceros, siempre asegurando que todos los mineros juntos tarden de media diez minutos en descubrir el nonce.
El hash es como nuestra huella dactilar, es muy fácil encontrarla cuando tenemos nuestro dedo, pero es muy difícil saber a quién pertenece si solo tenemos la huella. El hash funciona igual, es muy fácil para los otros mineros ver si el nonce descubierto por uno de los mineros es correcto. La parte complicada es encontrar el número (nonce) con el cual el hash del bloque empiece con los ceros necesarios. Otra comparación son los sudokus, revisar si está bien no es complicado, pero resolverlos sí lo es.
Figura 14. Aplicación práctica de la función hash aplicando algoritmo SHA-256. https://www.keycdn.com/support/sha1-vs-sha256
Por otro lado, hemos visto que cada bloque empieza anotando el hash del bloque anterior. Esto permite que los bloques estén vinculados matemáticamente. De nuevo por eso se conoce como cadena de bloques, porque estos están ligados como una cadena. Cambiar un dato de la blockchain es prácticamente imposible ya que, cambiando un pequeño dato, el resultado del hash del bloque cambia y por tanto no coincide con el anotado en el bloque siguiente.
3.10. Bitcoin: la red más segura del mundo
Hemos visto cómo funciona técnicamente Bitcoin, ahora iremos viendo cómo cada uno de los mecanismos que hemos comentado sirve como barrera de seguridad de la red. Vamos a poder determinar que Bitcoin es una red segura y que podemos confiar en ella para guardar y transmitir valor.
Caso 1. Realizar una transacción falsa, por ejemplo, enviar bitcoins que no tenemos
Este problema se soluciona en la primera capa de seguridad, los full-nodos. Estos serán los primeros en recibir la transacción y deberán revisar que sea correcta. Al revisar la blockchain y ver que este agente no tiene los bitcoins que dice que quiere enviar, la transacción se cancela. Además, aunque un nodo la dé por buena, no es suficiente, deben ser todos (un 70 % de la red aproximadamente) los que afirmen que la transacción es correcta. Al ser una red descentralizada, las transacciones las revisan todos individualmente; por mucho que un nodo afirme que la transacción es correcta o falsa, cada nodo se asegurará él mismo. Primer posible ataque solucionado.
Caso 2. Cambiar información de bloques pasados
Otro intento por falsificar información y dañar la reputación de Bitcoin (debemos tener en cuenta que el mínimo error del sistema conllevaría una pérdida absoluta de la confianza que la gente ha depositado en Bitcoin) es el hecho de cambiar la información de bloques pasados.
Imaginemos que puedo acceder a la blockchain de Bitcoin y hacer un cambio referente al número de bitcoins que recibí hace una semana. Cada bloque tiene incorporado el hash del bloque anterior. Por tanto, el mínimo cambio provocaría que el hash dejara de coincidir y automáticamente toda la red detectaría y desaprobaría el cambio que se está intentando hacer. En segundo lugar, si se quisiera sacar adelante, antes se debería manipular prácticamente la mayoría de los nodos de la red (aproximadamente unos cuarenta mil). Además debería superar en fuerza computacional a todos los mineros, ya que tendrían que volver a minar todos los bloques para poder conseguir el nuevo hash.
Como aclaración, la red de Bitcoin es, con muchísima diferencia, la red más grande, más segura y con más fuerza computacional del mundo. Podríamos llegar a afirmar que es más factible hackear la NASA, la CIA y la Reserva Federal a la vez de intentar cambiar bloques de la red de Bitcoin.
Caso 3. La red se satura porque hay muchos mineros intentando mentir
Este podría ser uno de los grandes problemas, que la red se saturara porque hay demasiados individuos poniendo freno a las confirmaciones de los bloques, demasiados agentes malignos que buscan atacar el sistema.
El algoritmo de consenso y los incentivos económicos nativos de la red hacen tan poco atractivo a nivel económico la existencia de este tipo agente, que consigue que todos los mineros sean honestos. Si recordamos, un minero maligno estaría continuamente gastando grandes cantidades de electricidad solo para frenar la red, sin recibir nada a cambio. Realmente, si este agente existe, en pocos días acabaría actuando de forma honesta y ayudando a la red a ser más segura, porque al menos actuando así recibe bitcoins a cambio y podría compensar los enormes gastos de estar compitiendo con otros mineros para encontrar el nonce.
Caso 4. Ciertos mineros controlan más del 51 % de la red
Este es uno de los problemas más grandes de todas las blockchains: que un solo individuo o grupo controle más del 51 % y, por lo tanto, tenga suficiente fuerza como para manipularla o cambiar las normas. En el caso de Bitcoin, este ataque podría haber sido posible durante sus primeros años de vida, cuando la red era muy débil y no estaba defendida por miles de ordenadores repartidos por el mundo. Hoy, un ataque del 51 % a Bitcoin significa lo siguiente:
Primero, controlar más de la mitad de los nodos y superar por mayoría a gran parte de los mineros del mundo, lo que equivale a millones de ordenadores funcionando día y noche y gastando barbaridades en electricidad. Además, esto tampoco garantizaría su éxito. Realmente, un ataque así solo podría darse por parte de un gobierno o la unión de varias potencias. El hecho es que, si sucede, sería una gran confirmación de que Bitcoin es útil y que es necesario para tener un mundo más justo; y segundo, este agente solo tendría poder sobre la red durante diez minutos, ya que después, si toda la comunidad está de acuerdo, se puede actualizar el código, romper la cadena en una nueva y expulsarlo. Bitcoin se habría visto muy debilitado por el ataque, pero seguiría existiendo y seguiría creciendo de nuevo. Este fenómeno se conoce como hard fork.
Caso 5. Los mineros pueden cambiar las normas y modificar una nueva política monetaria
Aquí nos volvemos a encontrar en un escenario prácticamente imposible. Los mineros no tienen poder por sí solos para elegir el futuro de Bitcoin. De hecho, esto quedó demostrado con el caso Segwit.
En el caso de Segwit (una actualización que permitía aumentar el número de transacciones en un bloque sin cambiar su tamaño) los nodos anunciaron que a partir de ese momento no aceptarían ningún bloque que no tuviera incorporado Segwit. Se comportaron así porque ciertos mineros se negaban a actualizar el software, ya que no ganaban nada haciéndolo (aunque tampoco perdían). No obstante, los mineros vieron cómo de un día para otro toda su actividad productiva podría desaparecer si no aceptaban los requisitos que plantearon los nodos. Terminaron aceptando la actualización de Segwit porque corrían un grave riesgo de que los nodos dejaran de aceptar sus bloques en la cadena.
Además, tenemos que recuperar el concepto de teoría de juegos: todos tienen intereses diferentes (nodos, desarrolladores, usuarios y mineros) y ninguno puede imponer sus condiciones, ya que suelen ser contradictorias con respecto al beneficio generado en cada grupo. Esto hace de Bitcoin una red sólida, robusta y muy difícil de cambiar. Algunos verán este hecho como algo negativo de Bitcoin, ya que lo hace menos flexible y seguramente más lento. Pero seguramente es de lo más valioso de esta red. El pilar más importante de algo que se utiliza como dinero es la confianza, y esta robustez te asegura que puedes confiar que las normas de Bitcoin no van a poderse cambiar así como así.
Caso 6. Se puede crear un nuevo bitcoin y «ya está»
Revisemos este concepto. ¿Es cierto que la devaluación de la moneda de Zimbabwe o de Venezuela afecta el dólar? No. De hecho, solo demuestra que el dólar y el bitcoin son más valiosos que las otras dos. Como ya se ha comentado, los forks (nuevas monedas nacidas de una anterior, por ejemplo: Bitcoin Cash) y altcoins (monedas alternativas) ayudan a Bitcoin a demostrar que es mucho más sólido y seguro, aunque esto no imposibilita la existencia de otras blockchains con otros sistemas monetarios. De hecho, siempre habíamos tenido diversas formas de valores reserva en función de su utilidad. El oro se utilizaba para guardar grandes cantidades de mucho valor, pero para pagos más pequeños y diarios se usaba o bien la plata o el bronce. También hay que tener en cuenta que estas nuevas formas de dinero programable no solo permiten crear políticas monetarias, sino también lógicas de negocio y de distribución de riqueza, así que es difícil creer que existirá solo una moneda digital. Eso sí, tengo la creencia de que es difícil que ninguna de ellas supere a Bitcoin como valor reserva.
3.11. ¿Supone Bitcoin una revolución monetaria?
Una vez analizada desde una perspectiva técnica, podemos decir con conocimiento de causa que Bitcoin es una red segura y robusta en la que podemos confiar para transmitir y guardar valor.
La siguiente pregunta es si resulta inteligente hacerlo; que sea segura no significa que sea atractiva como valor reserva, o que tenga unas características propias de una moneda sólida, en la que no solo podamos confiar porque sus mecanismos de seguridad son indestructibles, sino que además podamos ver Bitcoin como una buena opción para guardar nuestra riqueza a largo plazo.
Este punto de vista lo analizaremos en el siguiente capítulo, donde también aprovecharemos para comparar las características monetarias de Bitcoin con las de las monedas fiat.
Por último, simplemente remarcar que, de todo lo que hemos visto de Bitcoin, lo más relevante no es que esta moneda podría llegar a aumentar mucho su valor, o que ahora nos deberíamos preocupar porque hay una moneda descentralizada que se puede usar para financiación ilegal. Lo más importante de todo es que por primera vez en la historia tenemos a nuestra disposición una tecnología que nos permite guardar y mover valor por todo el mundo, de forma digital y al instante, de manera privada y segura, que está abierta a todo el mundo sin discriminar a nadie y que funciona sin intermediarios ni agentes centrales con el poder de manipular la red y el activo de circula sobre ella. Esto es, sin lugar a dudas, una revolución.