Bitcoin los fundamentos (Parte 1)

5

Introducción


Arranco el año con esta nota para pasar en limpio conceptos muy básicos de estos temas del mundo crypto porque me preguntan cada vez mas seguido (suele pasar cada vez que sube el BTC, pero ahora es cada vez mas)

Si van a buscar en estas líneas si conviene o no comprar bitcoin, les ahorro la lectura, no lo van a encontrar, esta serie de notas son simplemente un humilde aporte para entender a que viene el bitcoin a nuestras vidas, su valor fundamental que hace que la gente le de un valor intrínseco en dinero a su unidad monetaria etc. 

Lo escribo para mis lectores que me suelen consultar cada vez en las redes con el auge del precio del BTC cosas relativas a este mundo apasionante de las cryptomonedas, antes que nada aclaro que no soy para nada un especialista en el tema, simplemente soy un apasionado por la tecnología, me considero parte de un movimiento que apuesta a la libertad en la toma de decisiones y al apalancamiento en el uso de la tecnología para mejorar nuestra calidad de vida, así que me tomo la difusión de estos conocimientos como mi pequeño granito de arena para poner algo de luz en el tema.

Si no sabes como funciona, no compres bitcoin. primero entiéndelo

Y si quieren entender bien bien a fondo como funciona bitcoin recomiendo fuertemente seguir a alguien que si sabe muchísimo del tema, AdolfoContreras y suscribirse a su blog en Rankia "Aprendiendo bitcoin desde cero" , van a encontrar allí información mucho mas completa que en estas humildes guías para principiantes.

No obstante, me animé a hacer una guía en 4 notas super básicas e introductorias al tema para resumir lo mas relevante en palabras simples para que, quien viene de afuera y escéptico a este mundo, lo pueda comprender fácilmente.

Van a escuchar hablar de DeFi, DApps, DAOs, smart-contracts y demás cuestiones, a veces veo algo suelto y me doy cuenta que lo entiendo porque ya se de que se trata lo anterior, alvenir estudiando este mundo desde hace unos años pude ver la evolución de cada cosa, pero entiendo perfectamente la dificultad que tiene el que recién hoy intenta entender este enjambre de temas todos juntos, así que me propuse explicar todo bien paso a paso, pero si algo no se entiende pregunten que este foro está muy bueno para eso..  así que allá vamos.



Definiciones principales


