Bitcoin los fundamentos (Parte 2)

14
Habíamos quedado en como demostraban los interesados en defender la red Bitcoin que son soldados de la red y no intrusos o hackers para ganar el derecho a escribir en la base de datos los nuevos bloques

Para quienes no lo hayan leído 


Proof of Work


Esta es la forma de demostrar interés en defender la base de datos que usa Bitcoin y la mayoría de cryptos, porque fue la idea original de Satoshi en su paper de 2008.

Veamos de que se trata, la idea es que todos los interesados en escribir la base de datos participen de una competencia matemática por llegar a encontrar un hash con una determinada cantidad de ceros (Esa cantidad de ceros es variable y marca el nivel de  dificultad de la infraestructura actual)

Esa competencia matemática es resolver un hash (en el caso del bitcoin un SHA256), el hash es un concepto criptográfico, básicamente explicado muy rápido es una operación que es muy fácil resolverla hacia una dirección pero muy difícil resolverla hacia la otra

Por ejemplo el año 2021 es un número que sale de multiplicar factores primos, en el caso de 2021 es 43*47=2021

Hacer la cuenta 43*47 para verificarlo es facilísimo, pero encontrar esos dos factores es más difícil, hay que ir probando varios divisores primos hasta encontrar el 43 o 47 en este caso.
Imaginen esto mismo de los números primos pero con 50 dígitos, si partimos de un número de 50 cifras y buscamos los factores primos es una tarea muy difícil pero una vez resuelta, verificar si la resolución es correcta es muy sencillo, solo hay que multiplicar los factores y listo.

En ese concepto se basa la criptografía, es el enunciado de uno de los problemas matemáticos mas famosos de la historia conocido como P=NP  para quienes quieran googlear al respecto, es un problema realmente apasionante.. 

Volviendo a lo nuestro, a mayor cantidad de dígitos del número "a descifrar sus factores primos", mayor dificultad. Bueno el algoritmo para el hash SHA256 es algo parecido mas difícil aún pero basado en el concepto de resolver un problema fácil de verificar pero difícil de resolver

Volviendo al Bitcoin, la PoW (Proof of work) es una prueba que consiste en que todos los interesados en escribir la base de datos resuelvan un hash SHA256, y el que lo resuelve primero "gana" el derecho a escribir ese bloque, luego esa resolución se verifica y se llega a un consenso etc, pero es un tema mas técnico, lo importante es entender que para poder escribir 1 (UN) bloque tengo que resolver un problema matemático complicado y mas rápido que todo el resto de interesados

Obviamente para poder lograr esto, tengo que tener una fuerza de cómputo muy grande, pero así tenga la mayor potencia de cómputo que todo el mundo entero, tampoco me garantizo resolverlo antes que el resto, ¿por qué? porque hasta ahora este tipo de problemas solo pueden resolverse por "fuerza bruta" es decir dependiendo del azar, con lo cual, tener un poder de computo el doble que todo el resto solo me da el doble de chances que el resto de resolverlo primero

Con lo cual, esto lleva a que para poder escribir 1 bloque tengo que intentar poder escribirlo muchas veces, si tengo mucho poder de cómputo, alguna vez resolveré el problema primero que el resto, y podré escribir esa base de datos. Esto lleva a la lógica que la PoW es como un sorteo inhackeable basado en poder de cálculo matemático de los participantes

A medida que la red de gente que resuelve estos problemas es mas grande, cada vez el nivel de dificultad es mayor por la competencia para escribir la base de datos, recordemos que hay un bloque nuevo cada 10 minutos, con lo cual la competencia se renueva cada 10 minutos. 

Para poder competir en forma seria necesito hoy por hoy una cantidad de procesadores infernal, de hecho ya no sirven los procesadores de una PC común y corriente, sino que se fabrican "máquinas" de cómputo específicas para resolver este tipo de hash y no son baratas y se necesitan muchas y gastan mucha energía y calientan mucho y hay que refrigerarlas..

Ahora la pregunta es ¿por que motivo alguien invertiría en esas máquinas y poder de cómputo para escribir la base de datos? ¿Qué gana con ello? bueno ahí vamos..


Los Mineros


El proceso de resolución del desafío matemático de cada bloque se lo llama "minado" del bloque

Los mineros son justamente aquellos que compiten en esa competencia matemática cada 10 minutos intentando resolver el hash del bloque actual, y el premio principal por ganar la competencia es una cantidad de bitcoins (con minúscula) es decir una cantidad de esa moneda, que se emite cada vez que se resuelve un bloque

