Cadena de bloques, o cómo subvertir el sistema · La cadena de bloques, o cómo subvertir el...
Transcript of Cadena de bloques, o cómo subvertir el sistema · La cadena de bloques, o cómo subvertir el...
https://cybercamp.es
La cadena de bloques, o cómo
subvertir el sistema
Oscar DelgadoEurecat
2
Índice
1. ¿La cadena de qué?
2. Aplicaciones
a. Fintech
b. IoT
3. Ataques y vulnerabilidades
“Therefore, the key question is not how, but when the disruption will become far-reaching. As other industries that have been transformed by new technologies and digitization, blockchain technology could reshape the financial industry well beyond the payments system.”
Bitcoin, 2009
Satoshi Nakamoto
Bitcoin es una red de pagos y una moneda digitales
Anónima
No traceable
Transferencias (casi) inmediatas
Comisiones cero o muy reducidas
Descentralizada
Creada en 2009
Cadena de bloques
Bitcoin
Protocolo
Direcciones
Cadena de bloques
Pruebas de trabajo (PoW)
“Registro distribuido e inmutable de
datos”
¿Qué hace esta idea diferente?
No autoridad central
No fallo, no corrupción, no
prohibición=Primer algoritmo de consenso
distribuido
Fundamentos matemáticos
¿Qué aspectotiene?
Posibles usos
Notaría digital
Internet de las Cosas
Sector financiero
Notaría digital
• Ahorro de costes• Verificación en
cualquier momento y lugar
• Sin corrupción ni confianza en una tercera parte
Notaría digital
• Integridad, pero NO propiedad
• Sólo docssecretos
• Cualquiera puede enviar docs en nombre de otro
Usos derivados
• Crowfunding, acciones de compañías
• Contratos inteligentes: herencias
• Certificación de información en cadenas de producción y distribución
Democraciadigital 2.0
• Documentos oficiales en la cadena de bloques
• Sistemas de votación no manipulables, auditoría pública
Posibles usos
Notaría digital
Internet de las Cosas
Sector financiero
Internet de las Cosas
• Propiedades inteligentes• Alquiler, compra
Internet de las Cosas
• Micropagosentre dispositivos
Sector financiero
“Si hubiésemos tenido esta tecnología no hubiésemos padecido la crisis: transparencia”
Sector financiero
• Sustitución de la red SWIFT a nivel mundial
• Transferencias internacionales en 10 minutos
Bancos y blockchains
privados
• Ancho de banda (7 tps)
• No hay permisos de lectura ni escritura, ¡ni identidad!
• Ataque del 51% (25%)• Privacidad de la
información• Desarrollo libre,
impredecible e incontrolabe
• Cuestión reputacional
Blockchains públicos, semi-públicos y privados
Tipo de cadena
PermisoUsos Plataformas
Lectura Escritura
Pública Notaría digital, IoT Bitcoin
Semi-pública
Certificación cadenas
productivas
Ripple, Ethereum Auditoría
Privada Sistema de pagos
interbancarios
Sector financiero
Vulnerabilidades
Bugs software
EscalabilidadAtaque del
51%
Minado egoísta
Identidad
Bugs software
En general, OK, pero:• CVE-2010-5141, Junio 2010:
vulnerabilidad más peligrosa de la historia de Bitcoin, permitía gastar el dinero de otros
Bugs software
• Bloque 74638 (Agosto 2010) contiene una transacción con una salida de 184 billones de BTC:• Interger overflow en el código• Se solucionó con un patch y un fork
manual • Se observó un doble gasto de
10.000$
Bugs software
• Un fork en el bloque 225430 (Marzo 2013) debido a un error en la actualización del cliente:• Duró 6 horas• Se solucionó volviendo a una versión
anterior del cliente
Bugs software
• Mucha gente auditando el código con interés económico (el mejor incentivo)
• Poco probable que existan grandes bugs, pero sí ataques DoS
Escalabilidad
Nuevo bloque
(10 min)
Tamaño de bloque
(1MB)7 tps
VISA procesa 56.000 tps
Junio 201451%
¿Sigue Bitcoin siendo distribuido?
“Criptomoneda distribuida sin ninguna autoridad central”
“Criptomoneda controlada por unas pocas entidades (pools)”
Inconvenientes de los pools de minado
Protocolo Stratum: los mineros individuales pierden el control sobre los bloques que minan
• Al 99% no le importa• Consecuencias en
investigación
• Presentado en 2013• Idea: cuando mines un bloque,
no lo publiques• Con sólo un 25% del hashrate, la
estrategia permite ganar más de lo que correspondería
Ataque del minado egoísta
Escenario 0: Atacantes minan un bloque
Bloque n-1
Bloque n
Bloque n+1
α
1-α
Cadena pública
Cadena privada
Escenario 1: La cadena pública se recupera
Bloque n-1
Bloque n
Bloque n+1
Bloque n+1
Bloque n+2
Bloque n+1
Publica bloque
Cadena pública
Cadena privada
Atacantes no ganan nada
Escenario 2: Ambas partes ganan
Bloque n-1
Bloque n
Bloque n+1
Bloque n+1
Bloque n+2
Bloque n+1
Publica bloque
Cadena pública
Cadena privada
Atacantes y honestos ganan su bloque
Escenario 3: Los atacantes ganan
Bloque n-1
Bloque n
Bloque n+1
Bloque n+1
Bloque n+1
Publica bloque
Cadena pública
Cadena privada
Los atacantes ganan dos bloques
Bloque n+2
• Inicialmente el ataque haríala red más lenta y vulnerable al doble gasto
• Si ganara adeptos, la ventajadel pool egoísta podría serdefinitiva
Ataque del minado egoísta
¿Y los servicios colaborativos? • ¿Podría sustituir
servicios como AirBnB, Uber?
• Problema de la identidad
https://cybercamp.es @CyberCampEs#CyberCamp15