blockchain y contratos inteligentes alejandro hernandez
TRANSCRIPT
COPYRIGHT © PRACTIA 2018 Diapositiva N°1Diapositiva N°1COPYRIGHT © PRACTIA 2018
22/10/2018
Alejandro Hernandez
Blockchain y contratos inteligentes
COPYRIGHT © PRACTIA 2018 Diapositiva N°2Diapositiva N°2COPYRIGHT © PRACTIA 2018
• 01/11/2018 en Pellegrini 1618
• https://www.uai.edu.ar/ciiti/2018/rosario/agenda/default.asp
CIITI
COPYRIGHT © PRACTIA 2018 Diapositiva N°3Diapositiva N°3COPYRIGHT © PRACTIA 2018
• Fundada como Pragma Consultores en 1995.
• 800 profesionales, 5000+ proyectos en 18 países.
Practia
• Servicios: consultoría,
gestión de proyectos,
tecnología y desarrollo,
calidad, transformación
digital.
• Mercados: energía,
financiero, retail, telcos,
agro, salud.
COPYRIGHT © PRACTIA 2018 Diapositiva N°4Diapositiva N°4COPYRIGHT © PRACTIA 2018
“Qué es Blockchain y para qué sirven los contratos inteligentes. Sus orígenes con Bitcoiny los fundamentos técnicos que la transforman en una tecnología disruptiva. Panorama de aplicaciones existentes, en desarrollo y futuras.”
• Blockchain y contratos inteligentes: qué son y cómo se usan
• Cómo funciona blockchain• Transacciones Bitcoin
• Transacciones en general
• Cadena de bloques
• Red p2p
• Protocolo de comunicación y consenso
• El ecosistema actual• Contratos inteligentes
• Aplicaciones existentes, en desarrollo y futuras
Agenda
COPYRIGHT © PRACTIA 2018 Diapositiva N°5Diapositiva N°5COPYRIGHT © PRACTIA 2018
Blockchain y contratos inteligentes: qué son y cómo se
usan
COPYRIGHT © PRACTIA 2018 Diapositiva N°6Diapositiva N°6COPYRIGHT © PRACTIA 2018
Blockchain es UNA COMPUTADORA
Blockchain
inside!
COPYRIGHT © PRACTIA 2018 Diapositiva N°7Diapositiva N°7COPYRIGHT © PRACTIA 2018
• Las cadenas de bloques aseguran integridad?
• Sí. Mucho más que una DB tradicional.
• Se pueden manipular datos?
• No. Son “update-only”. No se puede hacer un ABM.
• Es barato guardar muchos datos?
• No. Transacciones son costosas (en la actualidad).
• Los datos tienen estructura?
• No exactamente. Solamente los metadatos, pero los datos no.
Por qué blockchain NO ES una base de datos?
COPYRIGHT © PRACTIA 2018 Diapositiva N°8Diapositiva N°8COPYRIGHT © PRACTIA 2018
• Se comparten datos entre muchos participantes
• Cambian los datos muchos participantes (posiblemente
desconocidos y no confiables)
• Verificabilidad (participantes necesitan confiar con desconfianza)
• Eliminar intermediarios (costo, conciliaciones, etc.)
• Eliminar interacciones (tiempo)
• Interrelación entre transacciones (dependencia mutua o múltiple)
Condiciones para usar “la computadora” blockchain
COPYRIGHT © PRACTIA 2018 Diapositiva N°9Diapositiva N°9COPYRIGHT © PRACTIA 2018
• Descentralización de confianza
• Realización de propiedades de seguridad
(integridad y disponibilidad)
• Un nuevo horizonte revolucionario para
la elaboración de un sinnúmero de ideas.
Algunas ventajas de blockchain
COPYRIGHT © PRACTIA 2018 Diapositiva
N°10 Diapositiva N°10COPYRIGHT © PRACTIA 2018
• Blockchain es una tecnología que define,
entre otras cosas:
• Estructura de datos
• Algoritmo de almacenamiento para los
datos
• Protocolo de comunicación
• Protocolo de “consenso” (para determinar
datos válidos e inválidos)
Tecnología blockchain
COPYRIGHT © PRACTIA 2018 Diapositiva N°11Diapositiva N°11COPYRIGHT © PRACTIA 2018
• Es un programa que vive en la blockchain:
• Por las características de blockchain, estos programas son
“inhackeables”.
• Puede enviar y recibir assets (i.e. criptomonedas), aunque claramente
puede ejecutar, manipular datos, validar condiciones, etc.
• Pueden comunicarse con otros contratos
• No es un programa proactivo, es reactivo (hay que activarlo
“llamando a métodos”)
Qué es un “contrato inteligente”
COPYRIGHT © PRACTIA 2018 Diapositiva
N°12 Diapositiva N°12COPYRIGHT © PRACTIA 2018
Cómo funciona blockchain
Transacciones Bitcoin
COPYRIGHT © PRACTIA 2018 Diapositiva
N°13 Diapositiva N°13COPYRIGHT © PRACTIA 2018
Bitcoin transacciones
COPYRIGHT © PRACTIA 2018 Diapositiva
N°14 Diapositiva N°14COPYRIGHT © PRACTIA 2018
• El que paga, escribe un script (scriptPubKey).
• El que “recibe” el pago, tiene que lograr que los mineros corran sin errores ese
script en el futuro (i.e. en el momento de querer gastar lo que “recibió”). Para eso, pone su clave (script scriptSig)
• 99.9% de las transacciones son un simple chequeo de firma, en pagos del tipo
pay-to-pubkey-hash (también existen pay-to-script-hash, proof-of-burn, etc.)
Ejemplo de pay-to-pubkey-hash:
scriptPubKey: OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY
OP_CHECKSIG
scriptSig: <sig> <pubKey>
Bitcoin lenguaje de pila
COPYRIGHT © PRACTIA 2018 Diapositiva
N°15 Diapositiva N°15COPYRIGHT © PRACTIA 2018
Cómo funciona blockchain
Transacciones en general
COPYRIGHT © PRACTIA 2018 Diapositiva
N°16 Diapositiva N°16COPYRIGHT © PRACTIA 2018
Transacciones
Tx1
Tx2
Tx3
Tx4
Tx5
Tx6
Tx7
• Transacción: cualquier dato que merezca ser guardado
(para reflejar un evento, suceso o cambio):• La información de que X le pasó dinero a Y
• El nombre del nuevo dueño de una casa
• La ejecución de un programa
• Una foto de una luna de Júpiter
• El nombre del autor de una canción o libro
COPYRIGHT © PRACTIA 2018 Diapositiva
N°17 Diapositiva N°17COPYRIGHT © PRACTIA 2018
• Cuando hay suficientes transacciones validadas, un bloque
debe ser cerrado (y nunca más modificado)
• Integridad
• Criterios para cerrar bloque (dependiendo de la blockchain
específica):
• Por cantidad de transacciones
• Por tiempo
• Por límite de tamaño de bloque
Cierre de un bloque
COPYRIGHT © PRACTIA 2018 Diapositiva
N°18 Diapositiva N°18COPYRIGHT © PRACTIA 2018
Cómo funciona blockchain
Cadena de bloques
COPYRIGHT © PRACTIA 2018 Diapositiva
N°19 Diapositiva N°19COPYRIGHT © PRACTIA 2018
La cadena de bloques (agrupando transacciones)
Tx1 Tx2
Bloque 1
Txn… H(Bl1) Txn+1
Bloque 2
Txm… H(Bl2) Txm+1
Bloque 3
Txo…
• Cada bloque tiene una “huella” del inmediato anterior• Esto impide que se modifique
• Por inducción, ninguno de los bloques anteriores se modifica
• Esto se sostiene combinando fuertes mecanismos de
seguridad (hashing, encriptación de clave asimétrica).
COPYRIGHT © PRACTIA 2018 Diapositiva
N°20 Diapositiva N°20COPYRIGHT © PRACTIA 2018
La cadena de bloques (nuevas transacciones)
Tx1 Tx2
Bloque 1
Txn… H(Bl1) Txn+1
Bloque 2
Txm… H(Bl2) Txm+1
Bloque 3
Txo…
Txo+1
• Cuando se cierra un nuevo
bloque (y se “encadena” al
anterior), todas estas nuevas
transacciones quedan
validadas.
Txo+4
Txo+2
Txo+3
COPYRIGHT © PRACTIA 2018 Diapositiva
N°21 Diapositiva N°21COPYRIGHT © PRACTIA 2018
Es “un poco” más que una estructura de datos
- Blockchain?
- Suena como si fuera un lista enlazada con algunos pasos adicionales
COPYRIGHT © PRACTIA 2018 Diapositiva
N°22 Diapositiva N°22COPYRIGHT © PRACTIA 2018
Cómo funciona blockchain
Red p2p
COPYRIGHT © PRACTIA 2018 Diapositiva
N°24 Diapositiva N°24COPYRIGHT © PRACTIA 2018
Red peer-to-peer (de nodos, o mineros)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°25 Diapositiva N°25COPYRIGHT © PRACTIA 2018
• Cadena está replicada en todos los nodos (verificable, auditable):
• Esto elimina intermediarios / se basa en consenso distribuido.
• Disponibilidad inmediata.
• Trazabilidad e inmutabilidad, de cualquier tipo de transacción.
• Non-repudiation.
• Integridad absoluta.
Características de la cadena de bloques
COPYRIGHT © PRACTIA 2018 Diapositiva
N°26 Diapositiva N°26COPYRIGHT © PRACTIA 2018
Cuál es LA tecnología disruptiva de nuestra era?
COPYRIGHT © PRACTIA 2018 Diapositiva
N°27 Diapositiva N°27COPYRIGHT © PRACTIA 2018
Cuál es LA tecnología disruptiva de nuestra era?
Internet
COPYRIGHT © PRACTIA 2018 Diapositiva
N°28 Diapositiva N°28COPYRIGHT © PRACTIA 2018
La computadora global (visión interna)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°29 Diapositiva N°29COPYRIGHT © PRACTIA 2018
La computadora global (visión ampliada con usuarios)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°30 Diapositiva N°30COPYRIGHT © PRACTIA 2018
La computadora global (visión externa)
Blockchain
inside!
COPYRIGHT © PRACTIA 2018 Diapositiva
N°31 Diapositiva N°31COPYRIGHT © PRACTIA 2018
Cómo funciona blockchain
Protocolo de comunicación y consenso
COPYRIGHT © PRACTIA 2018 Diapositiva
N°32 Diapositiva N°32COPYRIGHT © PRACTIA 2018
Los nodos pueden disparar transacciones (generalmente a
pedido de algún usuario externo)
¿Tx?
COPYRIGHT © PRACTIA 2018 Diapositiva
N°33 Diapositiva N°33COPYRIGHT © PRACTIA 2018
Transacción siendo validada
¿Tx?
¿Tx?
¿Tx?
¿Tx?¿Tx?
¿Tx?
¿Tx?
¿Tx?¿Tx?
COPYRIGHT © PRACTIA 2018 Diapositiva
N°34 Diapositiva N°34COPYRIGHT © PRACTIA 2018
Desafío para cerrar bloque
COPYRIGHT © PRACTIA 2018 Diapositiva
N°35 Diapositiva N°35COPYRIGHT © PRACTIA 2018
Cuando un nodo resuelve el desafío…
COPYRIGHT © PRACTIA 2018 Diapositiva
N°36 Diapositiva N°36COPYRIGHT © PRACTIA 2018
…envía resultado a la red, para cerrar el bloque.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°37 Diapositiva N°37COPYRIGHT © PRACTIA 2018
Si hay conflicto por soluciones simultáneas. CONSENSO!
COPYRIGHT © PRACTIA 2018 Diapositiva
N°38 Diapositiva N°38COPYRIGHT © PRACTIA 2018
Transacción validada
Tx
Tx
Tx
Tx
Tx
Tx
Tx
Tx
TxTx
Tx
COPYRIGHT © PRACTIA 2018 Diapositiva
N°39 Diapositiva N°39COPYRIGHT © PRACTIA 2018
El gran problema: electricidad
• Hay otros protocolos de consenso “más baratos” (PoS, PoA).
• Constantemente se están proponiendo/desarrollando ideas para
mejorar esta y otras cuestiones.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°40 Diapositiva N°40COPYRIGHT © PRACTIA 2018
El ecosistema actual
Contratos inteligentes
COPYRIGHT © PRACTIA 2018 Diapositiva
N°41 Diapositiva N°41COPYRIGHT © PRACTIA 2018
• Blockchain denominada Ethereum:
• Define una máquina virtual (EVM)
• Cada nodo corre un lenguaje Turing-
completo
• Se pueden hacer programas -> contratos
inteligentes
Qué es un contrato inteligente?
COPYRIGHT © PRACTIA 2018 Diapositiva
N°42 Diapositiva N°42COPYRIGHT © PRACTIA 2018
• Una aplicación natural de contratos inteligentes es:
• Describir relaciones contractuales entre partes
• Controlar automáticamente cumplimiento de condiciones
• Ejecutar automáticamente lo dispuesto por las cláusulas
• Algunas limitaciones features:
• No se pueden corregir posibles bugs
• Motto tradicional: Code is Law
• Los datos deben ser cargados por alguien (confianza?)
• Oráculo confiable externo
Usos y limitaciones de un contrato inteligente
COPYRIGHT © PRACTIA 2018 Diapositiva
N°43 Diapositiva N°43COPYRIGHT © PRACTIA 2018
• Hay miles de
emprendimientos con
blockchain
• Dificultad y burocracia
para financiamiento
institucional
• Contrato inteligente puede
manejar fondos -> nace la
idea de Initial Coin
Offering (ICO)
• Inversores tienen acceso a
un determinado “token”
Initial Coin Offering
COPYRIGHT © PRACTIA 2018 Diapositiva
N°44 Diapositiva N°44COPYRIGHT © PRACTIA 2018
• Existen muchos jugadores interesados (todos fuertes):
• Desarrolladores “de la VM”: crean el software base para el
consenso.
• Desarrolladores de “contratos”: crean el software “de
aplicación”.
• Nodos (mineros): realizan los consensos, validan
transacciones.
• Inversores: poner dinero como “resguardo de valor” (los
precios suben).
• Usuarios de contratos: realizan transacciones, le dan vida al
sistema.
• Investigadores / innovadores: hacen crecer la tecnología.
Stakeholders del ecosistema
COPYRIGHT © PRACTIA 2018 Diapositiva
N°45 Diapositiva N°45COPYRIGHT © PRACTIA 2018
El ecosistema actual
Aplicaciones existentes, en desarrollo y futuras
COPYRIGHT © PRACTIA 2018 Diapositiva
N°46 Diapositiva N°46COPYRIGHT © PRACTIA 2018
Financieros y relacionados
Algunos bastante publicitados:
• American Express ya está usando Ripple para transferencias
transoceánicas, en detrimento de SWIFT.
• Mastercard aplicó a una patente para su propia blockchain.
• Visa lanzó una 1ra versión de su blockchain para pagos b2b.
• Santander se alió con Ripple para pagos minoristas.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°47 Diapositiva N°47COPYRIGHT © PRACTIA 2018
Financieros y relacionados
ANZ, junto con Westpac, tiene piloto de blockchain privada
entre bancos, para pagos internacionales (clearing)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°48 Diapositiva N°48COPYRIGHT © PRACTIA 2018
Financieros y relacionados
InsureETH (PoC): startup sobre seguros en vuelos (todo
manejado con smart contracts)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°49 Diapositiva N°49COPYRIGHT © PRACTIA 2018
Financieros y relacionados
chainanalysis.com (seguridad de bitcoins, addresses
sospechosas, ransomware)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°50 Diapositiva N°50COPYRIGHT © PRACTIA 2018
Financieros y relacionados:
Rusia está empezando a sacar Leyes, con regulaciones para
transacciones, minería, impuestos, etc.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°52 Diapositiva N°52COPYRIGHT © PRACTIA 2018
• SICPA, empresa suiza, por varias décadas resguardando documentación (hacen
tinta!).
• Guardtime, empresa estona, pioneros en seguridad usando blockchain (e.g.
proveedores del Dept. de Energia de US). Fundada luego de ataques masivos
DoS a organizaciones en Estonia.
Info de ciudadanos: Estonia, acuerdo estratégico para llevar
información sobre ciudadanos a la blockchain
COPYRIGHT © PRACTIA 2018 Diapositiva
N°53 Diapositiva N°53COPYRIGHT © PRACTIA 2018
Transparencia
Alice (startup) para dar transparencia al uso de fondos de
donaciones.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°54 Diapositiva N°54COPYRIGHT © PRACTIA 2018
Walmart (trazabilidad de alimentos)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°56 Diapositiva N°56COPYRIGHT © PRACTIA 2018
Videojuegos (CryptoKitties)
COPYRIGHT © PRACTIA 2018 Diapositiva
N°57 Diapositiva N°57COPYRIGHT © PRACTIA 2018
Otros diversos
• En US, hay más de 1000 start-ups haciendo cosas sobre
blockchain.
COPYRIGHT © PRACTIA 2018 Diapositiva
N°58 Diapositiva N°58COPYRIGHT © PRACTIA 2018
• Bitex (exchange internacional)
• Ripio (billetera virtual)
• Voxelus (VOX, dinero para jugar)
• Decentraland (simil Second Life)
• Zeppelin (verificación de seguridad en
contratos inteligentes)
• UTN Santa Fe (registro de procesos
organizacionales)
Algunas startups argentinas
COPYRIGHT © PRACTIA 2018 Diapositiva
N°59 Diapositiva N°59COPYRIGHT © PRACTIA 2018
Atlas (la otra pasión)
https://web.telegram.org/#/im?p=@atlas_camis
etas_bot
COPYRIGHT © PRACTIA 2018 Diapositiva
N°60 Diapositiva N°60COPYRIGHT © PRACTIA 2018
“El valor de mercado es de 200*109 USD,
pero el valor generado mucho menor. “
(Vitalik Buterin, agosto 2018)
Hay mucho por hacer…
COPYRIGHT © PRACTIA 2018 Diapositiva
N°61 Diapositiva N°61COPYRIGHT © PRACTIA 2018
• El blockchain representa una disrupción única global.
• Mucha gente puede beneficiarse (win-win).
• Existen muchos intentando innovar con el blockchain.
• Todavía no apareció el Google / Facebook / Android de
blockchain.
• Las posibilidades son infinitas y, sobre todo, desconocidas.
Conclusiones
COPYRIGHT © PRACTIA 2018 Diapositiva
N°62 Diapositiva N°62COPYRIGHT © PRACTIA 2018
Gracias!Alejandro Hernandez
COPYRIGHT © PRACTIA 2018 Diapositiva
N°63 Diapositiva N°63COPYRIGHT © PRACTIA 2018
Nuestras OficinasPor el mundo
ArgentinaSan Martín 550, Buenos Aires (C1004AAL) | Tel.: (+54-11) 5276-1999
BoliviaCalle María de Oliveira N°4, Edificio Sanjinés, Piso 4°, Zona Brígida
Equipetrol Norte,
Santa Cruz de la Sierra | Tel.: (+59 1) 3-429300 / 3-429301
ChileMonseñor Sótero Sanz 161 Piso 12° (C.P 7500000) , Providencia,
Santiago | Tel.: (+56-2) 2334-3361
EspañaPaseo de la Castellana 95 - Planta 15 - Torre Europa 28046, Madrid |
Tel.: (+34) 91 515 0558
MéxicoEuler 152 PH Polanco, Miguel Hidalgo, CDMX (11560) | México D.F
Prol. Corregidora No. 338 Oficina 3 y 4 (76160) |Fracc. Alamos 3ra.
Sección, Querétaro, Qro. Tel.: (+ 52) 442 245 2151/52
PerúAvenida Larco 724 | Oficina 602 (C.P 1500) Miraflores, Lima | Tel.: (+ 511)
241-0293
UruguayYi 1807, (11800) Montevideo | Tel.: (+ 598) 29290315