¿Qué cantidad?
Cuando arrancó a funcionar el programa Bitcoin eran 50 BTC por cada bloque, pero cada 4 años aprox (en realidad cada 210k bloques) se reduce a la mitad, como arrancó en 2008, en 2012 pasó a ser 25 BTC esa recompensa, y en 2016 pasó a ser 12.5 y en 2020 solo 6.25 BTC de premio, y así cuando lleguemos al año 2140 donde tras tantos procesos de partir a la mitad la recompensa, ésta pasara a ser de menos de 0.00000001 BTC (la menor fracción de BTC que se la denomina satoshi, es decir una cienmillonésima parte de bitcoin)

A ese proceso de disminución a la mitad en la generación de recompensas por minado de bloque se lo llama "Halving" y es lo que garantiza la característica deflacionaria en la emisión ya que su tasa de crecimiento, en muy poco tiempo, será menor a la del crecimiento de la economía en general.

A continuación les muestro un gráfico de cómo varía la recompensa por bloque año a año hasta 2040

Recompensa año a año por minar bloques de BTC
Recompensa año a año por minar bloques de BTC



Por lo tanto la cantidad máxima de BTC ya está escrita en el programa mismo, serán 21.000.000 de BTC en ese año 2140, de este modo, el crecimiento de la cantidad en circulación es inverso al crecimiento de la recompensa, hoy ya existen 18.590.068 al momento de escribir esta nota (dentro de 10 minutos habrá 6.25 BTC más y así el proceso)

Hoy en día la tasa de crecimiento de los BTC es del 1.76% anual 
La cuenta es: 6,25*6*24*365 / 18590068

Y puedo calcular la tasa dentro de 4 años perfectamente!
Será de 0,82% aprox, se calcularía como:  3.125*6*24*365 / 19820000
Ya que la tasa de recompensa sería de la mitad que hoy, es decir de 3.125 BTC y el circulante aproximadamente 19.820.000 BTC

O sea que cada vez será menor con respecto al crecimiento de la economía mundial, lo que la convierte indefectiblemente en deflacionaria siempre y cuando la demanda se mantenga constante, ya que este enfoque es desde el punto de vista de la oferta.

A todo esto hablando de la oferta monetaria, estoy simplificando un poco porque no estoy teniendo en cuenta los BTC perdidos, sí, hay muchos BTC que se perdieron de las primeras etapas cuando nadie le daba importancia, imaginen que es famosa una anécdota en la que la primera transacción de bienes de la economía real por BTC fue de dos pizzas a cambio de 10.000 BTC, en esos momentos nadie le daba mucha importancia al BTC y su valor era simbólico, por lo tanto muchas claves de acceso a los BTC se perdieron para siempre, son como dinero esterilizado (para siempre) en una comparación con la masa monetaria de un sistema fiduciario como el del dolar. 

Y piensen en la cantidad de BTC que se irán perdiendo con el tiempo, es disminución de la oferta asegurada quizá cada vez menos si el BTC sigue escalando así su precio, pero es inevitable que se sigan perdiendo claves de acceso a billeteras, y una clave perdida significa que se pierde el acceso a esos BTC para siempre.



La función de los mineros


Volviendo a los mineros, estos son quienes le dan seguridad a la red con su poder de cómputo, obviamente que todo esto es bastante mas complejo, yo lo simplifico para una nota de blog, pero imaginen que hay todo un sistema de votación para realizar cambios en el sistema, y a su vez quien domine mas del 50% del poder de cómputo tendría el derecho a cambiar cualquier cosa de la red o el protocolo sin tener que consensuar con nadie, pero se estima imposible llegar a ese nivel en la red de Bitcoin

Esto es debido por la atomización que hay y los millones de jugadores e interesados, imaginen que para llegar a ese poder de cómputo en un mercado donde no hay minero que concentre mas del 20%, se necesita un acuerdo entre los 5 mineros mas importantes para lograr el 51% o que alguien adquiera de repente un poder de computo mayor al de toda la red actual, a nivel tecnológico no hay forma de fabricar tan rápido semejante cantidad de procesadores y ni hablar de instalar sin que nadie se de cuenta semejante infraestructura.

Sin embargo en criptomonedas de bajo market cap no es tan loco que alguien quiera "boicotear" a la moneda adquiriendo un poder de minado del 51% para luego irse con su poder de minado a otra criptomoneda, esto se ha visto en alguna ocasión y se conoce como "ataque del 51%"

Para ver el ranking de criptomonedas ordenadas por market cap les dejo el siguiente link:


