2. ¿Quién soy?
Philippe Camacho
• Francés, 10 años en Chile
• Desarrollador, Consultor
• Doctorado en Criptografía en la Universidad de Chile
• Co-fundador de comprabitcoin.com (2013)
• Unos de los primeros sitios de compra-venta de bitcoins
en América Latina
• Mucha prensa (estuvimos en Tele 13 )
• 3 miliones de USD de venta
• CREO QUE BITCOIN ESTA CAMBIANDO EL MUNDO
3. The first five times you think you
understand it, you don’t.
http://dankaminsky.com/2011/08/05/bo2k11/
9. ¿Pero quién invento Bitcoin?
No se sabe quien es...
Pero entre nosotros:
¡¿Que importa?!
http://www.newsweek.com/2014/03/14/face-behind-bitcoin-247957.html
13. Arreglo #2
La red Bitcoin comparte
una base de datos de transacciones
14. Solución #2
Origen Destino Monto
Homer Lisa 1 BTC
Homer Bart 2 BTC
Lisa Bart 1 BTC
… … …
La red chequea que la
cuenta tiene fondos
antes de autorizar la
transferencia.
15. Cada transacción tiene que ser pública.
¡Nadie va a querer usar este sistema que
revela todos nuestros movimientos
financieros!
26. Solución #4
Origen Destino Monto Firma
HhY67j81 Jh89HF8m 1 BTC Djsh767
HhY67J81 LaU4V6uU 2 BTC 8988dd
Jh89HF8m LaU4V6uU 1 BTC djDhd7n
… … …
Las direcciones bitcoin se
calculan a partir de la clave
pública
Mensaje
27. ¿Que significa
“Soy dueño de 30 BTC”?
Tu conoces la clave privada
asociada a una clave pública
(≈dirección bitcoin)
cuyo balance es 30 BTC.
Tu eres el único a conocer esa
clave privada.
1
2
28. Entonces…
2 cosas feas te pueden pasar
Pierdes la clave privada
Alguien te roba la clave
privada y transfiere todos
tus bitcoins a otra
dirección
1
2
29. Cliente Local (el clásico)
• Tu clave privada
esta en tu computador
• Tienes todo el control sobre
tu clave privada
• No muy practico
– Hay que bajar todo el historial
de transacciones
(5 dias, 25+ gigas)
31. E-Wallet
• Tipo 1:
– Tu no tienes acceso a la clave privada
– Ejemplos
• Coinbase.com
• XAPO.com
– Es como un Banco
• Tipo 2:
– Tu clave privada se almacena encriptada en
el servidor
– Solamente tu tienes acceso a la clave
privada gracias a tu password
– Ejemplo
• Blockchain.info
– Mejor balance entre seguridad y
conveniencia
32. Brainwallet
• Genera clave privada desde
una password larga
• Sencillo
– Solamente hay
que recordar la password
– Solo requiere navegador
• OJO: cualquiera puede hacer un
ataque de fuerza bruta
sobre tu password
33. Offline
(¡lo más seguro… y menos práctico!)
https://bitcoinarmory.com/using-offline-wallets-in-armory/
34. En la práctica
• Comprar/vender bitcoins
– http://Localbitcoins.com
– https://Bitstamp.net
– http://www.yaykuy.cl/
– https://comprabitcoin.com
– http://bitcoin-chile.com/
– https://chilebitcoin.cl/
– ...
• Usar bitcoins
– coinmap.org
– http://noticias.patabit.com
(Javier esta armando una lista de negocios
que aceptan bitcoin en Chile)
La dirección
donde vas a
recibir tus
bitcoins
35. En la práctica
• Aceptar bitcoins en tu negocio
– Muy sencillo
• API Blockchain
• Bitpay.com
• Coinbase.com
– Otras ventaja
• Los pagos no se pueden revertir
• Comisiones muy bajas
• Disponible en todos los países del mundo
• Mejor experiencia de usuario
36. Todavía puedo hacer cosas muy malas....
¿Que tal publicar una falsa historia de las
transacciones?
38. Arreglo #5:
Funciones de Hash Criptográficas
H
011100011100011101
000101010001001000
110101010010110011
001111000111001000
0101000101110
11011010110100111
Entrada grande
Salida de tamaño fijo
(ej: 256 bits)
39. Arreglo #5:
Funciones de Hash Criptográficas
• Propiedades de seguridad
– Unidireccional
• Dada la salida y es difícil
calcular una entrada x tal
que H(x) = y
– Collision-Resistant
• Es difícil encontrar dos
valores distintos x,x’ tal que
H(x)=H(x’)
40. Solución #5
HH H
Tx1;
Tx2;
Tx3…
Valor inicial
(coinbase)
Tx34;
Tx35;
Tx36…
Tx54;
Tx55;
Tx56…
Bloque de
transacciones
Cadena de bloques (Block chain)
…
42. Demostración de Esfuerzo
(Proof of Work)
00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
01010
01011
01100
01101
01110
01111
10000
10001
10010
10011
10100
10101
10110
10111
11000
11001
11010
11011
11100
11101
11110
11111
H1001101|| x 000||10
Encuentra el valor x tal que
la salida empieza
con 3 zeros.
La única forma (*) de calcular
este valor tal que la salida
empiece por 𝒏 zeros es intentar
al alrededor de 𝟐 𝒏 veces.
(*) Si lo logras de otra manera
puedes (1) volverte rico, (2) famoso (Premio Turing), o (3) ambas cosas...
43. Solución #5
• El primer nodo que logra a
resolver el puzzle
computacional gana el bloque
• La red extiende la cadena a
partir de este nuevo bloque
• La red siempre elige extender la
cadena más larga
¡Diablos!
Necesito controlar
51% del poder
computacional de la red (*)
(*) No es tan así… => Majority is not Enough: Bitcoin Mining is Vulnerable http://arxiv.org/abs/1311.0243
49. ¡Gracias!
• Feedback, preguntas a
philippe.camacho@gmail.com
• "I am very intrigued by Bitcoin. It has all the
signs. Paradigm shift, hackers love it, yet it's
derided as a toy. Just like microcomputers."
Paul Graham (YCombinator)