Software
Desarrollo
Blockchain

Guía rápida de 'blockchain'

Blockchain es un sistema distribuido que logra la seguridad mediante la criptografía y el consenso, sin depender de la confianza. La innovación que supone es impresionante.

blockchain

Hay una tendencia tecnológica que podría resultar aún más tectónica y duradera que la computación en la nube: blockchain (cadena de bloques). Mientras que la nube desafía la forma en que construimos el software y modifica la forma en que operamos los negocios, la tecnología blockchain altera potencialmente la forma en que pensamos y procesamos las transacciones en sí. Más allá de servir como base para la criptomoneda, blockchain podría influir de manera fundamental en la forma en que proponemos y registramos los acuerdos.

Se ha hablado mucho de la naturaleza revolucionaria de blockchain y de las criptomonedas y, realmente, es algo sujeto a la exageración. Sin embargo, al contemplar cómo podrían incidir en el futuro los desarrollos tecnológicos actuales, es difícil identificar otra creación con más posibilidades de impactar en la evolución del mercado. Blockchain puede ser la innovación más importante desde Internet. Entonces, ¿qué es la cadena de bloques y por qué puede cambiar la historia?

 

La verdad del consenso

Construir sistemas de software distribuido es difícil. El núcleo de esta dificultad son los datos: protegerlos, hacerlos disponibles, almacenarlos. Aunque gran parte de la dificultad proviene de los seres humanos que intentan engañar al sistema, también existe una dificultad objetiva inherente para superar los fallos y mantener la consistencia de los datos (por ejemplo, véase el teorema CAP). Cada vez que se envían o recuperan datos (ya sea un mensaje sobre tu almuerzo o el saldo de tu cuenta bancaria) están sujetos a estos peligros.

En el caso de algo importante, como tu cuenta bancaria, la forma tradicional de hacer que los datos sean seguros y precisos es a través de un agente de confianza, por ejemplo, el banco. La versión distribuida de la banca ha sido hasta ahora un injerto de las prácticas tradicionales en Internet. Se confía en el banco para que persista y recupere nuestra información financiera.

Las limitaciones de este acuerdo se explican en el libro blanco de Bitcoin que desencadenó el maremoto de las criptomonedas. (El documento fundacional de la criptodivisa, este documento de Satoshi Nakamoto resume el estado de la técnica y propone la primera red pública de blockchain en el mundo real). Las críticas de Satoshi a las "debilidades inherentes del modelo basado en la confianza" se vinculan al hecho de que "no son posibles las transacciones no reversibles". Dicho de otro modo: los bancos tienen que estar en la posición de mediar en las disputas, lo que hace que la confianza se extienda y los costes aumenten.

En realidad, para un libro blanco que describe una alternativa en toda regla a la banca tradicional, esta crítica es bastante moderada. La mayoría de nosotros podría encontrar fácilmente otros problemas: las comisiones sorpresa y la interacción con estructuras corporativas bizantinas, para empezar. Además, las estructuras ofrecen importantes obstáculos a la participación en el sistema financiero de los agentes privados de derechos.

El documento de Bitcoin propone un "sistema de pago electrónico basado en la prueba criptográfica en lugar de la confianza".

 

Firma criptográfica

El mecanismo central de una red de este tipo son los pares criptográficos utilizados para firmar las transacciones. Los propietarios de la moneda electrónica (o más generalmente, de un estado digital) firman sobre la moneda (o el estado) a los compradores con su clave pública y se verifican con su clave privada. Cada transacción lleva también un hash de la transacción anterior y la clave pública del propietario.

 

El doble gasto y blockchain

Si todos los participantes de la red actuaran de buena fe, las cadenas de transacciones ya serían seguras (es decir, el sistema estaría a salvo de manipulaciones directas externas gracias a la firma criptográfica). El punto débil es que los propietarios de la moneda podrían engañar al sistema gastando la moneda más de una vez. Un comprador no tiene forma de saber si la moneda que compra ya ha sido gastada.

Resolver este problema sin recurrir a una autoridad central no es trivial. Requiere que todos los participantes en la red conozcan todas las transacciones y su orden de ocurrencia. Si pudiéramos conseguirlo, los nodos podrían aceptar sólo la primera instancia de una transacción y descartar las demás como fraudulentas. El mecanismo para conseguirlo es la cadena de bloques (blockchain).