Por lo tanto la "proof of work" es una prueba de inversión en el fondo, es decir si bien es una prueba de trabajo realizado para resolver el hash, en realidad para realizar semejante trabajo se requiere una gran "inversión en fierros" en tecnología digamos, y un gran gasto de energía, arista interesante pero mas profunda de analizar. En principio el PoW (prueba de trabajo) es la garantía que se le exige a quien pretenda escribir un bloque, y luego viene un sistema de consensos basados en esta PoW para validar la escritura de ese bloque, el resto de la red puede leer la base de datos pero no escribirla

La solución al problema del ataque del 51% viene dada por otro paradigma de validación conocido como prueba de participación PoS (proof of stake) pero lo veremos mas adelante, la idea en ese tipo de prueba es que los interesados en realizar el ataque tendrían que ir en contra de los equilibrios de Nash lo que dejaría sin sentido realizar el ataque.

Corto esta parte acá porque se me está haciendo muy extenso para la extensión de una nota
Mañana sigo esta tira con una 3ra y 4ta parte..

Desde ya abierto a cualquier consulta, debate, etc
  1. en respuesta a Icorsiglia
    -
    #14
    14/01/21 18:34
    Porque la dificultad de resolverlos tan rapido sumado al diseño "encadenado" de la cadena de bloques hace que sea imposible hackear la base de datos, y justamente eso hace viable una base de datos no solo inhackeable sino distribuida y descentralizada, es decir que no depende de ninguna empresa ni gobierno. El valor detrás de todo es la viabilidad tecnológica de esa seguridad de los datos guardados en la blockchain
  2. #13
    13/01/21 10:25
    Una consulta, cuál sería la utilidad de la resolución de los problemas matemáticos que hacen los mineros? Por qué le daría tanto valor al bitcoin?
  3. #12
    13/01/21 05:06
    Bueno está muy bien desarrollado, pero la verdad es que no entiendo nada. Solo que hay unas compras de nada y un monedero para comprar el comprador algo que se venda en bitcoins, que no hay responsable y que tampoco tiene garantía ninguna, salvo las que pueda desconocer. Muy complicado para mi, después están los mineros y los transformadores, en fin que como decía alguien, solo se que no se nada. aunque el articulo tiene gran mérito. Seguiré intentan do entender el galimatías bitcoin.
  4. #11
    05/01/21 06:44
    Brutal el post! Sin duda es una lectura obligatoria para los que no estamos al día con las criptomonedas 
  5. en respuesta a Ezequielfanelli
    -
    #10
    04/01/21 19:36
    Hola muchas gracias

    1- No lo aclaré pero además de la recompensa por bloque minado al que resuelve el desafío matemático, a los mineros se los recompensa con un fee por transaccion que pagan todas las tranasacciones que entran en cada bloque ese fee es variable y es tipo subasta, cada persona que quiere mover BTC de un lado a otros propone un fee y por prioridad de precio se van ordenando. Este es justamente uno de los cuellos de botella del BTC, por un lado no entran tantas transacciones en un bloque y por otro lado cuando se congestiona la red con muchas transacciones si pones un fee muy bajo puede tardar varias horas en ejecutarse el movimiento tuyo. Hay otras monedas como ETH que solucionan este inconveniente muy bien.

    2- Los Forks son como copias de exactamente todo igual, la misma blockchain y el mismo programa, quedan como dos bases de datos paralelas, Bitcoin tuvo varias, una de ellas fue la de BCH. Esto sucede cuando una parte de los mineros quiere hacer un cambio y la otra parte no, entonces se Forkea, que es como "hacer una copia" la parte que no cambia queda todo tal cual, y la copia se le hacen los cambios, algunos mineros se van con el Fork y otros se quedan con el original, si tenias una wallet con saldo en el original antes del fork, luego tienes la misma wallet en ambas la original y el fork, asi que los usuarios super contentos, es un tema de gobernanza y decisiones del programa de los mineros, luego el precio de mercado lo pondrán los usuarios, un minuto luego del Fork valen lo mismo y luego de ello por oferta y demanda cada una seguirá su camino de precios y usuarios propios en adelante.
  6. en respuesta a Juanpy
    -
    #9
    04/01/21 17:22
    Gracias a sido muy provechoso.
    Un cordial saludo. Para Sr Juanpy. Att:JM
    P.D  Buenas Fiestas.
  7. en respuesta a Adolfo Contreras
    -
    #8
    04/01/21 17:14
    Gracias por la info. Un saludo cordial para Sr Adolfo Contreras.
    Buenas fiestas.
    Att: JM
  8. #7
    04/01/21 12:11
    Excelentes post. Felicitaciones.
    1) que pasa cuando se acaba la emisión 21MM en el 2140. Cómo remuneramos a los mineros?
    2) hablaste algo de los forks en un comment, pero no logro entenderlos y por eso los veo como muy turbios. Podrás profundizar en otro post?
    Gracias,
    Ezequiel
  9. #6
    04/01/21 11:55
    Hola Juan, muchas gracias por la mención y por la explicación que está estupenda. Aprovecho para felicitarte por tus contenidos en general porque yo a mi nivel le doy a python y he aprendido ya varias cosas gracias a tí. Ojalá tenga tiempo pronto de ver todos los que me faltan!

    Sólo puntualizar dos cosas:

    - En realidad una capacidad del minado del 50% o del 90% no son suficientes para cambiar nada, porque lo que manda es el consenso de mercado. Puedes además con tu nodo invalidar los bloques de la cadena que no quieras. Por ejemplo, en 2017 el 92% de los mineros estaban a favor de aumentar el tamaño del bloque (para que hubiese más transacciones y pudiesen con ello ganar más). Dado que provocaría un hard fork, los usuarios amenazaron con vender las criptomonedas de la cadena que no querían. Esto significa que la cadena que defendían los mineros valdría mucho menos y por lo tanto los mineros no querían minar algo que valiese mucho menos, así que terminaron abandonándolo.

    La PoW no deja de ser una señal honesta (me creo tanto esta versión de la verdad que estoy dispuesto a apostar este coste por ello)

    - @wikthor La computación cuántica es una amenaza tanto para Bitcoin como para la banca online, como para el email, la navegación online privada, como para las compras en amazon. Y aunque está mucho más lejos de lo que podría parecer llegará. Pero no solo existen ya algoritmos quantum-proof, sino que ya se está investigando su implementación y otras soluciones para aumentar la resistencia. En otras palabras, la computación cuántica es más una amenaza para nuestras compras en amazon que para Bitcoin!

    Un saludo!
  10. en respuesta a Juanpy
    -
    #5
    04/01/21 10:38
    Si, tienes razon, habria muchos usos "prioritarios" para la tecnologia.
    Pero seria como el oro, a partir de cierta cotizacion, yacimientos poco rentables se abren. Con el BTC en 34k$ y subiendo el incentivo es muy, muy grande.
    Incluso en plan conspiranoico, atacarlo sobrexplotando para luego beneficiar el $C o €C.
  11. en respuesta a Elrioplatense
    -
    #4
    04/01/21 10:26
    Sería visto mas bien como un ataque, como cuando una empresa adquiere a otra para diluirla y absorberle los clientes como para limpiar la competencia, ese sería el objetivo de acaparar el 51% del poder de minado en un protocolo PoW. Igualmente hay mecanismos de defensa, por ejemplo un Fork, que es como una bifurcación de la blockchain justo antes del momento que el ataque del 51% se haya producido, de ese modo queda como una subdivisión la blockchain atacada y la otra paralelas, los mineros honestos se quedarían con el Fork de la blockchain no atacada aunque el daño a la credibilidad de ese poder de minado es irreparable desde lo psicologico para los tenedores de esa moneda, no se si me explico
  12. #3
    04/01/21 10:14
    Hola Juan:
    ¿Cuál sería el interés de quedarse con la mitad más uno del minado? ¿"Fabricarse" unidades de moneda para uno mismo? Si pone en riesgo la subsistencia de todo el sistema, ¿para qué tomarse el trabajo? ¿Qué pasó en los otros casos?
  13. en respuesta a wikthor
    -
    #2
    04/01/21 09:15
    No es tan sencilla la computación cuantica, una cosa es la teoría y otra muy diferente la práctica pero si, claramente un "salto cuántico", literal en este caso, lo cambiaría todo, pero no te olvides que no es poca la inversión que hay en esto y al fin de cuentas es una competencia tecnológica como cualquier otra, quien quiera utilizar tecnología de otro nivel para el mismo fin, va a tener que invertir mucho para sobrepasar las barreras contra "minado cuantico" (por ponerle un nombre) que le pongan desde el software, y si lo logra será una evolución tecnológica, no veo a la computación cuántica tanto como amenaza al BTC, aunque sin duda alguna sería una amenaza mucho mas grave a todo lo que usa criptografia a nivel centralizado como por ejemplo el sistema bancario. Igual es un tema que da para largo en serio muy interesante por cierto
  14. #1
    04/01/21 09:02
    Desde la distancia y seguro la ignorancia.
    Todos esos cálculos sobre el BTC no se irían al garete si entran en servicio los ordenadores cuánticos. Sycamore de GOO o los de IBM y Lockheed están muy cerca de ser operativos.
    Nadie volvería a minar un BTC aparte de ellos.