Parte 5: Analizamos la tecnología Blockchain(Introducción)
Hasta la introducción del Bitcoin, la transmisión de dinero de manera digital requería de la intervención de una tercera parte. La mayor disrupción que Bitcoin ha sido capaz de conseguir es la de permitirnos realizar pagos de manera digital sin la intermediación de una tercera parte (por ej.: un banco) de manera fácil, rápida, segura y barata. En este apartado veremos cómo funciona por dentro dicho sistema.
Bases de datos centralizadas
La forma mas directa de intentar darle valor-digital a algo es la tratando de darle un cierto valor a un determinado patrón de datos, que es ni mas ni menos que una cadena de unos y ceros. El problema de esta aproximación es que los datos digitales son fácilmente replicables y a coste cero, de hecho. Esto nos vuelve a llevar al problema del “doble-gasto”, tal y como se muestra en la siguiente figura:
Digamos que Bob tiene 1€ digital, que a su vez puede ser representado de manera binaria así “0101010”. Bob puede transmitir este valor a Tom, mediante un mensaje con este numero “0101010”, además de poder hacerlo a través de una copia a Alice o a Sam, ya que nadie nos impide realizar copias infinitas de este euro digital y nadie puede impedirnos gastarlos a placer.
Por ello, el valor digital no puede venir representado únicamente a través de un numero debido a que los datos digitales son fácilmente replicables por lo que dicho euro digital, si puede ser replicado cuantas veces queramos, carecerá de valor. El sentido común nos dice que para que algo posea valor, este debe de ser un bien escaso. El reto entonces esta en como crear escasez usando algo puramente digital que nos permite copiar a placer la información.
El siguiente paso a la creación de un sistema de pagos digital es el de crear una base de datos central que albergue en ella una lista de miembros con sus respectivos fondos, tal y como se muestra en la siguiente imagen:
Partiendo del esquema superior, que es como funciona las transacciones a través de una base de datos centralizada. Tom, puede transferir una unidad de dicha divisa, llamemoslo token, representado por el numero “010101010101" a Bob. Tom contacta con el servidor que maneja la base de datos central y solicita la transferencia del token a Bob. El servidor actualiza la base de datos y el token antes perteneciente a Tom, ahora pertenece a Bob. En el caso de que Tom quisiera hacer “doble-gasto” enviándole el mismo token con número “010101010101” a Sam, el servidor central rechazaría dicha transferencia debido a que Tom ya no dispone de dicho token al haberlo transferido previamente a Bob.
Una base de datos centralizada, de hecho, resuelve el problema del “doble-gasto”. A pesar de ello, hay muchos problemas asociados al manejo y delegación en una base de datos central que hay que sopesar. La desventaja más obvia es que todos los usuarios, para ser partícipes de dicho sistema de transferencias y poder enviar o recibir dichos tokens, deben registrarse en el servidor central. Así, el servidor central es conocedor de todos y cada uno de los datos personales, fondos y actividad de todos y cada uno de sus usuarios. Si un atacante, interno o externo se apodera del control de la base de datos central, podrá cambiar a placer los fondos de dueño, robándoselos a sus legítimos dueños o incluso crear nuevos tokens cuando quiera ya que posee todas las herramientas de control y asignárselos a si mismo.
Quizás el mayor fallo de un servidor central es que es muchísimo mas vulnerable al ser un único punto al que hay que atacar. Dos claros ejemplos podrían ser Liberty Reserve (2013) y e-gold (2009).
Similitudes entre Bitcoin y BitTorrent: