yaiza rubio @yrubiosec félix brezo @febrezo - cybercamp.es · ¿en qué se basa blockchain? a...

66
#CyberCamp17 Blockchain y el gato de Schrödinger Yaiza Rubio @yrubiosec Félix Brezo @febrezo

Upload: others

Post on 30-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

#CyberCamp17

Blockchain y el gato de Schrödinger

Yaiza Rubio @yrubiosec

Félix Brezo @febrezo

Page 2: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

2

¿Por qué Shrödinger?

Hasta que no miremos dentro del búnker, no sabremos si el gato está: vivo o muerto

Page 3: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

3

¿Por qué Shrödinger?

Al final puede ser que nuestra curiosidad sea la que termine matando al gato

Page 4: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

4

La tecnología como herramienta

Ahora podemos apoyarnos en la tecnología para reducir esa incertidumbre

Page 5: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

5

El software libre y los sistemas descentralizados

La transparencia del software libre es una herramienta que afronta el problema de la desconfianza hacia actores de los que no nos fiamos.

Se tiene más control sobre lo que se ejecuta y se ponen trabas al control central.

Page 6: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

6

¿En qué se basa blockchain?

A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave privada.

La información de la transacción es notificada al resto de nodos de la red.

Tras validarla, uno de los nodos será el encargado de añadirla en un nuevo bloque a la blockchain.

Los nuevos bloques serán encadenados con los anteriores y esta ampliación de la

cadena será notificada al resto de

nodos de la red. B podrá hacer uso de los bitcoins recibidos de A ahora que ya consta que los tiene.

Para entender blockchain hay que pensar en la tecnología como un registro contable y entender la figura de las transacciones, bloques y direcciones.

Page 7: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

7

¿Cómo se dice quién añade el próximo bloque?

La prueba de trabajo (PoW)

Para añadir bloques, los nodos tienen que resolver un problema matemático. Por tanto, a más capacidad de cómputo para resolverlo, más probabilidades tenemos de añadir nuevos bloques.

¿Por qué es necesario? Para distribuir el proceso de generación de nuevas monedas en un entorno en el que no se confía en el resto de nodos.

Las alternativas

Proof of stake

La capacidad de añadir bloques no depende de la capacidad de cómputo y es proporcional a la cantidad de monedas que uno ya tiene acumuladas.

Page 8: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

8

Page 9: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

9

¿Por qué no intentamos minar nosotros mismos?

https://blockchain.info/address/1X7QiyHEwiKUycv58ibw7raNB9SvCwRwz

Pool 2Pool 1Nodo aislado

Page 10: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

10

¿Por qué no intentamos minar nosotros mismos?

Ready?

Pool 2Pool 1Nodo aislado

Page 11: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

11

¿Por qué no intentamos minar nosotros mismos?

Operación a resolver: buscar un número que sea divisible por 7 y por 5 y que sea superior a 1000 e inferior a 2000

Pool 2Pool 1Nodo aislado

Page 12: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

12

¡Habemus ganador!

Page 13: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

¿Cómo almacenar esas claves?

13

En carteras o eWallets

Page 14: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

¿Cómo almacenar esas claves?

14

Tipos de carteras

https://pastebin.com/AwE2B52m

Page 15: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

¿Cómo almacenar esas claves?

15

Tipos de carteras

Page 16: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

¿Cómo almacenar esas claves?

16

Tipos de carteras

Page 17: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

¿Cómo almacenar esas claves?

17

Malware que roba carteras

Bitcoin GOLD

Page 18: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

18

Los incentivos de los mineros

Page 19: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

19

Los incentivos de los mineros

Acuñación de nuevas monedas

Comisiones pagadas por usuarios

RECOMPENSA PARA EL MINERO

+

¿Qué recompensas existen para quienes colaboran en la red?

Page 20: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

20

¿Qué pinta tiene un bloque?

Pa

La primera transacción registrada en la blockchain no vinculada a la generación de nuevas monedas fue realizada y atribuida originalmente a Satoshi Nakamoto y ‘Hal’ Finney tres días después.

La primera operación registrada en la blockchain de Bitcoin es la del bloque 1, registrado el 9 de enero de 2009, en la que se minaron los primeros 50 bitcoins.

Page 21: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

21

La generación no es infinita

Cada 210000 bloques se divide la recompensa por generación. El límite son 21 millones

Page 22: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

22

¿Pero qué alicientes habrá cuando se dejen de acuñar monedas?

¡Las comisiones!

Los usuarios pagarán comisiones más altas para conseguir que sus transacciones sean añadidas con

más rapidez.

Page 23: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

23

¿Cuánto suponen las comisiones para un minero?

15%Desde el 1 de enero de 2017, las comisiones

suponen aprox. el 15% del total que recauda un

minero por añadir un nuevo bloque:

12,5 BTC por acuñar

2 BTC por comisiones

Page 24: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

24

¡Viajemos al futuro!

Pero, ¿cuánto supondrían las comisiones si el próximo halving fuera mañana?

Page 25: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

25

¿Cuánto supondrán esas comisiones para los mineros?

25%Si suponemos que las

circunstancias de mercado fueran

similares, el importe relativo a las comisiones

significaría una parte mayor:

6,25 BTC por acuñar

2 BTC por comisiones

Page 26: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

26

¿Qué influye en el precio de unacomisión?

O

Espacio en cada bloque (Q)

Comisión a pagar

(P)

Page 27: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

27

¿Qué influye en el precio de unacomisión?

O

Espacio en cada bloque (Q)

Comisión a pagar

(P)

¡La oferta es fija!Justo 1 MB

Page 28: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

28

¿Qué influye en el precio de unacomisión?

O

Espacio en cada bloque (Q)

Comisión a pagar

(P)

¡La oferta es fija!Justo 1 MB

D

Page 29: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

29

¿Qué influye en el precio de unacomisión?

O

Espacio en cada bloque (Q)

Comisión a pagar

(P)

¡La oferta es fija!Justo 1 MB

D

Page 30: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

30

¿Qué influye en el precio de unacomisión?

O

Espacio en cada bloque (Q)

Comisión a pagar

(P)

¡La oferta es fija!Justo 1 MB

D

Page 31: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

31

Tamaño medio de los bloques añadidos

Page 32: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

32

¿Y si las importamos a la vez?

1Le4NbBwoV5AqMJ4R2SyyHceFPW1zouAhP

Page 33: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

33

¿Y si las importamos a la vez?

1Le4NbBwoV5AqMJ4R2SyyHceFPW1zouAhP

Page 34: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

34

Los forks

HARDFORK Vs. SOFTFORK 8 MB / bloque

Page 35: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

35

Los hard forks

1 2 … n-2 n-1 n

Durante 8 años hubo consenso sobre las reglas que debían

regular el ecosistema de Bitcoin

Page 36: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

36

Los hard forks

1 2 … n-2 n-1 n

n+1 n+2

n+1 n+2

Las discrepancias sobre cómo afrontar los problemas dan lugar a dos protocolos diferentes: los bitcoins ahora se pueden gastar

en dos cadenas

Page 37: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

37

Los hard forks

1 2 … n-2 n-1 n

n+1 n+2 n+4 n+5 n+6

n+1 n+2 n+3 n+4 n+5 n+6

n+3

n+4 n+5 n+6

O incluso a nuevas soluciones basadas en las anteriores como

ocurre con Bitcoin Gold

Page 38: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

38

Los soft forks

A diferencia de lo que ocurre en los hard forks, los nodos que no se actualizan siguen aceptando como

bloques válidos aquellos que contienen transacciones que siguen las nuevas reglas

Page 39: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

39

Las diferentes implementaciones

El hecho de que el código sea libre facilita la proliferación de nuevas criptodivisas.

En junio de 2013 ya existían 82 criptodivisas basadas en solamente en el código de fuente de Bitcoin.

Coinmarketcap.com ya lista hoy 1167 distintas.

Page 40: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

40

Los costes de la minería

La energía consumida por la red de Bitcoin

se dispara.

Page 41: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

41

Regiones con menor consumo energético anual que la red de Bitcoin

Page 42: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

42

¿Y si nos ahorramos la energía?

El malware que se dedica a la minería no es reciente aprovechando que el atacante no paga esa electricidad.

Ha habido diferentes familias que han implementado funcionalidades diferentes.

Photominer MoneroMiner MinerGate DiscordiaMiner CoinMiner

Page 43: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

43

¿Y si nos ahorramos la energía?

