Las aplicaciones decentralizadas o Peer to Peer (P2P) se pusieron de moda con redes como la de BitTorrent, en donde los usuarios comparten sus archivos digitales, de tal forma que cuando alguien quiere descargar un archivo, el protocolo de BitTorrent permite descargar “pedazos” del archivo de todos los nodos que lo contienen. La única manera que un archivo pudiera estar fuera de línea es que ninguno de los usuarios de la red lo tuvieran, lo cual permite tener una altísima disponibilidad de la información. Un problema que tiene BitTorrent es que el protocolo no tiene manera de saber si la canción que se está descargando es la canción original, o si es solo otro archivo que tiene el mismo nombre pero que contiene ruido en vez de música.
De manera análoga a cómo una persona usa el protocolo de BitTorrent para descargar una canción pirata en Internet, una persona utiliza el protocolo de Blockchain para enviar un Bitcoin a otro usuario de la red.
Para fines prácticos Blockchain es una base de datos distribuida en una red de Nodos denominados “Minners”. Todos los “Minners” tienen la tabla con todas las transacciones ejecutadas en la red. Una diferencia fundamental que tiene Blockchain con otras aplicaciones distribuidas es que es prácticamente incorruptible. Esto significa que técnicamente no hay manera que un Minner invente una operación de depósito en una cuenta propia en su base de datos y la replique al resto de los “Minners”. El Blockchain se compone de dos elementos: Transacciones y Bloques. Un bloque contiene una lista de transacciones. Cada bloque inicia con un “Hash” del bloque anterior y cada bloque tiene un número máximo de transacciones antes de que se tenga que crear otro bloque. Dado que Cada bloque contiene un “Hash” del bloque anterior, si alguien modifica cualquier transacción del bloque anterior, su “Hash” se modificaría, y podríamos saber que ese Bloque está corrupto, y por lo tanto es inválido. Esto genera una especie de encadenamiento de Bloques, de ahí el nombre de Blockchain. Los “Minners” están constantemente retransmitiendo a la red todas las Transacciones y Bloques, de tal manera que las transacciones se van replicando exponencialmente en la red y por lo tanto es muy poco probable que una transacción se pierda.
Así como la base de datos es segura, al mismo tiempo es pública. Cualquiera puede tirar un query al Blockchain y ver la lista de transacciones, de tal forma que es irrepudiable que una transacción haya sucedido en un momento determinado. Así como es Publica, también es anónima. Esto significa que solo sabemos que se hizo una transacción de la dirección A a la dirección B, pero no sabemos quién es el dueño de la dirección A ni de la dirección B. Si sumamos todas las transacciones que han sucedido en la dirección A, podríamos saber cuántos Bitcoins existen ahí, pero no sabríamos ni de quién son, ni podríamos hacer uso de ellos. Solo la persona que tenga la llave privada a esa dirección puede operarla para realizar retiros.
En el siguiente bloque estaré hablando de las aplicaciones, los riesgos y la evolución de esta tecnología
Comentarios
Publicar un comentario