SlideShare una empresa de Scribd logo
1 de 62
Descargar para leer sin conexión
Por: Alberto Gómez Toribio @gotoalberto
- Son activos que son valiosos por su escasez
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
- El primero en utilizarse fue el Oro por su escasez
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
- El primero en utilizarse fue el Oro por su escasez
- Se crea la moneda Fiducidaria: Los gobiernos emiten
titulos a cambio de oro.
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
- El primero en utilizarse fue el Oro por su escasez
- Se crea la moneda Fiducidaria: Los gobiernos emiten
títulos a cambio de oro.
- Nadie viene a reclamar ese oro con su título:
¿Emitimos títulos sin respaldo a cambio de ese oro?
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
- El primero en utilizarse fue el Oro por su escasez
- Se crea la moneda Fiducidaria: Los gobiernos emiten
títulos a cambio de oro.
- Nadie viene a reclamar ese oro con su título:
¿Emitimos títulos sin respaldo a cambio de ese oro?
- En 1971, Nixon dice que se acabó reclamar ese oro y
convierte la moneda Fiducidaria en moneda FIAT,
basada en la deuda.
#bitcoindevspain
¿Qué es el dinero?
- Son activos que son valiosos por su escasez
- Sirven para intercambiarlos por bienes y servicios
- El primero en utilizarse fue el Oro por su escasez
- Se crea la moneda Fiducidaria: Los gobiernos emiten
títulos a cambio de oro.
- Nadie viene a reclamar ese oro con su título:
¿Emitimos títulos sin respaldo a cambio de ese oro?
- En 1971, Nixon dice que se acabó reclamar ese oro y
convierte la moneda Fiducidaria en moneda FIAT,
basada en la deuda.
- Los bancos centrales controlan la divisa.
#bitcoindevspain
¿Qué es el dinero?
- Es una moneda electrónica.
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
- Tiene las mismas propiedades que una moneda física.
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
- Tiene las mismas propiedades que una moneda física.
- El dinero se transfiere de persona a persona de forma
irreversible.
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
- Tiene las mismas propiedades que una moneda física.
- El dinero se transfiere de persona a persona de forma
irreversible.
- Está limitada, no se pueden crear más de 21M de BTC
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
- Tiene las mismas propiedades que una moneda física.
- El dinero se transfiere de persona a persona de forma
irreversible.
- Está limitada, no se pueden crear más de 21M de BTC.
- Es divisible, habitualmente hablamos de mBTC o uBTC.
#bitcoindevspain
¿Qué es el Bitcoin ?
- Es una moneda electrónica.
- No tiene autoridad central (Banco Central), se basa en un
sistema descentralizado.
- Tiene las mismas propiedades que una moneda física.
- El dinero se transfiere de persona a persona de forma
irreversible.
- Está limitada, no se pueden crear más de 21M de BTC.
- Es divisible, habitualmente hablamos de mBTC o uBTC.
- Propone un modelo deflaccionario frente a la inflacción
infinita.
#bitcoindevspain
¿Qué es el Bitcoin ?
#bitcoindevspain
Principios de las monedas
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
#bitcoindevspain
ORO EURO BITCOIN
ESCASEZ
PORTABILIDAD
FUNGIBILIDAD
VERIFICACION
DIVISIBILIDAD
PRIVACIDAD
ACEPTACION
Principios de las monedas
- Sirven para firmar transacciones y operar con el dinero.
#bitcoindevspain
Bitcoin Addresses
- Sirven para firmar transacciones y operar con el dinero.
- Criptografía de Curva Elíptica: Sin aceleración de hardware.
#bitcoindevspain
Bitcoin Addresses
- Sirven para firmar transacciones y operar con el dinero.
- Criptografía de Curva Elíptica: Sin aceleración de hardware.
- Podemos generar la clave pública a partir de la privada.
#bitcoindevspain
Bitcoin Addresses
- Sirven para firmar transacciones y operar con el dinero.
- Criptografía de Curva Elíptica: Sin aceleración de hardware.
- Podemos generar la clave pública a partir de la privada.
- El minero las almacena en un fichero llamado wallet.
#bitcoindevspain
Bitcoin Addresses
- Sirven para firmar transacciones y operar con el dinero.
- Criptografía de Curva Elíptica: Sin aceleración de hardware.
- Podemos generar la clave pública a partir de la privada.
- El minero las almacena en un fichero llamado wallet.
- Para generar un cheque, nos basta con imprimir la clave
privada en formato QR.
#bitcoindevspain
Bitcoin Addresses
- Son movimientos de dinero firmados digitalmente.
#bitcoindevspain
Transacciones
- Son movimientos de dinero firmados digitalmente.
- Habitualmente el minero genera y firma la transacción,
pero las transacciones pueden ser firmadas offline.
#bitcoindevspain
Transacciones
- Son movimientos de dinero firmados digitalmente.
- Habitualmente el minero genera y firma la transacción,
pero las transacciones pueden ser firmadas offline.
- La transacción es enviada a un minero y replicada, cuando
el 51% de los mineros la replica, se confía en que se
insertará en la blockchain.
#bitcoindevspain
Transacciones
- Son movimientos de dinero firmados digitalmente.
- Habitualmente el minero genera y firma la transacción,
pero las transacciones pueden ser firmadas offline.
- La transacción es enviada a un minero y replicada, cuando
el 51% de los mineros la replica, se confía en que se
insertará en la blockchain.
- ¿Y si alguien controla el 51% de la red?
#bitcoindevspain
Transacciones
- Son movimientos de dinero firmados digitalmente.
- Habitualmente el minero genera y firma la transacción,
pero las transacciones pueden ser firmadas offline.
- La transacción es enviada a un minero y replicada, cuando
el 51% de los mineros la replica, se confía en que se
insertará en la blockchain.
- ¿Y si alguien controla el 51% de la red?
#bitcoindevspain
Transacciones
#bitcoindevspain
Transacciones
Prev Output Amount From Type ScriptSig
6d020afb… 44,22 1BD5b401… Address A3a6748d…
Index Amount To Type ScriptPubKey
0 44,219998 1NC83Jv… Address Bfa5263e1f…
1 0,000012 1JUKuRz… Address 6a0d4ed87…
Outputs
Inputs
- Existe la necesidad de codificar mensajes en las
transacciones.
#bitcoindevspain
Messaging
- Existe la necesidad de codificar mensajes en las
transacciones.
- Los mensajes quedan almacenados permanentemente.
#bitcoindevspain
Messaging
- Existe la necesidad de codificar mensajes en las
transacciones.
- Los mensajes quedan almacenados permanentemente.
- Algunos comienzan añadiendo un OutputScript adicional
donde codifican un mensaje UTF-8 serializado en Base64.
#bitcoindevspain
Messaging
- Existe la necesidad de codificar mensajes en las
transacciones.
- Los mensajes quedan almacenados permanentemente.
- Algunos comienzan añadiendo un OutputScript adicional
donde codifican un mensaje UTF-8 serializado en Base64.
- Blockchain.info toma la iniciativa y desarrolla su propio
sistema de messaging.
#bitcoindevspain
Messaging
- Existe la necesidad de codificar mensajes en las
transacciones.
- Los mensajes quedan almacenados permanentemente.
- Algunos comienzan añadiendo un OutputScript adicional
donde codifican un mensaje UTF-8 serializado en Base64.
- Blockchain.info toma la iniciativa y desarrolla su propio
sistema de messaging.
- En 2011 se libera la versión 1.0 del BTCmsg Protocol
- 2 primeros caracteres del output script indican si hay mensaje (02) o no(01)
- El mensaje se codifica en Hexadecimal
- Cada grupo de 4 chars hex representan 2 letras ASCII), valores entre 0xffff y 0x65535.
(Enseñar btcmsgTools)
#bitcoindevspain
Messaging
- La BlockChain es una lista de todas las transacciones
hechas en Bitcoin, particionadas en bloques y almacenada
de forma distribuida.
#bitcoindevspain
Blockchain
- La BlockChain es una lista de todas las transacciones
hechas en Bitcoin, particionadas en bloques y almacenada
de forma distribuida.
- Cuando un bloque es generado, las transacciones que aún
no han sido insertadas en ninguno y que están siendo
replicadas temporalmente por los mineros, se validan.
#bitcoindevspain
Blockchain
- La BlockChain es una lista de todas las transacciones
hechas en Bitcoin, particionadas en bloques y almacenada
de forma distribuida.
- Cuando un bloque es generado, las transacciones que aún
no han sido insertadas en ninguno y que están siendo
replicadas temporalmente por los mineros, se validan.
- Puede haber varias cadenas, pero los mineros escuchan la
mas larga y descartan el resto.
#bitcoindevspain
Blockchain
- La BlockChain es una lista de todas las transacciones
hechas en Bitcoin, particionadas en bloques y almacenada
de forma distribuida.
- Cuando un bloque es generado, las transacciones que aún
no han sido insertadas en ninguno y que están siendo
replicadas temporalmente por los mineros, se validan.
- Puede haber varias cadenas, pero los mineros escuchan la
mas larga y descartan el resto.
- Generar un bloque requiere mucha capacidad de cómputo,
tiempo y dinero, crear una cadena más larga que la actual
desde cero es altamente improbable.
#bitcoindevspain
Blockchain
- “Minar” es generar colisiones en funciones Hash SHA256.
#bitcoindevspain
Minería
- “Minar” es generar colisiones en funciones Hash SHA256.
- La minería consiste en generar el siguiente bloque de la
cadena de bloques, tal que:
- ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE)
- ID_NUEVO_BLOQUE debe ser un hash SHA2 válido.
- ID_NUEVO_BLOQUE debe comenzar por N ceros.
#bitcoindevspain
Minería
- “Minar” es generar colisiones en funciones Hash SHA256.
- La minería consiste en generar el siguiente bloque de la
cadena de bloques, tal que:
- ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE)
- ID_NUEVO_BLOQUE debe ser un hash SHA2 válido.
- ID_NUEVO_BLOQUE debe comenzar por N ceros.
- La minería genera dinero mediante:
- Cada nuevo bloque permite generar 25BTC que se queda el minero.
- El minero se queda con la comisión donada en cada transacción.
#bitcoindevspain
Minería
- “Minar” es generar colisiones en funciones Hash SHA256.
- La minería consiste en generar el siguiente bloque de la
cadena de bloques, tal que:
- ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE)
- ID_NUEVO_BLOQUE debe ser un hash SHA2 válido.
- ID_NUEVO_BLOQUE debe comenzar por N ceros.
- La minería genera dinero mediante:
- Cada nuevo bloque permite generar 25BTC que se queda el minero.
- El minero se queda con la comisión donada en cada transacción.
- Si se generan dos bloques a la vez, el más complejo
prospera (el que tiene mas ceros al principio).
#bitcoindevspain
Minería
- “Minar” es generar colisiones en funciones Hash SHA256.
- La minería consiste en generar el siguiente bloque de la
cadena de bloques, tal que:
- ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE)
- ID_NUEVO_BLOQUE debe ser un hash SHA2 válido.
- ID_NUEVO_BLOQUE debe comenzar por N ceros.
- La minería genera dinero mediante:
- Cada nuevo bloque permite generar 25BTC que se queda el minero.
- El minero se queda con la comisión donada en cada transacción.
- Si se generan dos bloques a la vez, el más complejo
prospera (el que tiene mas ceros al principio).
- Si se generan bloques idénticos:
- La La cadena más compleja prospera.
#bitcoindevspain
Minería
#bitcoindevspain
Minería
- El cliente minero de Bitcoin dispone de un API RPC-JSON
- Podemos usar un cliente propio o utilizar un API de
terceros como la de Blockchain.info.
- Configuración necesaria en el fichero bitcoin.conf:
server=1
rpcuser=username
rpcpassword=password
rpcport=8332
- En MacOS el fichero no existe, y debe crearse en:
/Users/$USER/Library/Application Support/Bitcoin
#bitcoindevspain
Bitcoin RPC API
- Las principales instrucciones son:
<readable json> decoderawtransaction <hex string>
<private key> dumpprivkey <accountName>
<accountName> getbalance <accountName, confirmations>
<public key> getnewaddress <accountName>
<hex string> getrawtransaction <transaction id>
<transaction id> sendfrom <from accountName, to public
key, amount, comment>
<hex string> signrawtransaction <{…json tx data…}>
<transaction id> sendrawtransaction <hex string>
<hex string> createrawtransaction <hex string>
#bitcoindevspain
Bitcoin RPC API
- Añadir clave privada existente:
$ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method":
"importprivkey", "params": ["PRIVATEKEY","alias"] }' -H 'content-
type: text/plain;' http://bitcoin:password@127.0.0.1:8332
- Consultar la clave publica de la cuenta que acabamos de añadir:
$ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method":
"getaddressesbyaccount", "params": ["ACCOUNT_NAME"] }' -H 'content-
type: text/plain;' http://bitcoin:password@127.0.0.1:8332
- Enviar dinero
$ curl --data-binary '{"jsonrpc": ".0", "id":"rpc", "method":
"sendfrom", "params": ["FROM_ACCOUNTNAME", "TO_PUBLIC_KEY",AMOUNT]
}' -H 'content-type: text/plain;'
http://bitcoin:password@127.0.0.1:8332
#bitcoindevspain
Bitcoin RPC API
- Obtenemos la transacción en RAW
$ curl --data-binary '{"jsonrpc": "1.0", "id":"getrawtransaction",
"method": "getrawtransaction", "params": [”TRANSACTION_ID"] }' -H
'content-type: text/plain;' http://bitcoin:password@127.0.0.1:8332
- Decodificamos la transacción en RAW:
$ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method":
"decoderawtransaction", "params": ["HEX_TRANSACTION"] }' -H
'content-type: text/plain;' http://bitcoin:password@127.0.0.1:8332
#bitcoindevspain
Bitcoin RPC API
BONUS! HANDS ON LAB!
Juego de Piedra-Papel-Tijera-Lagarto-Spock que exige
un pago en BTC si pierdes y envía dinero en BTC si
ganas :)
#bitcoindevspain
Codigo: https://github.com/gotoalberto/bitcoin-rock
- La cadena de bloques ocupa aproximadamente 40GB que
se almacena de forma distribuida.
#bitcoindevspain
Algunos datos…
- La cadena de bloques ocupa aproximadamente 40GB que
se almacena de forma distribuida.
- Bitcoin mueve más de 24K € por minuto en transacciones
a día de hoy (con una cotización a 1BTC/90€).
#bitcoindevspain
Algunos datos…
- La cadena de bloques ocupa aproximadamente 40GB que
se almacena de forma distribuida.
- Bitcoin mueve más de 24K € por minuto en transacciones
a día de hoy (con una cotización a 1BTC/90€).
- Bitcoin tiene de media 51K transacciones diarias. (Sí,
soporta muchas mas, ver Escalabilidad en Bitcoin Wiki)
#bitcoindevspain
Algunos datos…
- La cadena de bloques ocupa aproximadamente 40GB que
se almacena de forma distribuida.
- Bitcoin mueve más de 24K € por minuto en transacciones
a día de hoy (con una cotización a 1BTC/90€).
- Bitcoin tiene de media 51K transacciones diarias. (Sí,
soporta muchas mas, ver Escalabilidad en Bitcoin Wiki)
- La media es de 5.000 € por transaccion y 35
transacciones por minuto.
#bitcoindevspain
Algunos datos…
- La cadena de bloques ocupa aproximadamente 40GB que
se almacena de forma distribuida.
- Bitcoin mueve más de 24K € por minuto en transacciones
a día de hoy (con una cotización a 1BTC/90€).
- Bitcoin tiene de media 51K transacciones diarias. (Sí,
soporta muchas mas, ver Escalabilidad en Bitcoin Wiki)
- La media es de 5.000 € por transaccion y 35
transacciones por minuto.
- Un minero gana de media 2500€ por genererar un bloque
y 30€ en comisiones (con una cotización de a 1BTC/90€)
#bitcoindevspain
Algunos datos…
Fuente: Blockchain.info
{
"jsonrpc” : "1.0",
"id” : "rpc",
"method” : "terminate", "params”
: [
”this_conference”
]
}
:=)

