Tecnología Blockchain
Overview
- Type: blockchain, cadena de bloques
Que es la tecnología blockchain?
Explicado en forma sencilla y concisa el BlockChain o Cadena de Bloques es un registro de hechos, algo así como un libro mayor de contabilidad, el cual es reproducido a través de varias computadoras, conectadas peer to peer a una red. Los hechos pueden ser desde transacciones monetarias hasta firmas de contratos. Los miembros de la red son individuos anónimos los cuales son llamados nodos. Las comunicaciones que suceden en la red son aseguradas con criptografías para que de manera segura se identifique al que envía y al que recibe. Cuando un nodo quiere agregar un hecho al libro o registro, se forma un consenso en la red para determinar donde debería aparecer el hecho en el registro, este consenso es llamado block o bloque.
Como se piden los hechos?
Redes descentralizadas de peer to peer no son nada nuevo. Napster y BitTorrent son ejemplos de redes P2P. La diferencia es que en vez de intercambiar películas, los miembros de la red de blockchain intercambian hechos.
Redes P2P, como otros sistemas distribuidos, deben resolver un problema complejo relacionado a sistemas de cómputo: la resolución de conflictos o reconciliación. Las bases de datos relacionales ofrecen integridad referencial pero no existe lo mismo en sistemas distribuidos. Si dos hechos incompatibles llegan al mismo tiempo, el sistema debe tener reglas para determinar cual de los hechos es considerado válido.
Tomemos como ejemplo el problema de gastar doble: Ana tiene $10, y ella envía 2 veces $10 a Pedro y a Juan. Quién obtendrá los $10 eventualmente? Para responder a esta pregunta, la mejor forma es ordenando los hechos. Si dos hechos incompatibles llegan a la red, el primero en ser registrado es el que ganará.
En una red P2P, dos hechos enviados casi al mismo tiempo pueden arribar en ordenes en nodos distantes. Como entonces la red se pone de acuerdo en el primer hecho? Para garantizar la integridad sobre las redes P2P, es necesario un mecanismo para hacer que todos acuerden en la forma de orden de los hechos. Es necesario un sistema de consenso.
Algoritmos de consenso para sistemas distribuidos es un campo muy activo de investigación. Seguramente ha escuchado sobre Paxos o Algoritmos Raft. El blockchain implementa otro algoritmo, el consensus de prueba de trabajo, usando los bloques.
La Manera mas sencilla de entender el BlockChain es mirarlo desde diferentes perspectivas:
Que hace: Un BlockChain o una Cadena de Bloques permite que los datos sean procesados y/o compartidos entre varias partes sobre una red de partes que no tengan confianza. Los Datos pueden consistir de cualquier cosa, pero los usos mas interesantes tienen que ver con la información que en la actualidad requiere una tercera parte que garantice el intercambio. Como ejemplos puede ser, Dinero (Requiere de un banco), una prueba de propiedad (requiere de un abogado), un certificado de préstamo, etc. En conclusión el blockchain remueve la necesidad de tener una tercera parte como garantía.
Cómo funciona desde el aspecto técnico?
El Blockchain es una innovación que esta basada en 3 conceptos: redes peer-to-peer, public-key cryptography, y un consenso distribuido basado en la resolución de problemas matemáticos aleatorios. Ninguno de estos tres conceptos es nuevo. Es la combinación de los mismos que permite un novedoso sistema. No todo el mundo tiene la capacidad de crear un sistema blockchain, muy pocas personas en el mundo, pero el hecho de que sea un sistema complejo no nos previene a que no podamos usarlo.