Blockchain es una pieza de software diseñada para crear bases de datos descentralizadas. El sistema es completamente de "código abierto", lo que significa que cualquier persona puede ver, editar y proponer cambios a su base de código subyacente.
Si bien se ha vuelto cada vez más popular gracias al crecimiento de Bitcoin, en realidad ha existido desde 2008, por lo que tiene alrededor de una década de antigüedad (antigua en términos informáticos).
El punto más importante sobre "blockchain" es que fue diseñado para crear aplicaciones que no requieren un servicio central de procesamiento de datos. Esto significa que si está utilizando una compilación encima del sistema (es decir, Bitcoin), sus datos se almacenarán en miles de servidores "independientes" de todo el mundo (que no pertenecen a ningún servicio central).
La forma en que funciona el servicio es creando un "libro de contabilidad". Este libro permite a los usuarios crear "transacciones" entre ellos, teniendo los contenidos de esas transacciones almacenados en nuevos "bloques" de cada base de datos "blockchain".
Según la aplicación que crea las transacciones, se deben cifrar con diferentes algoritmos. Debido a que este cifrado utiliza la criptografía para "codificar" los datos almacenados en cada nuevo "bloque", el término "criptografía" describe el proceso de proteger criptográficamente cualquier nueva cadena de bloques de datos que una aplicación pueda crear.
Para comprender completamente cómo funciona, debe entender que "blockchain" no es una tecnología nueva, solo usa la tecnología de una manera ligeramente diferente. El núcleo de este es un gráfico de datos conocido como "árboles merkle". Merkle trees son esencialmente formas en que los sistemas informáticos almacenan "versiones" cronológicamente ordenadas de un conjunto de datos, lo que les permite administrar actualizaciones continuas de esos datos.
La razón por la cual esto es importante es porque los sistemas de "datos" actuales son lo que podría describirse como "2D", lo que significa que no tienen forma de rastrear las actualizaciones del conjunto de datos central. La información se mantiene básicamente tal como está, con las actualizaciones aplicadas directamente. Aunque no hay nada de malo en esto, sí plantea un problema, ya que significa que los datos deben actualizarse manualmente o es muy difícil actualizarlos.
La solución que proporciona "blockchain" es esencialmente la creación de "versiones" de los datos. Cada "bloque" agregado a una "cadena" (una "cadena" es una base de datos) proporciona una lista de nuevas transacciones para esos datos. Esto significa que si puede vincular esta funcionalidad a un sistema que facilite la transacción de datos entre dos o más usuarios (mensajes, etc.), podrá crear un sistema completamente independiente.
Esto es lo que hemos visto con el activo Bitcoin. Contrariamente a la creencia popular, Bitcoin no es una "moneda" en sí misma; es un libro público de transacciones financieras.
Este ledger público está encriptado para que solo los participantes en las transacciones puedan ver / editar los datos (de ahí el nombre "crypto")... pero más aún, el hecho de que los datos están almacenados y procesados por miles de servidores en todo el mundo significa que el servicio puede operar independientemente de cualquier banco (su principal atractivo).
Obviamente, aparte de los problemas con la idea subyacente de Bitcoin, etc., la base del servicio es que básicamente es un sistema que funciona a través de una red de máquinas de procesamiento (llamadas "mineros"). Todos ejecutan el software "blockchain" y trabajan para "compilar" nuevas transacciones en "bloques" que mantienen la base de datos de Bitcoin lo más actualizada posible.
Si bien muchas personas han prometido ciegamente un soporte seguro para blockchain, en realidad tiene una serie de vulnerabilidades, en particular, que se basa casi por completo en los algoritmos de cifrado empleados por sus diversas aplicaciones. Si uno de estos algoritmos falla o los usuarios se ven comprometidos de alguna manera, toda la infraestructura de la "cadena de bloques" podría sufrir ataques como resultado.
Excellent post!