Más contenido relacionado

La actualidad más candente

Bitcoins La moneda del futuro
Bitcoins La moneda del futuroBitcoins La moneda del futuro
Bitcoins La moneda del futuroRicardo Diaz
 
Informe de Inteco sobre BITCOIN: Una moneda criptográfica
Informe de Inteco sobre BITCOIN: Una moneda criptográficaInforme de Inteco sobre BITCOIN: Una moneda criptográfica
Informe de Inteco sobre BITCOIN: Una moneda criptográficaSantiago Limonche
 
Bitcoin introduction, El Corte Inglés
Bitcoin introduction, El Corte InglésBitcoin introduction, El Corte Inglés
Bitcoin introduction, El Corte InglésAlberto Gomez Toribio
 
Descubre los secretos de blockchain y las criptomonedas
Descubre los secretos de blockchain y las criptomonedasDescubre los secretos de blockchain y las criptomonedas
Descubre los secretos de blockchain y las criptomonedasPablo Fernández Burgueño
 
La mejor Presentación de Bitcoin y las criptomonedas.
La mejor Presentación de Bitcoin y las criptomonedas.La mejor Presentación de Bitcoin y las criptomonedas.
La mejor Presentación de Bitcoin y las criptomonedas.Enrique Borda Penarrieta
 
