¿Qué es la Blockchain?
Una blockchain es un tipo de base de datos especial, en la que los datos sólo pueden ser añadidos (y no eliminados o modificados). Fiel a su nombre, una blockchain se parece a una cadena de bloques; que es como llamamos a los fragmentos de información que se añaden a la base de datos. Cada bloque presenta un indicador que apunta al bloque que lo ha precedido y; generalmente, contiene cierta combinación de información transaccional, sellos temporales (timestamps), así como otros metadatos para confirmar su validez.
Debido a que están vinculadas de esta forma, las entradas no pueden ser editadas, borradas o modificadas en modo alguno; ya que esto invalidaría todos los bloques que las suceden.
¿Cómo Funciona una Blockchain?
Una blockchain puede parecer un tanto insignificante llegado este punto; y puede que te preguntes que tipo de ventajas ofrece este sistema respecto a una hoja de cálculo convencional. En lo que las blockchains despuntan es permitiendo a los usuarios coordinarse en torno a una fuente de verdad compartida, sin necesidad de confiar los unos en los otros. Con una red distribuida, no hay un único actor que pueda adueñarse de una blockchain sólida.
Para ejecutar y verificar de un modo independiente el estado de una blockchain, el usuario debe descargarse un software específico. Una vez listo y en funcionamiento en el equipo del usuario; dicho software interactúa con instancias de otros aparatos, con el objetivo de cargar/descargar información (como por ejemplo transacciones o bloques). Un nuevo usuario descarga un bloque, comprueba que haya sido creado siguiendo las reglas del sistema y transmite esta información a sus pares.
Lo que tenemos entonces es un ecosistema que puede estar compuesto por cientos, miles o decenas de miles de entidades; todas ellas ejecutando y sincronizando una copia idéntica de la base de datos (a estas entidades las denominamos nodos). Esto hace que sea altamente redundante y esté disponible en todo momento.
¿Cómo se Añade la Información a una Blockchain?
La integridad de una blockchain se ve socavada si una información financiera falsa puede ser registrada. Al mismo tiempo, no hay un administrador o líder del sistema distribuido que mantenga el «ledger» (libro mayor contable). Así que, ¿cómo nos aseguramos de que los participantes estén actuando de un modo honesto?
Minería
Satoshi propuso un sistema Proof-of-Work, que permitía a cualquiera proponer un bloque para ser añadido a la red. Para proponer un bloque, se debería sacrificar potencia computacional para adivinar la solución a un problema propuesto por el protocolo (lo que implica un hashing repetido de los datos hasta producir un número que caiga debajo de un valor particular).
A este proceso lo llamamos minería. Si el minero adivina correctamente la solución, el bloque que ha construido (compuesto por transacciones no confirmadas, enviadas a él por sus pares) extenderá la cadena. Como resultado, recibirá una recompensa denominada en el token nativo de la blockchain.
Hashing
Hacer hashing con una función unidireccional significa que con un output dado, resulta virtualmente imposible adivinar el input. Ahora bien, si se dispone del input, verificar el output es una tarea trivial. De esta forma, cualquier participante puede verificar que el minero haya producido un bloque «correcto» y rechazar aquellos que sean inválidos. En este caso, el minero no recibirá ninguna recompensa -por lo que, al tratar de forjar un bloque inválido, habrá malgastado capital.
En los sistemas de criptomonedas, la dependencia de la criptografía de clave pública/privada también garantiza que las partes no puedan gastar fondos que no posean. Las monedas están ligadas a claves privadas (conocidas solamente por los propietarios), y sólo una firma válida que certifique su movimiento permite que sean gastadas.
Alternativas a Proof-of-Work
Proof-of-Work es el esquema para alcanzar consenso entre usuarios que más han sido testeados, pero no es, en modo alguno, el único. Alternativas como Proof-of-Stake están siendo exploradas cada vez más, sin embargo, todavía se espera una adecuada implementación de las mismas en su forma auténtica (a pesar de que mecanismos de consenso híbridos existen desde hace cierto tiempo).
¿Quién Inventó la Blockchain?
La idea básica que subyace al concepto de una cadena de datos inmutable se remonta a inicios de los 90. Los investigadores W. Scott Stornetta y Stuart Haber publicaron un artículo titulado «How to Time-Stamp a Digital Document», que discutía prácticas eficientes de sellado temporal (timestamping) de archivos, para que éstos no pudieran ser editados o falsificados.
Sin embargo, el enfoque de Stornetta y Haber era imperfecto, ya que seguía dependiendo de la confianza en terceros para su implementación. La tecnología Blockchain incorpora innovaciones de otros científicos computacionales, siendo Satoshi Nakamoto el considerado como padre del sistema descrito previamente.
¿Qué Pueden Hacer las Blockchains?
Las criptomonedas eran sólo la punta del iceberg. Tras la aparición del dinero descentralizado, muchos vieron el potencial existente para la computación descentralizada. Del mismo modo que la primera generación de blockchains -como Bitcoin- introdujo la base de datos de transacciones compartida; los exponentes de segunda generación, como Ethereum, trajeron consigo los smart contracts. Estos últimos son programas que se ejecutan en blockchains para gestionar el movimiento condicional de tokens.
Con los smart contracts, ningún servidor central ejecuta el código; lo que significa que el punto central de falla en el nivel de alojamiento se desintermedia. Los usuarios pueden auditar el software (dada su disponibilidad pública), y los desarrolladores pueden diseñar contratos de tal manera que no puedan cerrarse o modificarse.
Aplicaciones Para Blockchains
Algunas aplicaciones para blockchains pueden incluir:
- Criptomonedas: las monedas digitales son un medio tremendamente poderoso para la transferencia de riqueza sin un solo punto de falla, sin guardianes y sin intermediarios. Los usuarios pueden enviar y recibir fondos a sus pares en todo el mundo en una fracción del tiempo (y a menudo a una fracción del costo) que se necesitaría para que se establezca una transferencia bancaria. Las monedas no se pueden confiscar y las transacciones no se pueden revertir ni congelar.
- Pagos condicionales: Alice y Bob no confían el uno en el otro, pero desean apostar por el resultado de un partido deportivo. Ambos envían 10 ETH a un smart contract, que se alimenta de datos a través de un oráculo. Al final del partido, el contrato evalúa qué equipo ha ganado y paga los 20 ETH al equipo ganador.
- Datos distribuidos: las blockchains enfrentan algunos problemas de escalabilidad, pero pueden integrarse con medios de almacenamiento distribuidos para la administración de archivos. Los controles de acceso se pueden administrar a través de un contrato inteligente, mientras que los datos se alojan en un contenedor fuera de la cadena.
- Valores: aunque introducen un cierto riesgo de contraparte; se cree que los tokens de seguridad basados en blockchain son una mejora muy necesaria para el sector financiero. Inyectan nueva liquidez y portabilidad en el espacio de seguridad actual y permiten la tokenización de activos (como propiedad o patrimonio).
¿Para Qué se Utiliza la Blockchain?
La tecnología Blockchain se adapta a una amplia gama de casos de uso. A continuación, encontrarás algunos usos:
- Cadenas de suministro: las cadenas de suministro eficientes son el núcleo de muchas empresas exitosas y se preocupan por el manejo de bienes desde el proveedor hasta el consumidor. Sin embargo, la coordinación de múltiples partes interesadas en una industria dada ha resultado tradicionalmente difícil. Usando la tecnología blockchain, un ecosistema interoperable que gira en torno a una base de datos inmutable podría brindar nuevos niveles de transparencia a innumerables industrias.
- Gaming: los jugadores están a merced de las empresas que controlan los servidores. No existe una propiedad real en lo que respecta al usuario final, y los activos en el juego existen únicamente dentro de los parámetros de un título dado. Al optar por un enfoque basado en blockchain, los usuarios serían dueños de sus activos (en forma de tokens fungibles / no fungibles) y obtendrían la capacidad de transferirlos entre juegos o mercados.
- Cuidado de la salud: la transparencia y la seguridad de la tecnología blockchain lo convierten en una plataforma ideal para almacenar registros médicos. El panorama médico (compuesto por hospitales, clínicas y otros proveedores de servicios de salud) está increíblemente fragmentado, y la dependencia de servidores centralizados deja la información confidencial en una posición vulnerable. Al proteger criptográficamente sus registros en una blockchain; los pacientes mantienen su privacidad, al tiempo que pueden compartir trivialmente la información con cualquier institución que acceda a una base de datos global.
- Remesas: enviar dinero internacionalmente es una molestia con la banca tradicional. Las tarifas y los tiempos de liquidación hacen que sea costoso y poco confiable para transacciones urgentes, debido principalmente a una red intrincada de intermediarios. Las criptomonedas y las blockchains eliminan este ecosistema de intermediarios; y una variedad de proyectos actualmente están aprovechando la tecnología para permitir transferencias rápidas y baratas.
- Identidades digitales: el mundo necesita urgentemente una solución de identidad para la era digital. Las identidades físicas son susceptibles de falsificación y no están disponibles para muchas personas. Una llamada «identidad auto soberana» se anclaría en un ledger de blockchain y se vincularía con su propietario; que podría revelar selectivamente información sobre ellos mismos a terceros, sin sacrificar su privacidad.
Otros Usos de la Blockchain
- Internet of Things: algunos especulan que la creciente lista de dispositivos físicos conectados a Internet podría aumentarse significativamente con la tecnología blockchain, tanto en entornos domésticos como industriales. Se cree que la proliferación de estos dispositivos requerirá una nueva economía de pagos de «máquina a máquina» (o M2M); que requiere un sistema capaz de alto rendimiento para micropagos.
- Gobernanza: dado que las redes distribuidas implementan su propia forma de regulación, no es sorprendente que puedan tener aplicaciones en la desintermediación de los procesos de gobernanza a nivel local, nacional o incluso internacional. La gobernanza de Blockchain garantiza que todos los participantes puedan participar en la toma de decisiones y proporciona una visión general transparente de las políticas que se están implementando.
- Caridad: las organizaciones caritativas a menudo se ven obstaculizadas por las limitaciones sobre cómo pueden aceptar fondos. La «cripto-filantropía» se refiere al uso de la tecnología blockchain para sortear estas limitaciones. Confiando en las propiedades inherentes de la tecnología para garantizar una mayor transparencia, participación global y gastos reducidos, el campo emergente busca maximizar el impacto de las organizaciones benéficas.
Conclusión
Las blockchains públicas son sistemas sin permiso, lo que significa que no hay que realizar ningún procedimiento de autenticación antes de poder participar. Con Bitcoin y otras criptomonedas, el usuario solo necesita descargar software de código abierto para unirse a la red.
Dada la accesibilidad de estos ledgers, es increíblemente difícil prohibir la participación y es casi imposible que toda la red se desconecte. Dicha accesibilidad los convierte en una herramienta atractiva para usuarios de todo tipo. Si bien sus aplicaciones más populares se encuentran en las transacciones financieras, hay muchos otros sectores donde su implementación puede ser beneficiosa en el futuro.
28 comentarios en «Guía para Principiantes sobre Tecnología Blockchain»