Bitcoin y la revolución blockchain
¿Por qué bitcoin es la mayor revolución desde el nacimiento de internet?
El 31 de octubre de 2008 yo era un chaval que acababa de cumplir 20 años cuando, en un foro perdido del internet profundo, se publica un documento de 9 páginas que cambiará para siempre la economía mundial.
Ese día Satoshi Nakamoto colgaba en la red lo que se conoce como el Bitcoin Paper. En este documento se presenta por primera vez lo que se conocerá a partir de ese momento como Blockchain, y más concretamente la red Bitcoin.
Dicho documento, que ahora se puede encontrar fácilmente a golpe de click en cualquier buscador, presentaba por primera vez en la historia una tecnología capaz de permitir la transmisión de valor económico (dinero vamos) a través de internet, entre usuarios desconocidos, y sin un intermediario de confianza.
Unos pocos meses después, Nakamoto publica el software que permite crear un nodo de la red Bitcoin y se hace la primera transferencia de la historia. Se envían 10 bitcoins desde la cartera de Satoshi a la de Hal Finney.
Parémonos a pensar en el potencial de todo esto.
A día de hoy, el sistema de finanzas tradicional permite transacciones financieras por internet a cualquier parte del mundo pero pensemos en los intermediarios que hacen falta. Como mínimo son:
- El banco donde está la cuenta de origen de esa transacción (de donde sale el dinero).
- El emisor de la tarjeta bancaria (Visa, Mastercard...) que procesa esa transacción.
- El banco donde está la cuenta destino de esa transacción (a donde llega el dinero).
En el caso de que se realice una transferencia bancaria (sin tarjeta), en lugar del emisor de la tarjeta tendremos uno o más bancos intermediarios que harán de puente entre los bancos origen y destino.
Tendremos además que fiarnos de que nuestro banco sea solvente, es decir, que el dinero que tenemos en nuestra cuenta bancaria esté disponible siempre para nuestro uso (todos sabemos que los bancos no tienen tanto dinero disponible como el que sus clientes tienen en sus cuentas y que, si todos los clientes acuden a la vez a retirar su dinero, habrá problemas).
Y olvídate de tratar de hacer transferencias durante el fin de semana, como hagas una transferencia un viernes por la tarde ya puedes estar seguro que como pronto hasta el lunes no estará en destino.
Bitcoin trabaja sin intermediarios, mientras haya un nodo en la red tu transferencia se podrá realizar. En menos de media hora tu dinero puede estar en su destino, los 365 días del año.
Aquí no acaban las ventajas. El dinero tradicional (euros, dólares etc...) lo emiten los Bancos Centrales de cada región. Es decir, hay una entidad que controla la emisión de ese dinero. En épocas de crisis (como se ha visto durante la crisis financiera de 2008 o en pleno coronavirus en 2020 y 2021), los bancos centrales inyectan dinero (crean dinero de la nada) para evitar que la economía se hunda. Esto puede parecer una ventaja, pero a la larga esto provoca inflación, un incremento de precios generalizado como el que estamos viviendo este año 2022.
Aquí se puede ver como, desde el estallido de la pandemia Covid-19 en marzo de 2020, se han creado 400 mil millones de dólares, lo que supone que 1 de cada 5 dólares que hay en circulación hoy (noviembre de 2022) es de creación posterior a marzo de 2020 (2 años y medio de vida).
La inflación no deja de ser una caída del valor intrínseco de cada euro o dólar que tenemos (cada vez necesitamos más dinero para comprar lo mismo). Esto se traduce en que los ahorros que teníamos en dinero líquido pierden valor. ¡Los Estados nos están robando de nuestra hucha!
Este problema lo ataja Bitcoin ofreciendo una cantidad fija de bitcoins. Sólo se van a poder crear 21 millones de bitcoins, ni uno más ni uno menos. Esto a la larga, si Bitcoin tiene aceptación como medio de pago y de reserva de valor, provocará un incremento gradual del valor intrínseco de cada bitcoin, algo similar a lo que se puede ver con el oro, que se ha ido revalorizando con el tiempo conforme el dinero fiat se fue devaluando.
En resumen, Bitcoin surge para eliminar todos estos problemas que presenta el sistema monetario tradicional. Bitcoin plantea una solución descentralizada, donde no hay un emisor concreto de dinero ni entidades centrales que controlan el mercado, con una cantidad fija de bitcoins, y todo ello para conseguir volver a hacernos dueños reales de nuestro capital.
Tecnología Blockchain
La tecnología detrás de la red Bitcoin es conocida como Blockchain o cadena de bloques.
Si leemos el documento original de Satoshi, vemos que no inventa nada nuevo. Todas las tecnologías y recursos tecnológicos que usa ya estaban inventados, la mayoría en el siglo XX. La gran innovación de Nakamoto fue aunar todas estas tecnologías en una sola aplicación, una forma de transferencia electrónica de valor.
El concepto original de blockchain es el de un libro de cuentas distribuido. Un libro de cuentas en donde se registran todas las transacciones desde un origen a un destino, firmando cada transacción con la fecha y hora de la ejecución para asegurar un orden cronológico del mismo. Este libro además es distribuido ya que cada nodo que pertenece a la red puede guardar una copia y verificarla para asegurar su autenticidad.
Pero... ¿por qué se llama Blockchain o cadena de bloques? Pues muy sencillo:
Bloques: las transacciones, a la hora de registrarlas en este libro de cuentas, se agrupan en paquetes o bloques. Cada nodo de minería trabaja con un grupo de peticiones de transacción hechas por usuarios de la red, las agrupa en un bloque y las envía a toda la red para que las acepten y se incluya en el registro. Además, con la creación de cada bloque se generan nuevos bitcoins como recompensa, que van a parar al nodo de minería que lo haya generado.
Cadena: cada bloque lleva una especie de clave o código alfanumérico que hace referencia al bloque anterior ya registrado en la red. De esta forma, el bloque nuevo queda vinculado al anterior y no hay manera de "quitarlo" en un futuro sin afectar a toda la red a partir de ese momento.
Simplificando, la idea sería la siguiente:
Si en la gráfica, donde el bloque X es el último bloque registrado, algún hacker o agente malicioso pretendiese cambiar el bloque X-2 (para registrar transacciones que realmente no se hicieron) debería modificar todos los bloques a partir de ese (es decir, los bloques X-1 y X). Por muy poco que se modifique el bloque X-2, afectará a la referencia que el Bloque X-1 tiene integrada, y a su vez ésta modificará a la referencia del Bloque X.
Esto obligaría al supuesto hacker a modificar todos los bloques a partir del que realmente quiere modificar. Y todo esto mientras, en paralelo, el resto de nodos de la red sigue creando bloques nuevos y añadiéndolos a la cadena, generando así una carrera casi imposible de ganar, ya que compite contra todos los nodos "honestos" de la red.
Ahora que tenemos una visión general de lo que es la blockchain de bitcoin, estamos preparados para dar un paso más y empezar a profundizar en los aspectos más técnicos de la tecnología.
Claves públicas y privadas
Las transacciones en bitcoin se hacen entre lo que se llaman direcciones. Las direcciones son números de registro equivalentes a la cuenta de un banco. En cada dirección puede haber o no fondos.
Para poder asegurar el acceso a los fondos de una dirección, se utiliza un sistema de clave pública y clave privada.
La clave pública se comparte para que quien quiera pueda enviar fondos a esa dirección. Si quieres que alguien te transfiera bitcoin, entonces le das tu clave pública y listo. Sería el equivalente a tu número de cuenta bancaria.
La clave privada es la que permite acceder a esos fondos y transferirlos a otra dirección. La clave privada sólo debes tenerla tú y no compartirla con nadie. Cualquier persona que tenga acceso a la clave privada de una dirección puede acceder a esos fondos y transferirlos a donde quiera. Sería el equivalente a tener el pin de acceso a la cuenta que tengas en un banco.1
Las claves públicas y privadas se relacionan entre sí mediante una función llamada Hash. El hash es una fórmula criptográfica que, a partir de una cadena de datos de cualquier longitud, devuelve una cadena alfanumérica de una longitud determinada.
Mediante esta función, se genera la clave pública a partir de la clave privada. Sabiendo la clave privada se puede saber la pública, pero no al revés. Esto se traduce en que tus fondos serán inaccesibles para cualquiera que no tenga la clave privada lo cual proporciona mucha seguridad ya que, a diferencia de los sistemas bancarios (donde alguien podría llegar a hackear su red y acceder a sus fondos), la clave privada no se puede hackear. La única manera de que alguien sepa tu clave privada —y por tanto pueda acceder a tus bitcoin— es que tú se la digas o que la tengas apuntada en algún sitio al que un tercero pueda acceder (tenerla apuntada en el móvil, en un sistema en la nube tipo dropbox, drive etc...).2
Cabecera de bloque
Con la creación de cada uno de los bloques mencionados anteriormente se registra la fecha y hora de creación del mismo. Esto se registra en la cabecera del bloque junto con otros datos vinculados a la creación del mismo. Además de la fecha y hora, hay otros datos incluidos en esta cabecera que deberás tener en cuenta:
- El valor alfanumérico llamado Nonce. Durante la explicación del concepto de Prueba de trabajo explicaremos la importancia de este dato.
- Un hash del bloque anterior. Este hash lo que hace es confirmar que el bloque anterior es correcto y que se acepta en la red. Los nodos validan el último bloque añadido a la red trabajando en el siguiente bloque con su hash. Como vemos, la función hash no solo se usa con las claves públicas y privadas, también se usa para vincular los bloques de la cadena entre sí.
Prueba de trabajo
La prueba de trabajo —o Proof of Work en inglés— es una de las características principales de la blockchain de Bitcoin y sobre la que se basa toda la seguridad de la red. Gracias a la prueba de trabajo la red se asegura su resistencia ante ataques de terceros que pretendan modificar en su propio beneficio las transacciones ya registradas. Además, con la prueba de trabajo se ajusta el nivel de dificultad de creación de bloques, con el objetivo de que cada bloque nuevo se genere más o menos cada 10 minutos. Esto se hace para ajustar la inflación de la moneda y evitar que se generen monedas demasiado rápido o demasiado lento.
La prueba de trabajo consiste en exigir una carga de cómputo más o menos alta a cada nodo que pretenda crear un bloque nuevo para la red. Dicha carga de cómputo se traduce en la necesidad de tener equipos informáticos de gran potencia y que consumen una gran cantidad de energía. Con el paso del tiempo las capacidades de cálculo de los ordenadores aumentan, el número de nodos de la red varía, aumentando o reduciendo la capacidad de cómputo de toda la red, lo que haría variar y mucho el tiempo que se tarda en crear cada bloque. De ahí la necesidad también de ajustar la dificultad para mantener la cadencia de creación de bloques en esos 10 minutos.
La clave de este ajuste está en el cálculo de ese dato Nonce que comentábamos en el punto anterior.
Para generar un bloque que vaya a ser considerado válido por la red es necesario que cumpla varias características. Una de ellas es el hash que relaciona dicho bloque con todos los anteriores.
En el momento que un nodo envía su propuesta de bloque a la red, el resto de nodos hacen, entre otras, una verificación muy importante, realizan un hash de ese bloque y ese hash debe cumplir una condición muy particular, debe empezar por una cantidad de ceros predeterminada en la red (6,7,8 ceros...).
¿Y cómo se asegura el nodo que propone el bloque que su bloque cumple esta condición? Básicamente probando con diferentes valores del dato Nonce y calculando su hash hasta que se cumpla dicha condición. Esta condición aumenta la dificultad de cálculo exponencialmente. Calcular un hash a partir de una serie de datos es fácil para cualquier ordenador, pero ir probando datos hasta que un hash cumpla una condición particular ya no lo es, obliga a hacer billones3 de intentos hasta que se llega a la solución. Esto es gracias a que las funciones hash tienen la característica de que, ante un pequeño cambio en los datos de entrada, el valor de salida cambia de forma radical.
Esto dota a la red de gran seguridad. Como ya comentamos, si un nodo malicioso pretende modificar una transacción de un determinado bloque ya minado, el hash de dicho bloque cambiará radicalmente y, por lo tanto, tendrá que calcular todos los hashes de todos los bloques siguientes de la red de nuevo. Esto mientras en paralelo el resto de nodos honestos de la red siguen creando bloques sobre la cadena principal.
Conclusiones
Bitcoin sentó las bases de una nueva forma de economía. Hasta nuestros días, la base de la economía era la confianza. Confianza en un tercero al que le prestas tu dinero a cambio de una rentabilidad. Confianza en que el banco donde guardas tu dinero hará las cosas bien y podrás disponer de tu dinero siempre que quieras.
Y para sostener esa confianza se han creado bancos centrales, entidades reguladoras, agencias de calificación de riesgo… Toda una estructura gigantesca con unos costes ocultos desmesurados para poder sostener esa confianza.
Pero ese sistema fracasa una y otra vez. Lo hemos visto en todas las crisis financieras:
Entidades que engañan a sus clientes ofreciéndoles productos de un riesgo que no conocen.
Entidades sobreapalancadas para generar unos beneficios insostenibles y que, en cuanto las condiciones macroeconómicas se tuercen un poco, se van a la quiebra.
Corralitos, países con inflaciones galopantes que en cuestión de meses hacen desaparecer el ahorro de años de sus ciudadanos.
Bitcoin viene a solucionar esto.
Donde el sistema tradicional introduce intermediarios, Bitcoin ofrece un sistema sin necesidad de confianza.
Donde el sistema tradicional sólo ofrece opacidad y oscurantismo, Bitcoin ofrece una red abierta con todas las transacciones visibles y auditables.
Donde el sistema tradicional ofrece centralización y el control central del dinero y su valor, Bitcoin ofrece la autocustodia, ser cada uno dueños reales de nuestro dinero.
Bitcoin es una revolución. Es algo que a día de hoy ya es imparable. No cambiará el sistema financiero de la noche a la mañana, pero influirá en él (ya lo está haciendo) y dentro de unos años, igual que nos pasa con internet, será parte indispensable en nuestras vidas.
Disclaimer: no soy asesor de inversión y por tanto no tengo permitido legalmente dar consejos sobre ello. Este artículo es meramente informativo y refleja mi opinión, la cual, como cualquier opinión, es sesgada. Haz tu propia investigación antes de poner tu dinero a funcionar y, si así lo consideras, acude a un asesor financiero.
De ahí la famosa frase de “Not your keys, not your coins”. Si no tienes la clave privada, entonces es que tus monedas no son realmente tuyas. Esto hace clara referencia a los tan extendidos Exchanges Centralizados. Dichas empresas te ofrecer comprar y vender criptomonedas en sus plataformas, pero realmente esas criptomonedas están en direcciones propiedad del exchange y tus fondos dependen del buen hacer de ellos, que custodien las claves correctamente (ya se han visto bastante hackeos de exchanges con robos de fondos) y que realmente no hagan nada que no deban con tus fondos (por ejemplo invertir con ellos sin tu permiso, algo que desgraciadamente ya hemos visto).
Teóricamente sí se podría saber, pero requeriría una capacidad de computación tan grande que a día de hoy se tardarían cientos de años en conseguir descifrar una clave privada a partir de su clave pública.
Sí, billones (europeos) o trillones (americanos).