Moneda P2P: ¿Hay vida más allá de Bitcoin?
Moneda P2P: ¿Hay vida más allá de Bitcoin?Moneda P2P: ¿Hay vida más allá de Bitcoin?
Moneda P2P: ¿Hay vida más allá de Bitcoin?GuerrillaTrans
 
Bitcoins, Introduccion
Bitcoins, IntroduccionBitcoins, Introduccion
Bitcoins, IntroduccionDaniel Arráez
 
Por qué comprar bitcoins?
Por qué comprar bitcoins?Por qué comprar bitcoins?
Por qué comprar bitcoins?adelonge
 
Bitcoin lab @runroom
Bitcoin lab @runroomBitcoin lab @runroom
Bitcoin lab @runroomDavid Garcia
 
Bitcoin: salto tecnológico en los sistemas de pago
Bitcoin: salto tecnológico en los sistemas de pagoBitcoin: salto tecnológico en los sistemas de pago
Bitcoin: salto tecnológico en los sistemas de pagoBloqueZero
 

La actualidad más candente (20)

Blockchain y Criptomonedas - ESADE - 2018-02-07
Blockchain y Criptomonedas - ESADE - 2018-02-07Blockchain y Criptomonedas - ESADE - 2018-02-07
Blockchain y Criptomonedas - ESADE - 2018-02-07
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Bitcoin micropagos en internet
Bitcoin micropagos en internetBitcoin micropagos en internet
Bitcoin micropagos en internet
 