Empecemos hablando de lo mas básico de todo antes de hablar de "los activos", se suele escuchar hablar de Bitcoin y de bitcoin como si fueran la misma cosa (no, no es un typo, es que escribí Bitcoin y bitcoin, la primera con "B" mayúscula y la segunda con "b" minúscula

¿Qué diferencia hay entonces entre Bitcoin y bitcoin?
Bitcoin es un programa online de computación que genera bitcoins (es como la diferencia entre la maquina que imprime billetes y los billetes)

Resulta que Bitcoin (con mayúscula) es un programa que arma "bloques de datos" que se van encadenando para formar la famosa "blockchain" y tiene varias genialidades:

  • Es inhackeable, o sea segura e inviolable
  • Está distribuida en millones de discos rígidos al mismo tiempo
  • Es descentralizada, la mantienen miles de usuarios independientes (mineros)
  • El programa es de código abierto, por lo que todos los desarrolladores pueden mejorarlo y armar aplicaciones sobre este

Parecen todos juegos de palabras que suenan bien, pero vamos a entender bien que significa cada palabra de esos 4 items paso a paso


¿Qué me dan cuando compro una criptomoneda?


Nada. Si, así como lo lees, no te dan nada. En realidad funciona así
Antes de comprar una criptomoneda debes abrirte una "cuenta virtual" es como una cuenta bancaria que tiene la capacidad de recibir y realizar pagos, se las llaman "wallets"

A diferencia de una cuenta bancaria estas "wallets" tienen las siguientes ventajas:
  • Son gratuitas
  • No tienen costo de mantenimiento alguno
  • Se pueden abrir todas las que uno quiera a su nombre
  • Se hace en segundos

Ahora al crear una "wallet" o cuenta virtual para enviar y recibir bitcoin, obviamente no tiene saldo, esta vacía. Para tener saldo debes comprar bitcoins a alguien que te los venda o pedir que te los regalen o donen.

Ahora bien, el que te vende el bitcoin o te lo dona, debe tener previamente una "wallet" con ese saldo, es una obviedad, pero bueno, también debe demostrarle a Bitcoin (el programa) que el es el verdadero dueño de esa wallet, para ello debe firmar la transacción con su clave privada. Y te envía el dinero a tu dirección pública

¿Qué te queda entonces luego que compras 1 bitcoin?
Pues nada (Bueno en realidad te queda la clave privada de una wallet que ahora para la Red Bitcoin tiene el sado de 1 bitcoin, o la fracción que hayas comprado, se puede comprar hasta una cienmillonésima parte de bitcoin)


Esto de las claves públicas y privadas es importante, cuando creas una "wallet" tendrás dos claves, una pública y otra privada, la pública es como si fuera la dirección o número de cuenta tuya, en realidad técnicamente es mas complejo pero digamos que es como tu número de cuenta bancaria, debes indicarle esa dirección a quien te vaya a depositar en tu cuenta, mientras que la clave privada solo es necesaria para sacar fondos de la cuenta, es decir para firmar las transacciones como su titular, ya que se espera que solo el titular de la wallet sepa su clave privada.

Resumiendo, y haciendo la analogía con el sistema bancario, la calve pública es como el número de tu cuenta bancaria y la clave privada como el PIN para acceder a los fondos por el cajero o el homebanking.

Obviamente que tiene la dificultad que tanto la clave pública como la clave privada son un choclo de caracteres alfanuméricos imposibles de recordar (no, en serio, imposible) por lo que se suele usar una "semilla generadora" de 12 o 24 palabras que si puedes recordar mucho mejor. La idea de esto es que al pasar esa semilla por un algoritmo, genera el par de llaves publico-privada de tu wallet, pero si olvidas la clave privada, no hay problema porque solo recordando la semilla, puedes volver a generar ambas claves.

Una clave privada se ve como algo así 18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725

Una dirección pública como algo así:  16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM



Como funciona Bitcoin (El programa)


Vamos por partes, dijimos que es un programa que arma bloques de datos (una base de datos)
Esos bloques se van encadenando cada uno con algo del anterior, por eso la idea de "cadena de bloques" por ejemplo cuando se escribe el bloque número 5, para escribirse se necesita saber como quedó el bloque número 4 para poder armarlo, es decir que si al escribirse el bloque número 5 quisiera escribir el número 7 no podría porque necesito tener escrito el bloque 6 primero.

Esto me lleva a que en esa base de datos "encadenada" por ejemplo si quisiera reescribir el bloque número 5 tendría que modificar el número 6 y el 7 y así todos hasta llegar al bloque actual.

¿por que bloque vamos?
En este preciso momento por el bloque número: 664420
Pueden seguir bloque a bloque en el siguiente link https://www.blockchain.com/btc/blocks

Se agrega un bloque nuevo cada 10 minutos aprox, si hacen click en cada bloque en ese link que les dejé verán la cantidad de bitcoins desde y hacia donde se movieron que son las transacciones del bloque, un bloque tiene varias transacciones, todas las que entran en el bloque que se produce cada 10 minutos.

ahahah, ahí nombré al "bitcoin" con minúscula, y si, el programa Bitcoin lo que hace es escribir una base de datos que básicamente sirve como libro contable, es decir para escribir de donde a donde se mueven los bitcoins


¿pero de dónde salen los bitcoins que mueve Bitcoin?


Este punto es crucial para entender este enredo. Pero antes vamos a hacernos la siguiente pregunta:  ¿Quién tiene la computadora donde se escribe esa base de datos? es decir ¿Quién tiene la base de datos?

Prepárense para esta respuesta...
Todos los que quieran tenerla 

Es raro no? es decir, en un banco por ejemplo, el banco es responsable de administrar la base de datos de las cuentas de sus clientes, solo el banco tiene acceso a su base de datos, pero en Bitcoin, quienquiera se la descarga a su compu y ya, tiene acceso a toda la base de datos

¿pero entonces es re hackeable?
No tan rápido, la siguiente pregunta entonces sería ¿Cómo hago para poder escribir en la base de datos, en  lugar de solo leerla?

Claro, en realidad que todos tengamos la base de datos no significa que todos podamos escribir cambios en ella, si yo me bajo el programa Bitcoin puedo tener en tiempo real la base de datos actualizada pero para poder modificarla o escribir nuevos bloques tengo que demostrar de alguna forma que no soy un hacker y que estoy interesado en defender la base de datos con todas mis fuerzas.. Es decir que para que me den permiso de escribirla tengo que demostrar ser un soldado del mismo equipo

Ok, siguiente pregunta obligada entonces ¿Cómo se demuestra eso?
Bueno, hay un mecanismo de consenso en el que hay confirmación cruzada y demás, pero sin entrar en detalles, a grandes rasgos hay dos tipos de pruebas para corroborar que quien quiere escribir la base de datos es alguien interesado en defenderla.. 

Aquí es donde entra esa terminología de PoW (Proof of Work) o PoS (Proof of Stake), hay otros pero estos dos son los principales, pero ya lo dejo para la segunda parte para no extender tanto esta nota


  1. #5
    11/01/21 16:35
    Es hackeable bajo el esquema oligopólico del 51% de los participantes.  Ya vimos que las big tech son tan poderosas como para silenciar lideres mundiales, desobedeciendo al sistema legal de los paises. ¿Crees que podrán apoderarse del 51%?
  2. en respuesta a Karenbazan
    -
    #4
    05/01/21 00:41
    Buenas, no entendí ¿que aplicación? 
  3. #3
    04/01/21 20:18
    Buenas noches, y cómo saber si la aplicación es verdadera!? 
  4. en respuesta a Matias Gorganchian
    -
    #2
    04/01/21 19:32
    Correcto 10^-8 ahi lo pongo bien, gracias Mati
  5. #1
    04/01/21 18:46
    Muy buenq esta introduccion.

    Un comentario, un Satoshi es la cien millonesima parte de un bitcoin.