<!-- .slide: data-background-color="#302F3D" -->
# Como funciona una criptomoneda. Bitcoin.
---
<!-- .slide: data-background-color="#302F3D" -->
## In principio erat numeris
Desde mis llaves privadas hasta la cadena de bloques.
1. Hashes
2. Blockchain
3. Transacción
4. Mempool
5. Ajuste de dificultad
6. Llaves públicas y privadas
7. Wallets (con recomendaciones)
---
<!-- .slide: data-background-color="#302F3D" -->
## Hashes
Conjunto de caracteres alfanumericos que sirve para identificar el contenido de algo en una cantidad de caracteres. ¿Más simple? Es una mezcla de letras y números aleatorios **únicos**. Una huella digital.
La cadena de bloques (blockchain) se componen de hashes.
Note:
Los hashes son caracteres que se encuentran en las wallets, en las transacciones, en los bloques, y en la red
---
<!-- .slide: data-background-color="#302F3D" -->
Veamos [ejemplos](https://guggero.github.io/blockchain-demo/#!/)
Note:
Denotar que TODOS LOS MENSAJES SON DIFERENTES, TODOS
---
<!-- .slide: data-background-color="#302F3D" -->
## Bloque
Eslabón de la cadena de bloques el cual contiene información acerca de la operatividad de la moneda. Haciendo una analogía a un libro de contabilidad, **un bloque es 1 página**.
---
<!-- .slide: data-background-color="#302F3D" -->
## Cadena de bloques (Blockchain)
Es un libro de contabilidad distribuido. Se mantiene mediante una red de servidores esparcidos por todo el mundo. No cuenta con un solo dueño. Haciendo una analogía a un libro de contabilidad, una cadena de bloques es **UN LIBRO de contabilidad**.
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de bloques. Características
* Inmutables (no se puede editar)
* Descentralizadas (no existe un dueño de la misma)
* Auditable (cualquier persona puede verificar)
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de Bloque. Anatomía
```graphviz
digraph structs {
node[shape=record]
struct2 [label="Hash Tx \nanterior |{ tx1 |{tx3|<here> tx10|tx34}| tx54}| Hash para \npróximo bloque"];
struct3 [label="Hash Tx \nanterior |{ tx6 |{tx60|<here> tx101|tx14}| tx76}| Hash para \npróximo bloque"];
struct2:f0 -> struct3:f1;
}
```
---
<!-- .slide: data-background-color="#302F3D" -->
Veamos [ejemplos](https://guggero.github.io/blockchain-demo/#!/) de como funciona una cadena de bloques
Note:
resaltar bloques, que hay dentro del bloque, los hashes y las transacciones guardadas
---
<!-- .slide: data-background-color="#302F3D" -->
## Transacción
Es el envío de datos que se crea, propaga, valida y transmite en la cadena de bloques. Todas las transacciones ocurren dentro de la blockchain.
Note:
Si no hay ocurre dentro de la cadena, NO EXISTE.
---
<!-- .slide: data-background-color="#302F3D" -->
### Características. Como funciona.
- Se firma la transacción (enviar)
- Se remite al mempool
- Se espera a la confirmación
---
<!-- .slide: data-background-color="#302F3D" -->
Una transacción en criptomonedas no se mide en valor del volumen de dinero. Que envíes 1 USD o 1,000,000 de EUR da igual.
**Se mide en kilobytes**.
Ver [transacción de volumen bajo](https://mempool.space/es/tx/34cb5238a042ba45e069573b5f7d0e4f46aa2c71c651ff07c27dd752ca81b105) vs. [transacción de volumen alto](https://mempool.space/es/tx/2b7f0e80db32b13c9252b6a2a19184cf16011770efa05679825aae2ce0e235c7)
---
<!-- .slide: data-background-color="#302F3D" -->
## Mempool
Espacio dentro de la red en la cual están las transacciones **esperando a ser confirmadas** por un minero.
Existen 3 tipos de fees: urgentes, medios y bajos.

---
<!-- .slide: data-background-color="#302F3D" -->
### Camino de la Mempool
```graphviz
digraph dfd{
rankdir=LR;
node[shape=record]
store1 [label="<f0> User1"];
proc1 [label="{<f3>Tx1|Tx2|Tx3|Tx4}" shape=Mrecord];
enti1 [label="Minero \nconfirma\nTx1" shape=box];
store1:f1 -> proc1:f0;
enti1-> proc1:f0;
enti1 -> BloqueN;
proc1:f0 -> enti1;
store1 -> BloqueN
}
```
Note:
Es como una habitación llena de confirmaciones esperando a ingresar en las cadenas.
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de bloques. Como se crea un bloque. :chicken: :egg:
Se computa un número entre todos los participantes de la red hasta obtener el hash correcto. Se *computa un hash*.
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de bloques. Analogía.
Un casino con una sola mesa gigante en el cual tenemos 13 dados y todos al mismo tiempo tiramos los dados buscando un número en concreto.
**Objetivo actual: buscar que nos salga 12 ceros y un número más.**
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de bloque. Anatomía de la resolución.
```graphviz
digraph dfd{
node[shape=record]
store1 [label="<f1> Propuesta de bloque 1"];
store2 [label="<f1> Propuesta de bloque 2"];
store3 [label="<f1> Propuesta de bloque 3"];
proc1 [label="{<f0> ASIC|<f1>Hash function en sha256 \ncomputando hasta \nobtener un el nonce correcto \n\n}" shape=Mrecord];
enti1 [label="df7634\nINCORRECTO" shape=box];
enti2 [label="034asd\nINCORRECTO" shape=box];
enti3 [label="0000000\nCORRECTO",color=Green, style=filled, shape=box];
store1:f1 -> proc1:f0;
store2:f1 -> proc1:f0;
store3:f1 -> proc1:f0;
proc1 -> enti1;
proc1 -> enti2;
proc1 -> enti3;
}
```
---
<!-- .slide: data-background-color="#302F3D" -->
#### Como funciona un mecanismo de consenso
Proof-of-work **es el mecanismo de consenso** por el cual se resuelve un problema y se busca tanto el subsidio (CoinBase) como la creación del bloque.
---
<!-- .slide: data-background-color="#302F3D" -->
### Ajuste de dificultad
El objetivo es encontrar el nonce adecuado para un bloque. **El nivel de dificultad** se ajusta de acuerdo a la cantidad de participantes.
Note:
El ajuste ocurre cada 2016 bloques, promedio cada 2 semanas.
---
<!-- .slide: data-background-color="#302F3D" -->
#### El ajuste de dificultad sube. Analogía.
Un casino con una sola mesa gigante en el cual tenemos 13 dados y todos al mismo tiempo tiramos los dados buscando un número en concreto. Cada día llegan más participantes. El número de dados aumenta y el nivel del número para encontrar aumenta.
:chart_with_upwards_trend: :chart_with_upwards_trend: :chart_with_upwards_trend:
---
<!-- .slide: data-background-color="#302F3D" -->
#### El ajuste de dificultad baja. Analogía.
Un casino con una sola mesa gigante en el cual tenemos 13 dados y todos al mismo tiempo tiramos los dados buscando un número en concreto. Se retiran participantes. El número de dados disminuye y el nivel del número para encontrar decrece.
:man-running: :woman-running:
---
<!-- .slide: data-background-color="#302F3D" -->
### Cadena de bloques. Como explorar
Los exploradores de bloques son sitios dedicados a _conversar_ con la cadena de bloques. [Vamos a revisarlo](https://mempool.space).
---
<!-- .slide: data-background-color="#302F3D" -->
# Llaves
Que son. Importancia.
---
<!-- .slide: data-background-color="#302F3D" -->
## Llaves públicas y privadas
Par de llaves que se utiliza para administrar tus transacciones. La llave pública es para recibir. La llave privada es para firmar tus transacciones.
---
<!-- .slide: data-background-color="#302F3D" -->
#### Analogía de llaves
Si bitcoin fuera un servicio de correo (ElCorreo) entonces:
- Llave pública es tu correo: (lahoracripto@elcorreo.com)
- Llave privada es mi contraseña para acceder a mis correos.
Si pierdo mi contraseña (llave privada) no puedo acceder. Y no hay tu tía :woman-bowing:
---
<!-- .slide: data-background-color="#302F3D" -->
### Direcciones (Llaves públicas)
Que son. Para que sirve.
La mitad de tus llaves. Se utiliza para que la otra persona pueda enviarte satoshis. Se genera aleatoriamente y son únicas.
Formato: `bc1q6tm426m6fpyq8l0gspua2puaa7q3v7ud0t2arw`
---
<!-- .slide: data-background-color="#302F3D" -->
### Llaves privadas
Es como firmas cada transacción. Son números completamente al azar. Quien tenga control de esto, pueda crear y firmar transacciones en la cadena.
**PROTEGELO A TODO COSTO. SI LOS PIERDES, PIERDES CONTROL DE TUS BITCOINS**
---
<!-- .slide: data-background-color="#302F3D" -->
#### ¿Como se ven tus llaves privadas?
| nunca | entregues | a | nadie |
| -------- | -------- | -------- |------- |
| tus | llaves | privadas | porque
|son|solo|tuyas|entendes|
---
<!-- .slide: data-background-color="#302F3D" -->
#### ¿Son seguras las llaves privadas?
Agarra un papel y una moneda. Cada vez que quieras crear una frase, deberás crear un número al azar lanzando una moneda 256 veces.
[Mira como se crean](https://iancoleman.io/bip39/)
---
<!-- .slide: data-background-color="#302F3D" -->
# Wallets
Que es. Funciones.
---
<!-- .slide: data-background-color="#302F3D" -->
## Que son las wallets (billeteras)
Software (o hardware) destinado a *administrar* tus bitcoins (u otras criptomonedas)
---
<!-- .slide: data-background-color="#302F3D" -->
## Criterios para elegir una wallet
- Que te de tus llaves privadas :heavy_check_mark:
- Código abierto :heavy_check_mark:
- Bitcoin-only (criterio **personal**) :heavy_check_mark:
---
<!-- .slide: data-background-color="#302F3D" -->
## Las billeteras **NO SON**:
- Casa de cambios
- Plataformas
- Servicios de custodia
- Bancos
**Si no tienes tus llaves privadas, no son tuyas**
---
<!-- .slide: data-background-color="#302F3D" -->
### Riesgos de dejar en servicios de custodia
- Bancarrota :skull:
- Negligencia (oops, I did it again!)
- Confiscación (democracy is coming!)
- Se *cayó* el sitio
---
<!-- .slide: data-background-color="#302F3D" -->
## Riesgos de tener tu propias wallets
- Seguridad personal
- Pérdida de tus llaves privadas
Note:
Si pierdes tus llaves y vos sos full custodio, ya no hay vuelta atrás, serás un número más en la larga lista de personas que perdieron todo.
---
<!-- .slide: data-background-color="#302F3D" -->
## Wallets geniales
Todas las wallets tienen los requisitos anteriores y si hay plus, lo dejo
Note:
Las recomendaciones a continuación hechas fueron actualizadas por última vez en mar-2022
---
<!-- .slide: data-background-color="#302F3D" -->
### No recomendado :skull_and_crossbones:
La calavera ¡significa **peligro**!
- Blockchain Wallet
- Bitcoin(punto)com Wallet
---
<!-- .slide: data-background-color="#302F3D" -->
### Samourai Wallet :crossed_swords:
- PayNyms :link:
- Whirpool (mezclan transacciones para más privacidad)
---
<!-- .slide: data-background-color="#302F3D" -->
### Muun
Wallet de mainnet y Lightning Network en una sola :heart_eyes:
---
<!-- .slide: data-background-color="#302F3D" -->
### BlueWallet
- Miles de wallets en una
- Tiene Lightning Network
- Y podes conectar con tu Telegram
- Negación plausible
---
<!-- .slide: data-background-color="#302F3D" -->
## Desktop Wallets
- Electrum
- Sparrow (usando actualmente) :bird:
- Ahora tiene Coinjoin incluido :heart_eyes:
- Wasabi
---
<!-- .slide: data-background-color="#302F3D" -->
### Multi-monedas
- Exodus
- Trust Wallet (_recomendación personal_)
- Coinbase Wallet
---
<!-- .slide: data-background-color="#302F3D" -->
### Hardware Wallets
- Ledger
- Trezor
- SafePal
- BitBox (bitcoin-only)
- ColdCard (bitcoin-only)
---
<!-- .slide: data-background-color="#302F3D" -->
## ¿Cómo sé cual me conviene?
- Uso ¿diario? ¿semanal?
- ¿Ahorro? ¿Especulación? ¿Trading?
- ¿Montos chicos o gigantes?
- ¿Soy una :whale:?
- ¿Soy un :shrimp:?
---
<!-- .slide: data-background-color="#302F3D" -->
## :books: Bibliografía
- [Andreas Antonopolous. Mastering Bitcoin](https://www.oreilly.com/library/view/mastering-bitcoin/9781491902639/)
- Andreas Antonopolous. Internet del Dinero. [Vol 1](https://books.aantonop.com/landing-i/), [Vol 2](https://books.aantonop.com/landing-ii/), [Vol 3](https://books.aantonop.com/landing-iii/)
- [Lunaticoin. Podcast 121](https://www.youtube.com/watch?v=3dHYDjORIn4)
- [BTC en Español. Reviews varios de wallets](https://www.youtube.com/c/btcenespanol/videos)
---
<!-- .slide: data-background-color="#302F3D" -->
## Y no te olvides. Mi libro :call_me_hand:
:books: [Conociendo Bitcoin]() :books:
PDF,EPUB,MOBI o WEB
{"metaMigratedAt":"2023-06-16T16:20:04.335Z","metaMigratedFrom":"YAML","title":"S2. Bitcoin. Funcionamiento.","breaks":true,"description":"S2. Funcionamiento.","contributors":"[{\"id\":\"39fee875-7c6d-47e0-b560-29847e625fda\",\"add\":15303,\"del\":5220}]"}