Page 44: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

44

¿Una nueva forma de financiación?

Existen proyectos destinados a cargar Javascript de minado de Monero que se ejecutan mientras el usuario visita una web

coinhive.min.js056914e579e9ecb82809850f5eff8265

30% de comisiónhttps://coinhive.com/lib/coinhive.min.js

miner.min.jsc0ee8328586ed8f4ee2ef954a28128aa

12% de comisiónhttps://crypto-loot.com/lib/miner.min.js

Page 45: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

45

¿Una nueva forma de financiación?Extensiones como No Coin bloquean las conexiones a sitios asociados con

prácticas de minería disponible para Firefox, Google Chrome y Opera.

Page 46: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

46

El caso de uso inicialPa<

SISTEMAS DE PAGO (también en el mundo real)

En mayo de 2010, el usuario de Bitcointalk Laszlo planteó que pagaría 10000 bitcoins a quien le enviara dos pizzas a su domicilio.

Existen cuentas de Twitter que siguen diariamente el valor de aquella operación.

Desde entonces algunos celebran el día 22 de mayo como el Bitcoin pizza day.

https://coinmap.org https://localbitcoins.com/buy_bitcoins

Page 47: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

47

Más allá de los pagos:OP_RETURN

"scriptPubKey" : { "asm" : "OP_RETURN 636861726c6579206c6f766573206865696469", "hex" : "6a13636861726c6579206c6f766573206865696469", "type" : "nulldata" }

Es una funcionalidad incorporada en 2013 con el objetivo de almacenar una pequeña parte de información (80 bytes) en la cadena de bloques.

> bitcoind getrawtransaction 8bae12b5f4c088d940733dcd1455efc6a3a69cf9340e17a981286d3778615684 1