Bitcoins La moneda del futuro
Bitcoins La moneda del futuroBitcoins La moneda del futuro
Bitcoins La moneda del futuro
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Informe de Inteco sobre BITCOIN: Una moneda criptográfica
Informe de Inteco sobre BITCOIN: Una moneda criptográficaInforme de Inteco sobre BITCOIN: Una moneda criptográfica
Informe de Inteco sobre BITCOIN: Una moneda criptográfica
 
Bitcoin introduction, El Corte Inglés
Bitcoin introduction, El Corte InglésBitcoin introduction, El Corte Inglés
Bitcoin introduction, El Corte Inglés
 
฿Itcoin La Moneda Virtual
฿Itcoin La Moneda Virtual฿Itcoin La Moneda Virtual
฿Itcoin La Moneda Virtual
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Descubre los secretos de blockchain y las criptomonedas
Descubre los secretos de blockchain y las criptomonedasDescubre los secretos de blockchain y las criptomonedas
Descubre los secretos de blockchain y las criptomonedas
 
La mejor Presentación de Bitcoin y las criptomonedas.
La mejor Presentación de Bitcoin y las criptomonedas.La mejor Presentación de Bitcoin y las criptomonedas.
La mejor Presentación de Bitcoin y las criptomonedas.
 
las criptomonedas
las criptomonedas las criptomonedas
las criptomonedas
 
Moneda P2P: ¿Hay vida más allá de Bitcoin?
Moneda P2P: ¿Hay vida más allá de Bitcoin?Moneda P2P: ¿Hay vida más allá de Bitcoin?
Moneda P2P: ¿Hay vida más allá de Bitcoin?
 
Criptomonedas
CriptomonedasCriptomonedas
Criptomonedas
 
Criptomonedas
CriptomonedasCriptomonedas
Criptomonedas
 
Bitcoins, Introduccion
Bitcoins, IntroduccionBitcoins, Introduccion
Bitcoins, Introduccion
 
Por qué comprar bitcoins?
Por qué comprar bitcoins?Por qué comprar bitcoins?
Por qué comprar bitcoins?
 
Bitcoin lab @runroom
Bitcoin lab @runroomBitcoin lab @runroom
Bitcoin lab @runroom
 
Bitcoin: salto tecnológico en los sistemas de pago
Bitcoin: salto tecnológico en los sistemas de pagoBitcoin: salto tecnológico en los sistemas de pago
Bitcoin: salto tecnológico en los sistemas de pago
 
Bitcoin
BitcoinBitcoin
Bitcoin
 

Similar a Desarrollo con Bitcoin

BITCOIN: EL EXPERIMENTO
BITCOIN: EL EXPERIMENTOBITCOIN: EL EXPERIMENTO
BITCOIN: EL EXPERIMENTOJavier López
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lEmanuel Alfaro Martinez
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lJuan Balderas
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lricardoortega274
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lluis pinto
 
conceptos basicos de criptomonedas.pptx
conceptos basicos de criptomonedas.pptxconceptos basicos de criptomonedas.pptx
conceptos basicos de criptomonedas.pptxcarmensuarez68
 
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdf
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdfCriptos y Ladrillos III - Introducción al Mundo Cripto.pdf
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdfssuser449bee1
 
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014Darren Camas
 
Presentación Bitcoin y Blochain.pptx
Presentación Bitcoin y Blochain.pptxPresentación Bitcoin y Blochain.pptx
Presentación Bitcoin y Blochain.pptxAquilesMedina3
 

Similar a Desarrollo con Bitcoin (20)

