¿Has oído alguna vez hablar sobre el bitcoin?
Esta es una de las llamadas criptomonedas, la primera acuñada y la que domina el mercado, y es básicamente una moneda virtual. En marzo de 2021, un bitcoin ha llegado a valer alrededor de los 50 mil euros.
Las criptomonedas se han estado volviendo muy populares en algunos círculos. Pero no ahora, ya son muchos años desde que se volvieron mainstream. Un ejemplo es, que se está volviendo difícil encontrar tarjetas gráficas, ya que hay mucha gente comprando GPUs para poder minar criptomonedas como el bitcoin.
Pues bien, las criptomonedas funcionan sobre una tecnología llamada blockchain. Y los blockchains no sólo se usan para crear bitcoins, sino que también tienen otros tipos de usos.
En este artículo, te enseñaremos lo que es el blockchain, y te diremos algunas de sus aplicaciones.
Tabla de Contenido
¿Qué es el blockchain?
Un blockchain es un tipo de base de datos. Así como puedo tener varias bases de datos para distintos usos, también puedo tener varios blockchains.
Hay muchas similitudes entre un blockchain y el resto de los tipos de bases de datos. Sin embargo, una de las diferencias es que en la mayoría de las bases de datos, los datos se guardan en tablas, mientras que en un blockchain, los datos se guardan en «bloques» (o pedazos), y se unen a una cadena.
Otra diferencia entre los blockchains y las bases de datos comunes y corrientes es en la forma en que almacenan sus datos en servidores.
Normalmente, las bases de datos, sobre todo las más poderosas, guardan sus datos en ordenadores o servidores que se encuentran bajo un mismo techo (como en un CPD), y son gestionadas por una persona o una empresa.
Sin embargo, en el caso de un tipo de blockchain llamado “blockchain descentralizado”, los datos se guardan de manera distinta.
En los blockchains descentralizados, cada uno de los distintos ordenadores o servidores que almacenan los registros del blockchain se encuentran en lugares geográficos distintos. No se encuentran bajo el mismo techo.
Adicionalmente, cada uno de esos servidores son gestionados por personas distintas, no por una sola persona ni por una sola empresa.
Cada uno de esos servidores u ordenadores en donde se guardan los registros de un blockchain se llaman «nodos».
No obstante, también existen otro tipo de blockchains llamados “blockchains centralizados”, los cuales pueden ser gestionado por una sola empresa, y todos los servidores (o nodos) pueden estar bajo un mismo techo en un almacén o un CPD.
Para aquellas personas que sepan programar en C, los blockchains son muy parecidos a los “linked lists” o listas enlazadas de C.
Cada nuevo registro que se inserta a un blockchain, como una transacción, se almacena en un bloque, el cual es una estructura de datos muy similar a los nodos de las listas enlazadas de C.
Ese bloque con ese nuevo registro se va al final la cadena del blockchain, similar a cuando se inserta un nodo al final de una lista enlazada en C.
Cada bloque guarda cinco atributos o propiedades:
- La información del registro o la transacción.
- El hash del bloque actual.
- El hash del bloque anterior.
- Un “timestamp” o sello con la fecha y hora.
- Una flecha que conecta este bloque con el siguiente bloque.
Esto es similar a los nodos de C, con la diferencia de que los nodos de C solo tienen dos propiedades: la información del nodo actual, y la flecha que apunta hacia el siguiente nodo (el cual es llamado el “next” pointer).
Pues bien, vamos a explicar cada uno de los cinco atributos de un bloque de un blockchain:
1) La información del registro o la transacción:
Este es el nuevo dato que se desea insertar en el blockchain. Esto puede ser un pago con bitcoin, o cualquier otro tipo de transacción.
2) El hash del bloque actual:
Un hash es básicamente un número o un código que se le asigna a un registro de, por ejemplo, una base de datos. Esto se usa por diversos motivos.
Este hash es el hash que le pertenece únicamente al bloque actual.
3) El hash del bloque anterior:
Así como cada bloque tiene su propio hash, un bloque de un blockchain también tiene el hash del bloque anterior. Esto, como te explicaremos luego en más detalle, le permite a todo el blockchain mantener su integridad para que así sea difícil de modificar.
4) Un “timestamp” o sello con la fecha y hora:
Básicamente, se le agrega la fecha y la hora en que se está agregando este registro al bloque cuando se agrega al blockchain.
5) Una flecha que conecta este bloque con el siguiente bloque:
Esta es una flecha que va a apuntar al siguiente bloque que se agregue al final la cadena del blockchain. Inicialmente, esta flecha no va a apuntar a nada, ya que el bloque actual es el bloque más nuevo y es el último bloque de la cadena.
Sin embargo, si se agrega otro nuevo bloque a la cadena, el bloque actual apuntará al nuevo bloque que se agregue al final de la cadena. Esto es para atar a todos los bloques en la misma cadena.
Estos son, como mencionamos anteriormente, como los “next” pointers de los nodos de C.
Toda la información sobre todas las transacciones se almacena en cada nodo de la red de un blockchain. Por lo tanto, la información y los registros de cada transacción se almacenan en los ordenadores de las personas que actúan como nodos.
Los ordenadores de estos usuarios o servidores almacenan cada uno una copia de todo el blockchain.
Es muy difícil de borrar o modificar un blockchain ya que sus bloques crean un “timeline” o un historial de las transacciones, el cual se logra insertando cada bloque en el blockchain de manera cronológica. Para saber cuál es el bloque más reciente y cuál es el más viejo, se usa el “timestamp” de cada bloque.
La posición de cada bloque en un blockchain es llamada «height» o «altura». Por ejemplo, el primer bloque esta al «height» o «altura» 1. Luego, el segundo bloque está a la «altura» 2, y así sucesivamente.
Usos del blockchain
Criptomonedas
El uso de criptomonedas es la aplicación más popular del blockchain. Y, de todas las criptomonedas, la más famosa es el bitcoin.
En general, las criptomonedas, incluyendo el bitcoin, usan blockchains descentralizados.
La razón por la que los bitcoin usan un blockchain descentralizado es para que la gente tenga poco incentivo de hackearlo, y mucho incentivo de ser parte de la red de bitcoin y contribuir a la red.
El blockchain de algunas criptomonedas pueden ser bastante grandes. Por ejemplo, el blockchain de bitcoin tiene más de 600 mil bloques.
Entre las razones por la que la gente valora las criptomonedas está el poder comprar cosas de manera rápida, y cada transacción tiene la garantía de ser segura.
Además, otra ventaja de usar los blockchains como moneda es que los que deciden cuánta oferta y pueden influir en sus tokenomics, son la mayoría de los usuarios que actúan como nodos de la red de ese blockchain (como, por ejemplo, en la red de bitcoin).
Es decir, el valor de tu moneda no depende de ningún país ni de ningún gobierno.
Las criptomonedas también te sirven para crear una cuenta en donde puedes almacenar tu dinero y tus riquezas sin la necesidad de usar documentos de identificación (como el DNI). En muchos países, si no tienes papeles de identificación, no te dejarán abrir una cuenta bancaria.
Además, hay más de mil millones de personas en el mundo sin cuenta bancaria, y hay mucha gente que solo usa efectivo.
Por lo tanto, sin papeles o sin banco, sólo podrías usar dinero en efectivo, y tendrías que guardar ese dinero en lugares como debajo de tu colchón.
Con las criptomonedas, no necesitas identificación para poder tener una cuenta similar a una cuenta bancaria, y podrías depositar tu dinero en tu cuenta digital (que en este caso serían las criptomonedas).
Y con esto, no tendrías que sufrir todas las inconveniencias de tener que buscar en dónde guardar tu dinero en efectivo.
Otra ventaja de usar el blockchain para realizar pagos es lo rápido que son las transferencias. En bancos como ING, si realizas una transferencia a otro país de la Union Europea que no use euros, la transferencia se puede tardar hasta 4 días hábiles en realizarse.
Además, en general, si recibes dinero de un banco en el que no tengas cuenta, se puede tardar un día hábil. Si las transferencias se hacen en un fin de semana o en un día feriado, tendrás que esperar mínimo hasta el siguiente día hábil.
Eso no pasa con el blockchain y las criptomonedas, ya que el blockchain funciona las 24/7, los 365 días del año.
Otros usos
El blockchain se puede usar para ofrecer servicios de almacenamiento en la nube. Ya hay una empresa llamada Storj que tiene como proyecto ofrecer este tipo de servicio usando blockchain.
Los blockchains se pueden usar para realizar trámites con documentos, incluyendo realizar contratos inteligentes, verificar que un documento sea verídico, o inclusive crear títulos de propiedad.
Claro, muchos de estos servicios van a tratar con datos privados tuyos. Las criptomonedas, debido a que usan blockchains descentralizados, muestran algo de información privada de sus usuarios al público, como el saldo en sus cuentas y todas las criptomonedas que han recibido.
Por lo tanto, para ofrecer servicios que gestionen datos privados tuyos, las empresas deben ofrecer blockchains centralizados. De esta forma, tus datos privados no estarían disponibles al público, a diferencia de si usaras criptomonedas.
Desventajas
Una de las desventajas de muchas aplicaciones creadas con blockchain es que consumen mucha electricidad. Como los ordenadores o nodos que validan cada transacción necesitan consumir muchos recursos, se necesita de mucha energía eléctrica.
Como consecuencia, tendrías que pagar una gran cantidad de dinero en ordenadores poderosos y en electricidad.
Además de lo costoso que es usar blockchains para realizar procesos como minar bitcoins, el consumo eléctrico que generan es muy dañino para el ambiente.
Como la mayor parte del mundo usa combustibles fósiles para generar electricidad, como el petróleo y el carbón, se tiene que quemar una gran cantidad de estos combustibles para que un blockchain de este tipo pueda funcionar.
Esto genera una inmensa cantidad de emisiones de dióxido de carbono, los cuales se lanzan a la atmósfera. Esto termina contribuyendo a que el calentamiento global empeore.
Esto no sólo aplica para los bitcoins, sino para otras aplicaciones hechas con blockchains descentralizados como las NFTs, los cuales son blockchains que básicamente generan un tipo de títulos de propiedad.
Esto, de todas formas puede cambiar en un futuro no muy lejano. Hay empresas de energias limpias que usan su excedente para minar btcs y asi poder financiarse y seguir ampliando sus operaciones.
Otra desventaja de usar blockchains es lo lento que procesan sus transacciones. Los blockchains de las criptomonedas no procesan transacciones más rápido que los bancos.
Los bancos pueden procesar más de 20 mil transacciones por segundo. En cambio, el bitcoin y muchas criptomonedas solo pueden procesar alrededor de hasta 10 transacciones por segundo.
Sin embargo, se están creando blockchains que intentan corregir esto, y así sean más rápido que los bancos. No obstante, ni el bitcoin ni el Ethereum pueden procesar más transacciones por segundo que un banco.
Finalmente, otra desventaja de los blockchains es que algunos de sus usos podrían ser prohibidos por los gobiernos de muchos países. Los gobiernos podrían prohibir, por ejemplo, las criptomonedas.
Dado a que las criptomonedas te dan cierto nivel de privacidad, se podrían usar para comprar drogas y financiar actividades terroristas. Por lo tanto, los gobiernos decidirían prohibir las criptomonedas para evitar que se usen para fines ilícitos.
Conclusión
Ya hemos llegado al final de este artículo acerca del blockchain.
Esperamos que te haya gustado este artículo. ¿Tienes criptomonedas o piensas crear alguna aplicación que use blockchain? De ser así, o si deseas decir cualquier otra cosa acerca del blockchain, ¡dínoslo en los comentarios!