La idea central es que las transacciones se reúnen en un conjunto (un "bloque") y los nodos gastan trabajo tratando de lograr un valor difícil de calcular (un nonce que cuando se hace hash produce un valor con un cierto número de ceros a la izquierda). Cada bloque también hace referencia al hash del bloque anterior. Esta configuración significa que las transacciones se aceptan en bloques que se verifican con esfuerzo computacional, y que cada nuevo bloque crea una cadena más larga de dicho trabajo.

 

Ataque del 51%

Para engañar a este sistema, se necesitaría rehacer todo el trabajo de la cadena, lo que es cada vez menos probable a medida que la cadena crece.

El nombre para intentar superar la cadena legítima de bloques es un ataque del 51%. La idea es que un atacante obtenga más de la mitad de la potencia computacional que participa en el sistema y la utilice para validar transacciones falsas. A medida que blockchain crece, esto se vuelve más difícil, e incluso si se logra, ofrece capacidades limitadas.

 

Almacenamiento optimizado

Un hecho sorprendente de este árbol de nodos es que toda la cadena (que representa una capitalización de mercado cercana al billón de dólares) se almacena en cada sistema informático participante. Esto es posible gracias a un diseño inteligente. Un mecanismo central para ello es el uso de un árbol de Merkel, que permite al sistema almacenar sólo la raíz y las hojas relevantes de la cadena.

 

La verdad del consenso

Mientras cada nodo trabaja para validar su bloque de transacciones, los demás nodos hacen lo mismo. Si un nodo determinado recibe un bloque competidor de la red, guarda ese bloque en una cadena competidora y continúa trabajando en su propia cadena. Si el nodo recibe suficientes bloques nuevos en la cadena competidora, descarta su trabajo y acepta la cadena competidora como la verdadera. Si el nodo actual termina su trabajo antes de que se confirme la cadena competidora, el nodo actual difunde su esfuerzo a la red. Los demás nodos se comportan de la misma manera con respecto a la validación de esa afirmación.

De este modo, la red acepta inevitablemente el trabajo del mayor número de nodos, votando en cierto modo por una versión consensuada de la verdad, respaldada por el trabajo computacional que requieren los hashes.

 

Minería y acuñación

La actividad de la minería es muy publicitada, ya que ha adquirido una importancia geopolítica. Pero, ¿qué es? Con nuestra comprensión de la cadena de bloques hasta ahora, podemos describirla claramente.

Cuando un nodo consigue validar su bloque (obteniendo un buen hash y demostrando a la red que es el primer bloque nuevo válido en la cadena), recibe una nueva moneda de su propiedad. Esto es la minería. La moneda sirve de incentivo para que el sistema participe en el proceso de minería.

 

Seguridad sin confianza

El principal logro de la cadena de bloques es la seguridad de una red que funciona con nodos que son propiedad de todos. Parece contradictorio, pero el sistema funciona haciendo suposiciones no sólo sobre la criptografía, sino sobre el comportamiento humano. Que un sistema ampliamente distribuido y controlado por (seamos francos) seres humanos poco fiables funcione de forma segura es impresionante.

Una vez demostrada la funcionalidad de este sistema por Bitcoin, la explosión de nuevas monedas digitales ha sido notable. Una moneda digna de mención es Ether, creada por Ethereum, una empresa que propone colocar un ordenador completo de Turing sobre una cadena de bloques similar a la de Bitcoin. Y hay muchas otras.

En el caso concreto de las monedas, la banca tradicional continuará sin duda en gran medida tal y como está, y los intereses arraigados en el sistema financiero trabajarán para obtener ventajas dentro del sistema de criptomonedas. Ya se han movilizado para introducir sus propias monedas.

Quizás la promesa que más ha cambiado la historia de los sistemas de blockchain es que la humanidad puede haber dado con un método para llegar a un consenso para los participantes conectados a distancia. Esta capacidad tiene implicaciones de gran alcance, difíciles de especificar en detalle, pero fáciles de predecir en general.

Hay, por supuesto, desafíos. Por un lado, la extrema volatilidad de los mercados de criptomonedas hace que sea difícil predecir los valores de las mismas (las stablecoins se han introducido por esta razón). Por otro lado, la programación de la cadena de bloques es difícil. Por último, los intereses arraigados en el sector financiero y otros sectores se resisten a blockchain.

En conjunto, la tecnología blockchain es una innovación asombrosa y un mundo fascinante a observar.



Contenido Patrocinado

Forma parte de nuestra comunidad

 

¿Te interesan nuestras conferencias?

 

 
Cobertura de nuestros encuentros
 
 
 
 
Lee aquí nuestra revista de canal

DealerWorld Digital