Introducción a Bitcoin
Introducción a BitcoinIntroducción a Bitcoin
Introducción a Bitcoin
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
BITCOIN: EL EXPERIMENTO
BITCOIN: EL EXPERIMENTOBITCOIN: EL EXPERIMENTO
BITCOIN: EL EXPERIMENTO
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.l
 
Bitcoin y (in)seguridad: 5 paradojas
Bitcoin y (in)seguridad: 5 paradojasBitcoin y (in)seguridad: 5 paradojas
Bitcoin y (in)seguridad: 5 paradojas
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.l
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.l
 
Presentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.lPresentacion oficial de bitcoin zona network s.l
Presentacion oficial de bitcoin zona network s.l
 
Andrea mercado
Andrea mercadoAndrea mercado
Andrea mercado
 
conceptos basicos de criptomonedas.pptx
conceptos basicos de criptomonedas.pptxconceptos basicos de criptomonedas.pptx
conceptos basicos de criptomonedas.pptx
 
Criptomonedas
CriptomonedasCriptomonedas
Criptomonedas
 
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdf
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdfCriptos y Ladrillos III - Introducción al Mundo Cripto.pdf
Criptos y Ladrillos III - Introducción al Mundo Cripto.pdf
 
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014
Porqué el Bitcoin cambiará el mundo- Cordoba Tech Day 2014
 
Darren Camas
Darren CamasDarren Camas
Darren Camas
 
Bitcointarea2
Bitcointarea2Bitcointarea2
Bitcointarea2
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Criptomonedas
CriptomonedasCriptomonedas
Criptomonedas
 
Presentación Bitcoin y Blochain.pptx
Presentación Bitcoin y Blochain.pptxPresentación Bitcoin y Blochain.pptx
Presentación Bitcoin y Blochain.pptx
 

Más de Paradigma Digital

Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.
Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.
Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.Paradigma Digital
 
Java 8 time to join the future
Java 8  time to join the futureJava 8  time to join the future
Java 8 time to join the futureParadigma Digital
 
Programación Reactiva con Spring WebFlux
Programación Reactiva con Spring WebFluxProgramación Reactiva con Spring WebFlux
Programación Reactiva con Spring WebFluxParadigma Digital
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixParadigma Digital
 
Meetup microservicios: API Management
Meetup microservicios: API ManagementMeetup microservicios: API Management
Meetup microservicios: API ManagementParadigma Digital
 
Meetup de kubernetes, conceptos básicos.
Meetup  de kubernetes, conceptos básicos.Meetup  de kubernetes, conceptos básicos.
Meetup de kubernetes, conceptos básicos.Paradigma Digital
 
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptxDocker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptxParadigma Digital
 
Implementando microservicios
Implementando microserviciosImplementando microservicios
Implementando microserviciosParadigma Digital
 
Equipo de Marketing de Paradigma Digital
Equipo de Marketing de Paradigma DigitalEquipo de Marketing de Paradigma Digital
Equipo de Marketing de Paradigma DigitalParadigma Digital
 
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!Paradigma Digital
 
Manuel Hurtado. Couchbase paradigma4oct
Manuel Hurtado. Couchbase paradigma4octManuel Hurtado. Couchbase paradigma4oct
Manuel Hurtado. Couchbase paradigma4octParadigma Digital
 
Programación Reactiva con RxJava
Programación Reactiva con RxJavaProgramación Reactiva con RxJava
Programación Reactiva con RxJavaParadigma Digital
 
¿Cómo vencer a los dragones digitales?
¿Cómo vencer a los dragones digitales?¿Cómo vencer a los dragones digitales?
¿Cómo vencer a los dragones digitales?Paradigma Digital
 

Más de Paradigma Digital (20)

Ddd + ah + microservicios
Ddd + ah + microserviciosDdd + ah + microservicios
Ddd + ah + microservicios
 
Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.
Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.
Bots 3.0: Dejando atrás los bots conversacionales con Dialogflow.
 
Have you met Istio?
Have you met Istio?Have you met Istio?
Have you met Istio?
 
Linkerd a fondo
Linkerd a fondoLinkerd a fondo
Linkerd a fondo
 
Horneando apis
Horneando apisHorneando apis
Horneando apis
 
Java 8 time to join the future
Java 8  time to join the futureJava 8  time to join the future
Java 8 time to join the future
 
Programación Reactiva con Spring WebFlux
Programación Reactiva con Spring WebFluxProgramación Reactiva con Spring WebFlux
Programación Reactiva con Spring WebFlux
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace Netflix
 
Meetup microservicios: API Management
Meetup microservicios: API ManagementMeetup microservicios: API Management
Meetup microservicios: API Management
 
Meetup de kubernetes, conceptos básicos.
Meetup  de kubernetes, conceptos básicos.Meetup  de kubernetes, conceptos básicos.
Meetup de kubernetes, conceptos básicos.
 
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptxDocker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
 
Implementando microservicios
Implementando microserviciosImplementando microservicios
Implementando microservicios
 
Equipo de Marketing de Paradigma Digital
Equipo de Marketing de Paradigma DigitalEquipo de Marketing de Paradigma Digital
Equipo de Marketing de Paradigma Digital
 
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
 
Overview atlas (1)
Overview atlas (1)Overview atlas (1)
Overview atlas (1)
 
Cómo usar google analytics
Cómo usar google analyticsCómo usar google analytics
Cómo usar google analytics
 
Transformación Digital
Transformación DigitalTransformación Digital
Transformación Digital
 
Manuel Hurtado. Couchbase paradigma4oct
Manuel Hurtado. Couchbase paradigma4octManuel Hurtado. Couchbase paradigma4oct
Manuel Hurtado. Couchbase paradigma4oct
 