>>> deserialize(d){

"inputs": [ { "address": "1HnhWpkMHMjgt167kvgcPyurMmsCQ2WPgg", …

"outputs": [ { "address": "j\u0013charley loves heidi", "prevout_n": 0, "scriptPubKey": "6a13636861726c6579206c6f766573206865696469", "type": 2, "value": 0 }, { "address": "1HnhWpkMHMjgt167kvgcPyurMmsCQ2WPgg", "prevout_n": 1, "scriptPubKey": "76a914b8268ce4d481413c4e848ff353cd16104291c45b88ac", "type": 0, "value": 200000 }

],"version": 1

Page 48: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

48

Anclaje en la blockchain de Bitcoin

En proyectos como coinsecrets.org se enumeran los mensajes que se incluyen en las

distintas transacciones registradas en la cadena de

bloques de Bitcoin.

También cuenta con un servicio para consultar la información de

la Testnet.

Page 49: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

49

Otro proyecto que usa OP_RETURN

Herramienta que acredita ante terceros que algo ya fue ideado

anteriormente

https://poex.io/

Proof of Existence

Page 50: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

50

¿Se podría utilizar esta persistencia con

fines maliciosos?

Page 51: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

51

La historia de los C&C

Redes centralizadas

Con la aparición de las redes sociales, surgió otra forma de comunicarse con los nodos infectados.

La comunicación con el C&C queda oculta en el bosque de información legítima enviada a través de redes sociales.

Todos los nodos periféricos se comunican con el central. Su caída priva de comunicaciones al resto.

Este tipo de modelo cliente-servidor fue de los primeros en aparecer.

Se publican a través de chats IRC los comandos que deberán ejecutar los nodos infectados.

El uso de servidores web ha facilitado a los administradores el proceso de gestión de una botnet al proveerles de una interfaz desde la que controlar los equipos infectados.

Este tipo de modelo cliente-servidor también fue de los primeros en aparecer.

Page 52: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

52

Un problema compartido tambiénpara quien difunde propaganda

PaLa agencia de noticias AMAQ ha estado utilizando extensiones de navegador para facilitar a sus seguidores el acceso a sus páginas web a modo de intermediario para localizar sus sitios web.

Usuario radicalizable

Administrador de propaganda

Page 53: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

53

PaLa agencia de noticias AMAQ ha estado utilizando extensiones de navegador para facilitar a sus seguidores el acceso a sus páginas web a modo de intermediario para localizar sus sitios web.

Administrador de propaganda

Usuario radicalizable

Un problema compartido tambiénpara quien difunde propaganda

Page 54: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

54

PaLa agencia de noticias AMAQ ha estado utilizando extensiones de navegador para facilitar a sus seguidores el acceso a sus páginas web a modo de intermediario para localizar sus sitios web.

Administrador de propaganda

Usuario radicalizable

Un problema compartido tambiénpara quien difunde propaganda

Page 55: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

55

¿Cómo funcionaba su extensión?

Las extensiones de Firefox son ficheros .zip a los que se modifica la extensión a .xpi por lo que se pueden descomprimir.

Desde el punto de vista del atacante, el problema reside en si se intercepta el servidor al que se conecta la extensión ya que conllevaría la anulación de capacidades porque NO hay actualizaciones automáticas.

La extensión de navegador

Page 56: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

56

El software de la PoC

El código está subido a Github

https://github.com/i3visio/blockchain_c2c

Una aplicación escrita en Python que permite generar transacciones con el código OP_RETURN para enviarla a la

cadena de bloques

Clientes en JavaScript y en Python que ejecutan las órdenes almacenadas en la

cadena de bloques

Page 57: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

57

Los dos extremos

EL ADMINISTRADOR LA VÍCTIMA

El admin hace una transacción en la que una de las salidas contiene el OP_RETURN con la orden a ejecutar.

n4av4Y5AfGePBJFQzmzwhKbCnr2k4nJbDh

[cybercamp]

n4av4Y5AfGePBJFQzmzwhKbCnr2k4nJbDh

[cybercamp]

OP_RETURN: calc.exe1 XTN

Los nodos infectados se conectan a un proveedor de consultas de la cadena de bloques para conocer las órdenes a ejecutar.

Page 58: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

58

Page 59: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

59

¿No son suficientes 80 bytes?

Guardando punteros que se apoyen en otras tecnologías que también garanticen la descentralización.

Apoyándonos en IPFS, una tecnología P2P que se ha ganado fama últimamente tras ser utilizada por los organizadores del referéndum el 1 de octubre para evitar la censura.

¿Cómo almacenamos muchos datos?

Page 60: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

60

¿No son suficientes 80 bytes?

Puedes acceder a la información siendo

nodo de la red o a través de pasarelas

como ipfs.io

https://ipfs.io/ipfs/QmNkCPtUqgixSNrzzxoibabPuiMLu41bwA4cXbgd8AFKHG

Page 61: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

61

Otros proyectos

¡El primer fork! En su cadena de bloques se almacenan hasta 520 bytes de información y se pueden

registrar tanto dominios como usuarios.

https://namecha.in/

Plataforma de computación distribuida que complementa

funciones de contratos inteligentes. https://etherscan.io/

¿Una PoC? ¡Una porra!

Protocolo de comunicación descentralizado y cifrado. Permite la comunicación con otros miembros en el que para recibir un mensaje deberá

descifrar todos los mensajes de la red.

https://github.com/Bitmessage/PyBitmessage

Page 62: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

62

Los casos de uso

Identidad digital

Cadena de suministro

Internet de las cosas

Smart contracts

Propiedad intelectual

Page 63: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

63

Las ICO

Es la oferta inicial que se da a una moneda.

Los desarrolladores realizan un pre-minado y ofrecen la nueva moneda a cambio de otras a inversores iniciales.

Los desarrolladores hacen un pre-minado y ofrecen la moneda o token a inversores iniciales en condiciones ventajosas (¡siempre que la criptodivisa se consolide!).

Se equipara a una salida a bolsa desregulada y con riesgos:

● Inseguridad en la implementación de la divisa (DAO)● Declarado ilegal por gobiernos (China)● Las monedas no valgan nada

Page 64: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

64

Para la mecánica cuántica…

El gatito está vivo y muerto al mismo tiempo

Page 65: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

65

Una historia muy humana

Blockchain es la continuación de una historia muy humana: conseguir disminuir la incertidumbre

Las utilidades de blockchain son las que son: persistencia, trazabilidad, integridad de la información o eliminar intermediarios

Page 66: Yaiza Rubio @yrubiosec Félix Brezo @febrezo - cybercamp.es · ¿En qué se basa blockchain? A quiere mandar bitcoins a B. Alicia creará una transacción firmándola con su clave

Gracias por su atención