FACULTAD DE INGENIERÍA
INGENIERÍA DE SISTEMAS
BLOCKCHAIN:
Fundamentos y Aplicaciones
Monografía de la asignatura
Tecnologías Emergentes
Mamani Alanya, Kevin
Lima, Perú
2019
INTRODUCCION
La economía a nivel global se apoya de contratos, transacciones y registros que dan respaldo
a acuerdos que están directamente relacionados al ejercicio financiero de las personas. Lidiar
con todo tipo de situación de valor requiere poder tener información correcta, es esencial
tener integridad en todo lo que tenga que ver con una transacción de valor, pero, en un mundo
en el que lidiamos contra hackers, virus y desinformación, y todo tipo de riesgo contra la
integridad de la información, es muy difícil. Ante esto existen los bancos, notarías o cualquier
otra entidad que nos asegura la validez de dicha transacción, pero, en ese caso las personas
que realizan esta transacción de valor no tienen control alguno sobre el proceso y están
sujetos a sus condiciones. Es ahí donde entra la cadena de bloques, o Blockchain, que
básicamente elimina a los intermediarios, descentralizando toda la gestión. Esta ofrece una
única fuente de la verdad que no se puede manipular, se puede verificar y es inalterable.
2
INDICE
INTRODUCCION.....................................................................................................................2
INDICE......................................................................................................................................3
CAPÍTULO 1: BLOCKCHAIN.................................................................................................4
1.1. ¿Qué es Blockchain?...................................................................................................4
1.2. Estructura del blockchain............................................................................................4
Bloques...............................................................................................................................4
Mineros..............................................................................................................................5
Nodos.................................................................................................................................5
1.3. Propiedades fundamentales de la blockchain..............................................................6
1.4. Generación de bloques en la blockchain.....................................................................7
CAPITULO 2: APLICACIONES..............................................................................................9
2.1. Criptomonedas................................................................................................................9
2.2. IoT.................................................................................................................................10
2.3. Sistema de seguimiento de transportes.........................................................................11
2.4. Prueba de existencia......................................................................................................11
2.5. Big Data........................................................................................................................13
2.6. Energía..........................................................................................................................13
2
CAPÍTULO 1: BLOCKCHAIN
1.1. ¿Qué es Blockchain?
Blockchain (traducible como «cadena de bloques») es, en esencia, un libro mayor que crece
constantemente y mantiene un registro permanente de todas las transacciones realizadas, de
manera segura, cronológica e inmutable y que está “distribuido” o es compartido entre
muchas partes diferentes. Este libro mayor es un archivo de computadora que crece
constantemente a medida que nuevas transacciones se siguen agregando a la cadena de
bloques.
La cadena de bloques es una base de datos que puede ser compartida por una gran cantidad
de usuarios en forma peer-to-peer y que permite almacenar información de forma inmutable
y ordenada. En el caso de bitcoin, una de las criptomonedas más famosas que utiliza esta
tecnología, la información añadida a la blockchain es pública y puede ser consultada en
cualquier momento por cualquier usuario de la red. La información solo puede ser añadida a
la cadena de bloques si existe un acuerdo entre la mayoría de las partes. [CITATION
CAR17 \l 2058 ].
1.2. Estructura del blockchain
La cadena de bloques es un registro de todas las transacciones que tienen lugar
“empaquetadas” en bloques que los mineros se encargan de verificar. Posteriormente serán
incluidas en la cadena una vez validadas y distribuidas a todos los nodos que forman la red.
Entonces, veamos cada uno de estos elementos en detalle:
Bloques
Un bloque es un conjunto de transacciones confirmadas e información adicional que se ha
incluido en la cadena de bloques.
2
Cada bloque que forma parte de la cadena (excepto el bloque generatriz, que inicia la cadena)
está formado por:
1. Un código alfanumérico que enlaza con el bloque anterior.
2. El “paquete” de transacciones que incluye (cuyo número viene determinado por
diferentes factores).
3. Otro código alfanumérico que enlazará con el siguiente bloque.
Ilustración 1. Anatomía de un bloque
Fuente: Elaboración propia
El bloque en progreso lo que intenta es averiguar con cálculos el tercer punto anteriormente
indicado. Un código que sigue unas determinadas reglas para ser válido y sólo puede sacarse
probando sin parar.
Mineros
Los mineros son ordenadores/chips dedicados que aportan poder computacional a la red de
bitcoin para verificar las transacciones que se llevan a cabo.
Cada vez que alguien completa un bloque en la red de Bitcoin recibe una recompensa en
forma de bitcoins (actualmente 12.5) y/o por cada transacción que se realiza.
2
Nodos
Un nodo es un ordenador/chip conectado a la red utilizando un software que almacena y
distribuye una copia actualizada en tiempo real de la cadena de bloques.
Cada vez que un bloque se confirma y se añade a la cadena se comunica a todos los nodos y
este se añade a la copia que cada uno almacena.
Una de las mayores curiosidades que tiene el protocolo bitcoin es que cada unidad no es un
archivo como tal que se envía como si fuese una película o canción, al estilo de un protocolo
P2P como puede ser BitTorrent.
En realidad, lo que se produce es un registro del cambio de propiedad de una cantidad
determinada de bitcoins en la cadena de bloques.
1.3. Propiedades fundamentales de la blockchain
La creación de una blockchain robusta debe garantizar dos propiedades fundamentales
[ CITATION GAR15 \l 2058 ]:
– Disponibilidad: Asegura que una transacción honesta que ha sido emitida acabe siendo
añadida a la cadena de bloques.
– Persistencia: Cuando un nodo da una transacción como estable, el resto de nodos, si son
honestos, validarán ésta como estable haciéndola inmutable.
En la inserción de bloques en la blockchain mediante la red peer-to-peer se distinguen
diferentes estados para la información de bloque que está siendo procesada:
• Información candidata a ser añadida: es información que los nodos han enviado al
resto de nodos mediante la red peer-to-peer pero que aún no ha sido validada en
ningún bloque.
2
• Información confirmada: es información validada por la red y se procede a añadirla al
próximo bloque.
• Información estable: es información que forma parte de la blockchain de forma
inmutable
1.4. Generación de bloques en la blockchain
La generación de bloques en la blockchain se realiza de forma descentralizada. La clave para
esta descentralización es que se llegue a un acuerdo sobre qué información se guarda en ella.
Para ello, es necesario conseguir un consenso distribuido que permita que los nodos honestos
tengan la capacidad de generar la información válida conjuntamente y así evitar que nodos
maliciosos puedan guardar información no deseada.
En primer lugar, un usuario debe convertirse en nodo dentro del sistema para poder escuchar
y emitir nuevas transacciones (información). En segundo lugar, si el usuario desea convertirse
en minero y crear nuevos bloques debe competir contra el resto de mineros en la red para
resolver el rompecabezas criptográfico y así ser el que escriba el nuevo bloque en la
blockchain oficial. El proceso de autenticación de las transacciones se basa en criptografía
asimétrica. Cada cuenta de usuario de Bitcoin posee dos llaves relacionadas
matemáticamente: una pública (identificador del usuario en la red, conocida por todos) y una
privada (secreta, conocida por el usuario). La llave privada se usa para firmar las
transacciones emitidas por el usuario; éste especifica las cantidades de moneda a transferir y
las llaves públicas de destino. La red y el resto de usuarios, usando la llave pública del
emisor, pueden obtener una prueba matemática de que la transacción fue efectivamente
firmada por ese usuario y por nadie más, puesto que nadie más tiene su llave privada. Las
nuevas transacciones emitidas son validadas por los nodos más cercanos al emisor,
descartando todas las transacciones inválidas y propagando al resto de nodos las
transacciones válidas, es decir, aquellas que cumplen con las especificaciones de la red.
2
Posteriormente, se procede a añadir las nuevas transacciones a la cadena de bloques. Este
proceso de confirmación de datos se lleva a cabo en bitcoin mediante el proceso de minado
PoW (Proof Of Work). Finalmente, los nodos comprueban que, en el nuevo bloque
creado/minado, todas las transacciones son válidas y que el bloque está correctamente
vinculado con su predecesor, es decir, que contiene el hash del bloque anterior en su
cabecera. En caso afirmativo el bloque es añadido a la blockchain incrementando así la
cadena. El proceso se repite generando una nueva ronda de minado con las nuevas
transacciones emitidas que aún no hayan sido agregadas en ningún bloque anterior de la
blockchain. Si el bloque es inválido, es descartado, y el resto de nodos siguen el proceso de
minado hasta encontrar un bloque válido.
Ilustración 2. Esquema del proceso seguido en bitcoin para añadir bloques a la blockchain
Fuente: Elaboración propia
2
CAPITULO 2: APLICACIONES
A día de hoy bitcoin es, sin duda alguna, la realización práctica de la tecnología blockchain
más conocida. Sin embargo, la lista de posibles casos de uso es mucho más larga y
potencialmente más revolucionaria que la cripto-moneda, que se está erigiendo como sistema
alternativo de pagos a nivel mundial. A continuación, se describen algunas de dichas
aplicaciones.
2.1. Criptomonedas
Las cripto-monedas basadas en blockchains eliminan la necesidad de una autoridad central.
El criterio de emisión de nuevas unidades monetarias se encuentra prefijado. En el caso del
Bitcoin, por ejemplo, se emite nueva moneda cada vez que se mina un bloque (cada 10
minutos aproximadamente) y se pone en posesión del nodo que lo ha minado. La cantidad
decrece aproximadamente cada cuatro años y el sistema está diseñado para llegar a un total
de 21 millones de bitcoins en 2040. Desaparece, por tanto, la incertidumbre asociada a este
tipo de decisiones políticas. Se elimina, además, la posibilidad de que los Estados usen los
bancos centrales para beneficiar a unos sectores o perjudicar a otros.
Existen decenas de cripto-monedas. Todas ellas comparten su utilidad como sistema de pago.
Algunas utilizan una blockchain propia y otras funcionan encima de la blockchain de bitcoin.
Su funcionamiento es bastante heterogéneo y todas ellas pretenden aportar alguna mejora
respecto a bitcoin. Probablemente, la más prometedora entre las alternativas es Ethereum, que
es la segunda cripto-moneda con mayor capitalización.
Ethereum cuenta con una blockchain propia, es decir, distinta a bitcoin y por el momento
también basada en PoW (aunque tiene planeada una migración a PoS).
2
Ilustración 3.Principales Cripto-Monedas Y Sus Características
Fuente: Elaboración propia
2.2. IoT
Sistema de Distribución de firmware
Además de computadores y equipos red, se van conectando a Internet electrodomésticos,
dispositivos de vigilancia y seguridad, sensores de todo tipo, etc. Este nuevo ecosistema
ofrece una flexibilidad sin precedentes. Sin embargo, este paradigma tiene también algunos
retos a resolver. Entre ellos, destaca el ámbito de la seguridad.
Uno de los primeros problemas de seguridad que aparece en el entorno IoT es el nivel de
supervisión de los dispositivos. Muchos dispositivos no están supervisados con los niveles
usados en el mundo de la computación. Muchos de estos dispositivos no siempre reciben
actualizaciones con una elevada frecuencia por parte de los fabricantes pues para ellos resulta
bastante costos tener que enviar directamente a millones de dispositivos actualizaciones.
Este escenario, bien podría solucionarse con una blockchain. En este caso, se aprovecharía
tanto su característica de sistema distribuido y su transparencia, como su robustez y
fiabilidad. Los dispositivos consultarían la blockchain para averiguar si su firmware está
actualizado. En caso que no lo esté, pedirían a otros nodos que les manden la nueva versión.
Una vez recibida, podrían usar el código de la blockchain para comprobar que el firmware no
ha sido alterado en modo alguno, evitando así las intrusiones. Una vez implementado,
2
resultaría bastante más barato para el fabricante que sólo tendría que mandar la actualización
a unos pocos nodos y dejar que la actualización propague.
2.3. Sistema de seguimiento de transportes
En un envío internacional de mercancías participan normalmente varias empresas ya que se
utilizan varios medios de transporte. Todas ellas tienen sus bases de datos independientes
donde actualizan el estado del envío en función de la información proporcionada por las otras
o por sus agentes. Blockchain tiene aquí una clara aplicabilidad que permitiría hacer el
sistema más simple, más transparente y menos costoso. Para empezar, la base de datos (la
propia blockchain) sería compartida por todos los intermediarios y por el remitente y
destinatario, reduciendo los costes. No sería para ello necesaria la confianza entre ellos en
general. Al llegar el contenedor en cuestión a un cierto puerto, se añadiría una actualización a
la base de datos. Al estar todas las actualizaciones firmadas con las claves privadas del que
entrega y el que recoge y con la clave del contenedor, esta actualización actuaría como
prueba criptográfica de que el contenedor se encuentra ahora en posesión del administrador
del puerto. Además, el sistema incluye marcas de tiempo (timestamps) para hacer el
seguimiento. La transparencia y fiabilidad del concepto ayudaría sin duda a la resolución de
disputas entre los participantes. Si a este enfoque innovador se le añade IoT se puede ganar
aún más eficiencia. Los contenedores y los lugares de intercambio pueden tener dispositivos
incorporados que automaticen totalmente el proceso, disminuyendo los costes aún más y
reduciendo las probabilidades de error y de fraude.
2.4. Prueba de existencia
Una de las características más notables de blockchain, sino la más notable, es su
inmutabilidad: una vez una información se ha añadido a la base de datos distribuida, y
añadidos unos pocos bloques detrás, la probabilidad de que sea modificada es, a efectos
prácticos, cero.
2
Esta propiedad, sin equivalente en el mundo digital ni en el mundo real, tiene obvias
aplicaciones. Tradicionalmente, si alguien quiere probar públicamente ser el autor de una
información, sea un diseño tecnológico o una canción, acude a una oficina de patentes o
similar. Esto es, como pasaba con las transacciones, una entidad de confianza de todas las
partes que ofrece, básicamente, la garantía de no modificar nada y de no revelar nada (a
excepción de lo necesario para una potencial batalla legal, siempre autorizado por el
propietario). La tecnología blockchain puede sustituir también a este intermediario.
Por ejemplo, en Proof of existence (2017) se ha implementado un servicio donde cualquiera
puede generar una prueba de que una información existía en un momento determinado en el
tiempo y almacenarla en la blockchain de Bitcoin. El funcionamiento es sencillo: se calcula
un hash para el documento en cuestión. Del hash no se puede deducir el documento, pero sólo
el poseedor del documento puede haber generado el hash. Luego se genera una transacción
especial que permite almacenar este código en la blockchain. La transacción se envía y una
vez es añadida en un bloque, queda ahí para siempre. El bloque contiene, además, fecha y
hora, tan inmutables como el resto, completando así la prueba segura, pública y verificable de
existencia. Además, su coste es ínfimo, sobre todo comparado con los costes de las patentes
convencionales.
En cuanto al propietario del documento, sus datos pueden encontrarse en el mismo
documento. Debido a las propiedades de la función de hash, cualquier cambio, por pequeño
que sea, resulta en un hash totalmente diferente. El sistema tiene ahí otra utilidad derivada:
comprobación de integridad de documentos. Un usuario puede comprobar mediante la misma
página web que un cierto documento original almacenado en la blockchain es idéntico al que
posee.
2
2.5. Big Data
La cadena de bloques no deja a ser un enorme libro de contabilidad. Una base de datos que
gestiona millones de transacciones diarias de manera efectiva y rápida. Pero tiene una
limitación: No posee herramientas para analizar tantos datos.
El binomio que representan Blockchain y Big Data es la combinación perfecta para
solucionarlo. Las herramientas que ofrece el Big Data permiten analizar todos los datos de
una cadena de bloques y obtener información muy útil para empresas.
Por ejemplo, algunas utilidades que ofrece el Big Data aplicado al Blockchain son:
Seguridad, ya que el Big Data proporciona más instrumentos para detectar potenciales
fraudes.
Transparencia, al poder recopilar y clasificar toda la información permiten
representarlo con más exactitud y claridad.
Evitar riesgos, porque podría detectar operaciones arriesgadas.
Proporcionar datos a empresas financieras, como, por ejemplo, patrones de consumo.
2.6. Energía
El sector energético no es ajeno al potencial de las aplicaciones de la cadena de bloques. La
primera transacción de energía con blockchain se produjo en Nueva York en abril de 2016 y
desde entonces muchos son los actores de esta industria que han invertido en esta tecnología.
Según un estudio de Wood Mackenzie, a comienzos de 2018 ya eran 122 las compañías en
todo el mundo que estaban involucradas en esta tecnología y 40 los proyectos que habían
desarrollado. Calculan que entre abril de 2017 y marzo de 2018 se han invertido 300 millones
de dólares en blockchain en la industria energética.
2
La cadena de bloques podría agilizar las transacciones entre los diferentes agentes del
comercio energético, como comercializadoras, distribuidoras, productores, proveedores y
consumidores, y eliminar algunos de los intermediarios.
Algunas de los servicios blockchain destacados por las compañías eléctricas son la
certificación de garantías de origen, la aplicación a la movilidad sostenible, el trading
energético entre grandes compañías, la seguridad de los dispositivos conectados a la red o la
certificación de producción de paneles fotovoltaicos para incentivar la producción.
CONCLUSIÓN
La blockchain permite implementar una base de datos distribuida, pública e inmutable basada
en una secuencia creciente de bloques. Esta base de datos proporciona tolerancia a fallos en
nodos, robustez frente a manipulación y al ser pública, transparencia. El uso de esta
tecnología es potencialmente inmenso y por ello se considera como una de las tecnologías
con más potencial disruptivo de los últimos años.
La posibilidad de tener una base de datos distribuida e inmutable tiene un sinfín de utilidades
práctica. Las cripto-monedas han sido su primera aplicación de éxito debido a las necesidades
de seguridad y transparencia de los sistemas de pago y a la posibilidad de eliminar
intermediarios. En el futuro, sin embargo, es posible que encontremos sistemas de blockchain
en una infinidad de contextos y sistemas.
BIBLIOGRAFÍA
2
Dolader Retamal, C., Bel Roig, J., & Muñoz Tapia, J. L. (2017). LA BLOCKCHAIN:
FUNDAMENTOS, APLICACIONES Y RELACIÓN CON OTRAS
TECNOLOGÍAS DISRUPTIVAS. Ei, 34.
GARAY, J. K. (2015). «The bitcoin backbone protocol: Analysis and applications». Annual
International Conference on the Theory and Applications of Cryptographic
Techniques. Springer Berlin Heidelberg, 281-310.