Programación Reactiva con RxJava
Programación Reactiva con RxJavaProgramación Reactiva con RxJava
Programación Reactiva con RxJava
 
¿Cómo vencer a los dragones digitales?
¿Cómo vencer a los dragones digitales?¿Cómo vencer a los dragones digitales?
¿Cómo vencer a los dragones digitales?
 

Desarrollo con Bitcoin

  • 1. Por: Alberto Gómez Toribio @gotoalberto
  • 2. - Son activos que son valiosos por su escasez #bitcoindevspain ¿Qué es el dinero?
  • 3. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios #bitcoindevspain ¿Qué es el dinero?
  • 4. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios - El primero en utilizarse fue el Oro por su escasez #bitcoindevspain ¿Qué es el dinero?
  • 5. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios - El primero en utilizarse fue el Oro por su escasez - Se crea la moneda Fiducidaria: Los gobiernos emiten titulos a cambio de oro. #bitcoindevspain ¿Qué es el dinero?
  • 6. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios - El primero en utilizarse fue el Oro por su escasez - Se crea la moneda Fiducidaria: Los gobiernos emiten títulos a cambio de oro. - Nadie viene a reclamar ese oro con su título: ¿Emitimos títulos sin respaldo a cambio de ese oro? #bitcoindevspain ¿Qué es el dinero?
  • 7. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios - El primero en utilizarse fue el Oro por su escasez - Se crea la moneda Fiducidaria: Los gobiernos emiten títulos a cambio de oro. - Nadie viene a reclamar ese oro con su título: ¿Emitimos títulos sin respaldo a cambio de ese oro? - En 1971, Nixon dice que se acabó reclamar ese oro y convierte la moneda Fiducidaria en moneda FIAT, basada en la deuda. #bitcoindevspain ¿Qué es el dinero?
  • 8. - Son activos que son valiosos por su escasez - Sirven para intercambiarlos por bienes y servicios - El primero en utilizarse fue el Oro por su escasez - Se crea la moneda Fiducidaria: Los gobiernos emiten títulos a cambio de oro. - Nadie viene a reclamar ese oro con su título: ¿Emitimos títulos sin respaldo a cambio de ese oro? - En 1971, Nixon dice que se acabó reclamar ese oro y convierte la moneda Fiducidaria en moneda FIAT, basada en la deuda. - Los bancos centrales controlan la divisa. #bitcoindevspain ¿Qué es el dinero?
  • 9. - Es una moneda electrónica. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 10. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 11. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. - Tiene las mismas propiedades que una moneda física. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 12. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. - Tiene las mismas propiedades que una moneda física. - El dinero se transfiere de persona a persona de forma irreversible. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 13. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. - Tiene las mismas propiedades que una moneda física. - El dinero se transfiere de persona a persona de forma irreversible. - Está limitada, no se pueden crear más de 21M de BTC #bitcoindevspain ¿Qué es el Bitcoin ?
  • 14. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. - Tiene las mismas propiedades que una moneda física. - El dinero se transfiere de persona a persona de forma irreversible. - Está limitada, no se pueden crear más de 21M de BTC. - Es divisible, habitualmente hablamos de mBTC o uBTC. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 15. - Es una moneda electrónica. - No tiene autoridad central (Banco Central), se basa en un sistema descentralizado. - Tiene las mismas propiedades que una moneda física. - El dinero se transfiere de persona a persona de forma irreversible. - Está limitada, no se pueden crear más de 21M de BTC. - Es divisible, habitualmente hablamos de mBTC o uBTC. - Propone un modelo deflaccionario frente a la inflacción infinita. #bitcoindevspain ¿Qué es el Bitcoin ?
  • 16. #bitcoindevspain Principios de las monedas ORO EURO BITCOIN ESCASEZ PORTABILIDAD FUNGIBILIDAD VERIFICACION DIVISIBILIDAD PRIVACIDAD ACEPTACION
  • 26. - Sirven para firmar transacciones y operar con el dinero. #bitcoindevspain Bitcoin Addresses
  • 27. - Sirven para firmar transacciones y operar con el dinero. - Criptografía de Curva Elíptica: Sin aceleración de hardware. #bitcoindevspain Bitcoin Addresses
  • 28. - Sirven para firmar transacciones y operar con el dinero. - Criptografía de Curva Elíptica: Sin aceleración de hardware. - Podemos generar la clave pública a partir de la privada. #bitcoindevspain Bitcoin Addresses
  • 29. - Sirven para firmar transacciones y operar con el dinero. - Criptografía de Curva Elíptica: Sin aceleración de hardware. - Podemos generar la clave pública a partir de la privada. - El minero las almacena en un fichero llamado wallet. #bitcoindevspain Bitcoin Addresses
  • 30. - Sirven para firmar transacciones y operar con el dinero. - Criptografía de Curva Elíptica: Sin aceleración de hardware. - Podemos generar la clave pública a partir de la privada. - El minero las almacena en un fichero llamado wallet. - Para generar un cheque, nos basta con imprimir la clave privada en formato QR. #bitcoindevspain Bitcoin Addresses
  • 31. - Son movimientos de dinero firmados digitalmente. #bitcoindevspain Transacciones
  • 32. - Son movimientos de dinero firmados digitalmente. - Habitualmente el minero genera y firma la transacción, pero las transacciones pueden ser firmadas offline. #bitcoindevspain Transacciones
  • 33. - Son movimientos de dinero firmados digitalmente. - Habitualmente el minero genera y firma la transacción, pero las transacciones pueden ser firmadas offline. - La transacción es enviada a un minero y replicada, cuando el 51% de los mineros la replica, se confía en que se insertará en la blockchain. #bitcoindevspain Transacciones
  • 34. - Son movimientos de dinero firmados digitalmente. - Habitualmente el minero genera y firma la transacción, pero las transacciones pueden ser firmadas offline. - La transacción es enviada a un minero y replicada, cuando el 51% de los mineros la replica, se confía en que se insertará en la blockchain. - ¿Y si alguien controla el 51% de la red? #bitcoindevspain Transacciones
  • 35. - Son movimientos de dinero firmados digitalmente. - Habitualmente el minero genera y firma la transacción, pero las transacciones pueden ser firmadas offline. - La transacción es enviada a un minero y replicada, cuando el 51% de los mineros la replica, se confía en que se insertará en la blockchain. - ¿Y si alguien controla el 51% de la red? #bitcoindevspain Transacciones
  • 36. #bitcoindevspain Transacciones Prev Output Amount From Type ScriptSig 6d020afb… 44,22 1BD5b401… Address A3a6748d… Index Amount To Type ScriptPubKey 0 44,219998 1NC83Jv… Address Bfa5263e1f… 1 0,000012 1JUKuRz… Address 6a0d4ed87… Outputs Inputs
  • 37. - Existe la necesidad de codificar mensajes en las transacciones. #bitcoindevspain Messaging
  • 38. - Existe la necesidad de codificar mensajes en las transacciones. - Los mensajes quedan almacenados permanentemente. #bitcoindevspain Messaging
  • 39. - Existe la necesidad de codificar mensajes en las transacciones. - Los mensajes quedan almacenados permanentemente. - Algunos comienzan añadiendo un OutputScript adicional donde codifican un mensaje UTF-8 serializado en Base64. #bitcoindevspain Messaging
  • 40. - Existe la necesidad de codificar mensajes en las transacciones. - Los mensajes quedan almacenados permanentemente. - Algunos comienzan añadiendo un OutputScript adicional donde codifican un mensaje UTF-8 serializado en Base64. - Blockchain.info toma la iniciativa y desarrolla su propio sistema de messaging. #bitcoindevspain Messaging
  • 41. - Existe la necesidad de codificar mensajes en las transacciones. - Los mensajes quedan almacenados permanentemente. - Algunos comienzan añadiendo un OutputScript adicional donde codifican un mensaje UTF-8 serializado en Base64. - Blockchain.info toma la iniciativa y desarrolla su propio sistema de messaging. - En 2011 se libera la versión 1.0 del BTCmsg Protocol - 2 primeros caracteres del output script indican si hay mensaje (02) o no(01) - El mensaje se codifica en Hexadecimal - Cada grupo de 4 chars hex representan 2 letras ASCII), valores entre 0xffff y 0x65535. (Enseñar btcmsgTools) #bitcoindevspain Messaging
  • 42. - La BlockChain es una lista de todas las transacciones hechas en Bitcoin, particionadas en bloques y almacenada de forma distribuida. #bitcoindevspain Blockchain
  • 43. - La BlockChain es una lista de todas las transacciones hechas en Bitcoin, particionadas en bloques y almacenada de forma distribuida. - Cuando un bloque es generado, las transacciones que aún no han sido insertadas en ninguno y que están siendo replicadas temporalmente por los mineros, se validan. #bitcoindevspain Blockchain
  • 44. - La BlockChain es una lista de todas las transacciones hechas en Bitcoin, particionadas en bloques y almacenada de forma distribuida. - Cuando un bloque es generado, las transacciones que aún no han sido insertadas en ninguno y que están siendo replicadas temporalmente por los mineros, se validan. - Puede haber varias cadenas, pero los mineros escuchan la mas larga y descartan el resto. #bitcoindevspain Blockchain
  • 45. - La BlockChain es una lista de todas las transacciones hechas en Bitcoin, particionadas en bloques y almacenada de forma distribuida. - Cuando un bloque es generado, las transacciones que aún no han sido insertadas en ninguno y que están siendo replicadas temporalmente por los mineros, se validan. - Puede haber varias cadenas, pero los mineros escuchan la mas larga y descartan el resto. - Generar un bloque requiere mucha capacidad de cómputo, tiempo y dinero, crear una cadena más larga que la actual desde cero es altamente improbable. #bitcoindevspain Blockchain
  • 46. - “Minar” es generar colisiones en funciones Hash SHA256. #bitcoindevspain Minería
  • 47. - “Minar” es generar colisiones en funciones Hash SHA256. - La minería consiste en generar el siguiente bloque de la cadena de bloques, tal que: - ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE) - ID_NUEVO_BLOQUE debe ser un hash SHA2 válido. - ID_NUEVO_BLOQUE debe comenzar por N ceros. #bitcoindevspain Minería
  • 48. - “Minar” es generar colisiones en funciones Hash SHA256. - La minería consiste en generar el siguiente bloque de la cadena de bloques, tal que: - ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE) - ID_NUEVO_BLOQUE debe ser un hash SHA2 válido. - ID_NUEVO_BLOQUE debe comenzar por N ceros. - La minería genera dinero mediante: - Cada nuevo bloque permite generar 25BTC que se queda el minero. - El minero se queda con la comisión donada en cada transacción. #bitcoindevspain Minería
  • 49. - “Minar” es generar colisiones en funciones Hash SHA256. - La minería consiste en generar el siguiente bloque de la cadena de bloques, tal que: - ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE) - ID_NUEVO_BLOQUE debe ser un hash SHA2 válido. - ID_NUEVO_BLOQUE debe comenzar por N ceros. - La minería genera dinero mediante: - Cada nuevo bloque permite generar 25BTC que se queda el minero. - El minero se queda con la comisión donada en cada transacción. - Si se generan dos bloques a la vez, el más complejo prospera (el que tiene mas ceros al principio). #bitcoindevspain Minería
  • 50. - “Minar” es generar colisiones en funciones Hash SHA256. - La minería consiste en generar el siguiente bloque de la cadena de bloques, tal que: - ID_BLOQUE_ANTERIOR = SHA2(ID_NUEVO_BLOQUE) - ID_NUEVO_BLOQUE debe ser un hash SHA2 válido. - ID_NUEVO_BLOQUE debe comenzar por N ceros. - La minería genera dinero mediante: - Cada nuevo bloque permite generar 25BTC que se queda el minero. - El minero se queda con la comisión donada en cada transacción. - Si se generan dos bloques a la vez, el más complejo prospera (el que tiene mas ceros al principio). - Si se generan bloques idénticos: - La La cadena más compleja prospera. #bitcoindevspain Minería
  • 52. - El cliente minero de Bitcoin dispone de un API RPC-JSON - Podemos usar un cliente propio o utilizar un API de terceros como la de Blockchain.info. - Configuración necesaria en el fichero bitcoin.conf: server=1 rpcuser=username rpcpassword=password rpcport=8332 - En MacOS el fichero no existe, y debe crearse en: /Users/$USER/Library/Application Support/Bitcoin #bitcoindevspain Bitcoin RPC API
  • 53. - Las principales instrucciones son: <readable json> decoderawtransaction <hex string> <private key> dumpprivkey <accountName> <accountName> getbalance <accountName, confirmations> <public key> getnewaddress <accountName> <hex string> getrawtransaction <transaction id> <transaction id> sendfrom <from accountName, to public key, amount, comment> <hex string> signrawtransaction <{…json tx data…}> <transaction id> sendrawtransaction <hex string> <hex string> createrawtransaction <hex string> #bitcoindevspain Bitcoin RPC API
  • 54. - Añadir clave privada existente: $ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method": "importprivkey", "params": ["PRIVATEKEY","alias"] }' -H 'content- type: text/plain;' http://bitcoin:password@127.0.0.1:8332 - Consultar la clave publica de la cuenta que acabamos de añadir: $ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method": "getaddressesbyaccount", "params": ["ACCOUNT_NAME"] }' -H 'content- type: text/plain;' http://bitcoin:password@127.0.0.1:8332 - Enviar dinero $ curl --data-binary '{"jsonrpc": ".0", "id":"rpc", "method": "sendfrom", "params": ["FROM_ACCOUNTNAME", "TO_PUBLIC_KEY",AMOUNT] }' -H 'content-type: text/plain;' http://bitcoin:password@127.0.0.1:8332 #bitcoindevspain Bitcoin RPC API
  • 55. - Obtenemos la transacción en RAW $ curl --data-binary '{"jsonrpc": "1.0", "id":"getrawtransaction", "method": "getrawtransaction", "params": [”TRANSACTION_ID"] }' -H 'content-type: text/plain;' http://bitcoin:password@127.0.0.1:8332 - Decodificamos la transacción en RAW: $ curl --data-binary '{"jsonrpc": "1.0", "id":"rpc", "method": "decoderawtransaction", "params": ["HEX_TRANSACTION"] }' -H 'content-type: text/plain;' http://bitcoin:password@127.0.0.1:8332 #bitcoindevspain Bitcoin RPC API
  • 56. BONUS! HANDS ON LAB! Juego de Piedra-Papel-Tijera-Lagarto-Spock que exige un pago en BTC si pierdes y envía dinero en BTC si ganas :) #bitcoindevspain Codigo: https://github.com/gotoalberto/bitcoin-rock
  • 57. - La cadena de bloques ocupa aproximadamente 40GB que se almacena de forma distribuida. #bitcoindevspain Algunos datos…
  • 58. - La cadena de bloques ocupa aproximadamente 40GB que se almacena de forma distribuida. - Bitcoin mueve más de 24K € por minuto en transacciones a día de hoy (con una cotización a 1BTC/90€). #bitcoindevspain Algunos datos…
  • 59. - La cadena de bloques ocupa aproximadamente 40GB que se almacena de forma distribuida. - Bitcoin mueve más de 24K € por minuto en transacciones a día de hoy (con una cotización a 1BTC/90€). - Bitcoin tiene de media 51K transacciones diarias. (Sí, soporta muchas mas, ver Escalabilidad en Bitcoin Wiki) #bitcoindevspain Algunos datos…
  • 60. - La cadena de bloques ocupa aproximadamente 40GB que se almacena de forma distribuida. - Bitcoin mueve más de 24K € por minuto en transacciones a día de hoy (con una cotización a 1BTC/90€). - Bitcoin tiene de media 51K transacciones diarias. (Sí, soporta muchas mas, ver Escalabilidad en Bitcoin Wiki) - La media es de 5.000 € por transaccion y 35 transacciones por minuto. #bitcoindevspain Algunos datos…
  • 61. - La cadena de bloques ocupa aproximadamente 40GB que se almacena de forma distribuida. - Bitcoin mueve más de 24K € por minuto en transacciones a día de hoy (con una cotización a 1BTC/90€). - Bitcoin tiene de media 51K transacciones diarias. (Sí, soporta muchas mas, ver Escalabilidad en Bitcoin Wiki) - La media es de 5.000 € por transaccion y 35 transacciones por minuto. - Un minero gana de media 2500€ por genererar un bloque y 30€ en comisiones (con una cotización de a 1BTC/90€) #bitcoindevspain Algunos datos… Fuente: Blockchain.info
  • 62. { "jsonrpc” : "1.0", "id” : "rpc", "method” : "terminate", "params” : [ ”this_conference” ] } :=)