Skip to content

Latest commit

 

History

History
68 lines (56 loc) · 3.74 KB

Blockchain.md

File metadata and controls

68 lines (56 loc) · 3.74 KB

Blockchain

Se ha escrito mucho sobre blockchain, como cadena de bloques, y es que en esencia es eso: una serie de bloques encadenados. Las preguntas que surgen son: ¿qué es un bloque? ¿qué contiene? ¿cómo se crean? ¿dónde se almacenan?

Bueno, muchas preguntas, pero veamos algunas características.

Primero, hoy hay muchas blockchain. Si bien la más conocida puede ser Bitcoin, también existen Ethereum, EOS, Iota, Cardano,... Y aún cada una de éstas tiene proyectos derivados: por ejemplo, en Ethereum tenemos Celo, RSK,...

Segundo, en general son públicas, pero no siempre es el caso. Esto significa que los bloques que componen una blockchain pública, como Bitcoin o Ethereum, están disponibles en la red para que cualquier programa o ser humano pueda acceder a sus datos y examinarlo. No hay bloques "ocultos" en este tipo de blockchain. Si bien hay motivaciones para tener una blockchain privada (por ejemplo, dentro de un consorcio de empresas, conteniendo información confidencial) no es en general el tipo de blockchain que vamos a tratar en estas notas. Incluso si Ud. alguna vez necesita trabajar y programar con una blockchain privada, lo más probable es que esa blockchain sea un trabajo derivado de alguna versión pública.

Tercero, de nuevo en general, los bloques contienen transacciones. No es una condición necesaria, pero es el principal caso de uso. Una transacción describe un movimiento de criptomoneda. Eso traslada a la pregunta: ¿qué es una criptomoneda? La respuesta simple e incompleta: es un activo digital (no físico) que representa un valor, y en el caso de estas transacciones, es la criptomoneda asociada a la blockchain. En Bitcoin, tenemos valores Bitcoin, mientras que en Ethereum la unidad de valor es el Ether. Lo que ha creado Bitcoin, y luego otras blockchains, es la capacidad de CREAR e INTERCAMBIAR estos valores digitales, pero sin perder nunca de vista quién es el "dueño" que controla su intercambio. Eso contrasta con otros objetos digitales (como puede ser una foto digitalizada) que puede ser copiada e intercambiada sin límite aparente. Esa es la gran innovación de las blockchains, en especial Bitcoin: haber creado un activo digital que se conserva y no puede ser adulterado o falsificado, creando entonces una Internet del Valor que permite construir un nuevo sistema financiero. De nuevo, no es que sea necesario tener asociada una criptomoneda a cada blockchain (podría manejar simples transacciones de datos) pero es de lejos el uso más difundido y que hace que las blockchains estén siendo cada vez más populares.

Con respecto al tema de estas notas, la programación que espero comentar está asociada con esas transacciones, pero en particular, con transacciones de la red Ethereum o similares. Esta programación permite agregar lógica a las transferencias de valor: un usuario puede transferir un valor a un contrato de lotería, por ejemplo, y luego recibir un premio si acierta en su apuesta. Eso es sólo el comienzo: se pueden crear otros activos digitales (tokens en general) que pueden funcionar como "acciones" o monedas con valor que pueden manejarse (comprar, vender, intercambiar) creando un nuevo sistema financiero.

Cuarto: la blockchain no para, sigue ejecutándose a cada minuto, en cada uno de sus nodos, alrededor del mundo.

Quinto: lo que entra en la blockchain queda en la blockchain. Tenemos que discutar cuando "entra" realmente una información, pero una vez que está en la blockchain, ya no es posible perderla.

TBD (To Be Done)

  • Completar los temas
  • Poner los enlaces a los proyectos
  • Referencias a tutoriales sobre qué es una blockchain
  • Diagrama con cadena de bloques
  • Diagrama con cadena de bloques con ramas alternativas