Aprende todo sobre Bitcoin

Lo siguiente es un post de mi Blog Andresperezfc.com

Seguramente has escuchado hablar sobre el fluctuante precio del Bitcoin donde el pasado 8 de enero alcanzo su pico más alto en la historia con un valor en el mercado $41.000 dólares, a partir de allí la criptomoneda cae perdiendo $10.000 dólares de valor, sin embargo, para el día en que se escribe esta nota, se ha recuperado estando alrededor de los $37.000 dólares.

Bitcoin crossed above $40.000 for the first time. Bloomberg (2021)

El propósito de este post estará enfocado hacia entender el funcionamiento tecnológico de la criptomoneda (Bitcoin), desde sus fundamentos hasta su historia, también revisaremos un poco de información sobre las criptomonedas que han surgido después de Bitcoin.

¿Cómo funciona Bitcoin?

Sabemos que el Bitcoin es dinero digital, pero la forma en cómo funciona no es muy distinta al funcionamiento del dinero “real” o el que normalmente conocemos, de hecho, gran parte de ese dinero que está en tu banco también es digital. La principal diferencia está en que el dinero es centralizado y controlado por el gobierno de tu país, mientras que el Bitcoin es totalmente descentralizado ¿Qué significa esto?

  • Normalmente Cualquier transacción que tu realices de forma digital será verificada y controlada por tu banco (Centralización), es decir, el banco verifica que en tu cuenta existe el dinero y lo transfiere a una cuenta bancaria de otra persona. En Bitcoin no interfiere ninguna entidad bancaria o gubernamental, todo es verificado y validado por la comunidad de usuarios.
  • Con el dinero digital que está en tu banco No hay privacidad, cuando queremos comprar algo por internet o enviar dinero, nuestros datos personales quedan registrados. Por otra parte en una transacción de Bitcoin, no quedan nombres, ni números que identifiquen a una persona.
  • El hecho que tu dinero este controlado por el gobierno también hace que sufra devaluaciones por la inflación, creada principalmente cuando el gobierno decide imprimir o emitir más dinero.
Bitcoin vs. oro vs. dólar. ihodl (2018)

Entonces, expliquemos como funciona Bitcoin. Este funciona bajo un sistema Peer to Peer (P2P) o red de pares, este tipo de redes permite el intercambio de información de forma descentralizada, ya que cada computador que está conectado puede actuar como un cliente o como servidor.

Un ejemplo de esto es Ares ¿recuerdas cuando intentabas descargar canciones de allí? Bueno, esas canciones no estaban en un servidor central, estaban en los computadores de miles de personas y lo que tú hacías con Ares era solicitar a cada una de esas personas una parte de la canción hasta que dicha canción estuviese completa y guardada en tu PC.

Interfaz grafica del software Ares Galaxy

Con Bitcoin tenemos un registro global de transacciones, algo muy parecido a un libro mayor y de balances, donde queda registrado todas las transacciones que se han llevado a cabo con la moneda, literal todas, las de cualquier persona, este registro está disponible al público y puede ser consultado en cualquier momento.

Como mencioné, Bitcoin es descentralizado y trabaja en una red P2P, por lo que, todas las personas que participan tienen una copia de estos registros en su computador y por eso todas las transacciones y balances son públicos, sabiéndose por dónde ha pasado cada Bitcoin, sin embargo, ninguna transacción está ligada a nombres o identificadores de personas, solo se utiliza el número de la cuenta (llave pública) y esto es lo que garantiza el anonimato.

Sabemos que cada persona tiene una copia de este registro global de transacciones, entonces para realizar una nueva transacción las personas deben contar con una Wallet o billetera electrónica y esta contiene un par de llaves que en esencias con códigos criptográficos.

Este par de llaves son: la llave pública y la llave privada; la pública permite a los usuarios enviar y recibir bitcoins, es como una simple dirección de un lugar (casa, edificio, casillero) de donde esperas enviar o recibir cosas. La privada por su parte es la que otorga al usuario la propiedad de la Wallet y de los fondos que allí reposan, además todas las transacciones que hagas estarán firmadas con esta llave, pero sin revelarla.

Cuando una persona envía bitcoins a otra, la información de la transacción llega a todos los miembros de la comunidad, la información se valida y se acepta, actualizándose así el registro global de transacciones.

A este registro global de transacciones se le conoce como BlockChain, esta es una base de datos P2P, distribuida, de código abierto, digital, cifrada, replicable y prácticamente imposible de falsificar, miles de personas tienen una copia exacta de esta base de datos, si quisieras falsificar o alterar algún dato, tendrías que hacerlo en miles de computadores, recuerda que el sistema Bitcoin es descentralizado y distribuido, a diferencia de un banco donde toda la información esta centralizada, es por esto que los bancos reciben a diario ciberataques.

Características de Blockchain:

  • Distribuido: un grupo de computadores comparten información y todos están de acuerdos con dicha información.
  • Sistema de consenso: todos los usuarios de la Blockchain tienen la misma información y a la vez se realizan verificación y validaciones constantemente.
  • Global: basta con tener acceso a Internet para poder ver toda la información.
  • Veloz: se puede hacer transacciones internacionales en solo minutos.
  • Funciona a base de criptografía: hace uso de la criptografía y de sistemas simétricos y asimétricos.
  • Transparente: Blockchain es un libro contable público distribuido. Ninguna información es oculta.
  • Inmutable: Blockchain no permite que se elimine información. Todo lo que se haga va a quedar registrado.
  • Sin intermediarios: es sostenido por miles de computadores alrededor del mundo. No hay una empresa o entidad de por medio.

BlockChain está compuesto de bloques, cada bloque contiene los datos de las transacciones realizadas.

¿Cómo funcionan estos bloques?:

  • Los bloques son creados por los usuarios, en teoría (solo en teoría) cualquier persona desde su PC podría crear uno, convirtiéndose así en minero.
  • Para crear el bloque e ingresarlo a la blockchain el minero debe resolver haciendo uso de un software especial, problemas matemáticos. 
  • En un bloque se registran aproximadamente entre 2000 y 2400 transacciones.
  • El minero que genere el bloque gana una recompensa, 50 Bitcoins para el primer bloque creado de la historia y luego cada 210 mil bloques la recompensa se reduce a la mitad. Actualmente la recompensa es de 6.25 bitcoins.
  • Cada 10 minutos se agrega un nuevo bloque al BlockChain.
  • Para añadir un nuevo bloque el minero que lo genere debe enviárselo al resto de mineros de la comunidad y estos deben aprobarlo, una vez aprobado, se actualiza la copia del Blockchain que tienen todas las personas.
  • Los bloques son permanentes, no se pueden ni modificar ni borrar.

En resumen, tenemos:

  1. Bitcoin funciona bajo un sistema Peer-to-Peer (P2P) por lo que NO hay una entidad central encargada del control, sino que es la misma la comunidad la que se encarga de él.
  2. Blockchain o cadena de bloques, es la base de datos donde se registran todas las transacciones de la moneda. Cada 10 minutos se agrega un bloque a esta cadena y cada bloque tiene entre 2000 y 2400 transacciones.
  3. Para realizar transacciones se debe hacer por medio de una wallet o billetera electrónica.
  4. La información de la transacción se propaga a todos los usuarios y entra en un bloque junto con otras transacciones.
  5. Comienza el proceso de minado, que consiste en validar el nuevo bloque, quien logre hacerlo primero se lleva una recompensa en bitcoins. 
  6. Una vez validado el bloque, este entra en la Blockchain.

Pongámonos Técnicos

Cada bloque tiene un peso aproximado de 1 mb y su composición principal es la siguiente:

Hash del bloque anterior + fecha y hora de creación + transacción de recompensa para el minero + todas las transacciones que quepan hasta llegar a 1mb + Nonce

De lo anterior aparecen dos términos nuevos: Hash y Nonce

Empecemos por Hash

Un hash es un identificador único y de tamaño fijo, resultado de una operación criptográfica, tomando una cadena de caracteres inicial y codificándola a otra cadena única. Con los hashes podemos asegurar la autenticidad de los datos como contraseñas y crear firmas electrónicas.

Lo mas interesante de los hashes es que para generarlo es tan simple como tener un texto, por ejemplo “esto es una prueba” de ese texto anterior obtenemos el siguiente hash F6A4F817EBC9C7E4765004C1CDA4F6028429ED089529C9F7148D60B392905617

Además, cada mínimo cambio en el texto inicial, modifica todo el hash, ejemplo: 

Texto: esto es una prueba1

Hash: 6674136C109C28759D59645DFA5960A669D5EE5DBBD5F0F9ADE621A293FFACF7

A pesar de que solo agregue un 1 al final del texto, el hash obtenido es totalmente diferente a comparación del anterior.

Ahora bien, si quisieras descifrar ese código te podrías tardar miles de años en hacerlo, esto porque tendrías que probar 2^256 de posibles combinaciones (imposible)

Funciones Hash conocidas:

  • MD5
  • RIPEMD
  • SHA

Para el mundo de las criptomonedas la función hash más utilizada es la SHA-256, Secure Hash Algorithm o algoritmo de Hash Seguro, es un algoritmo criptográfico desarrollado por la Agencia de Seguridad Nacional de los Estados Unidos (NSA) en 1993, su primera versión fue la SHA-0 y posteriormente fueron lanzando nuevas versiones más seguras como la SHA-2, con variantes como: SHA-224, SHA-256, SHA-384, SHA-512.

¿Para que utiliza Bitcoin la función SHA-256?

Crear direcciones Bitcoin (Dirección de la Billetera electrónica): esta dirección con la cual podrás recibir o enviar Bitcoins funciona igual que una cuenta bancaria, la gran diferencia es que la cuenta bancaria solo utiliza números y una dirección de Billetera es alfanumérica, como esta: 1A1z2h6f0dGefi2DMPTfTL5SLM8J32D9fNa, dicha dirección se crea haciendo uso de una función Hash como la SHA-256.

Minar Bitcoins: la blockchain esta compuesta de bloques, para agregar un nuevo bloque es necesario que el minero encuentre un hash valido y para ello debe calcular miles de millones de hashes SHA-256 hasta encontrar uno que pueda validar el bloque. para encontrar ese hash valido el minero se debe enfrentar a una `dificultad`, de la que hablaremos más adelante.

¿Qué es el NONCE?

Number that can be only user once, lo que traduce, “Número que solo puede usarse una vez”. Cada bloque valido tiene un hash y una de las reglas para obtener ese hash es que debe empezar por cierta cantidad de ceros, por ejemplo:

00000000C9CF1923277CF5DABBBBAF86890ACDC111329A39F43B1B8E53741F90

Y para lograrlo debes probar miles de millones de números hasta dar con el Nonce que te pueda generar un hash que cumpla con la regla de los ceros.

¿Por qué hacer esto? Encontrar el Nonce esta ligado a la prueba de trabajo.

Prueba de trabajo / Proof of Work (PoW)

Estoy seguro de que alguna vez has realizado un captcha, el famoso “No soy un robot”, bueno una de las razones por las cual se utiliza esto principalmente en los registros de las páginas web, es para evitar el registro masivo de bots o spam en el sitio, resolver el captcha solo dificulta el registro sin embargo no representa ni guarda algún dato adicional.

En Bitcoin la prueba de trabajo se utiliza como algoritmo de consenso que permite validar las transacciones y generar los nuevos bloques que entran en la blockchain.

¿Cómo funciona la prueba de trabajo?

  1. Teniendo en cuenta que los mineros deben generar nuevos bloques para la blockchain, esto deben adivinar el nonce del bloque, el cual ya sabemos que es el que permite generar un hash que cumpla con las condiciones o la regla de los ceros
  2. Cuando el minero encuentra el nonce, lo comparte con toda la comunidad de mineros.
  3. La comunidad valida rápidamente que el nonce es correcto y se aprueba el bloque.
  4. El minero que encontró el nonce de primero, se lleva su recompensa.

Con esto se garantiza que:

  • No entrarán en la blockchain bloques no validados.
  • Se protege a la red de ataques, ya que encontrar el nonce requiere de un gran poder computacional, por lo tanto, no hay forma que una o grupo de personas controlen la red encontrando todos los nonce, pues deberían tener un poder computacional superior al de toda la comunidad junta (imposible) además para generar el bloque valido se requiere de una gran cantidad de electricidad y desgaste de hardware, haciendo que sea muy poco conveniente intentar algún fraude.
  • La probabilidad de generar un bloque y obtener la recompensa, es prácticamente igual para todos.
  • Entre más mineros haya, más segura es la red.

¿Cualquiera puede ser minero de Bitcoins?

En teoría cualquier persona con un computador puede ser minero, sin embargo, hoy día ya no es así. En los inicios del bitcoin era totalmente posible minar haciendo uso de un simple computador, esto debido a que la dificultad para hacerlo era baja, a diferencia de ahora que es necesario adquirir hardware especializado para que sea realmente rentable la minería de bitcoins. 

La dificultad

La red de Bitcoin automáticamente actualiza la dificultad para poder generar un bloque en un tiempo promedio de 10 minutos, si los bloques comienzan a generarse mucho más rápido que esos 10 minutos, entonces la dificultad se ajusta haciendo más difícil minar y así el proceso tarde aproximadamente 10 minutos, lo mismo sucede si es muy difícil minar y se tarda más del tiempo promedio, la dificultad disminuye en este caso.

A lo largo del tiempo los mineros pasaron de utilizar sus computadores normales para minar, luego se descubrió que, utilizando tarjetas gráficas, como Nvidia o AMD (tarjetas utilizadas principalmente para videojuegos) podían llevar a cabo el proceso de minería más rápido, aunque con el gran inconveniente de que utilizar estas tarjetas requiere de mucha electricidad y generan mucho calor.

Luego crearon hardware especializado ASIC (aplicación integrada de circuitos) estos incluyen chip que son mucho más rápidos que las tarjetas gráficas y con un coste energético menor.

Pools de minería

Cada vez es más difícil minar Bitcoins y entre más mineros haya más complejo es, por esto los mineros encontraron una forma de unir fuerzas y trabajar colaborativamente minando bloques de bitcoins y distribuyendo las ganancias proporcionalmente a la cantidad de trabajo que cada minero realizó.

A día que se escribe este post la recompensa por minar un bloque está en 6.25 Bitcoins, por lo tanto, en una pool de minería se debe dividir ese valor entre todos los mineros según su contribución en el minado.

El bitcoin se puede dividir a fracciones más pequeñas, siendo el Satoshi la unidad más pequeña, es decir, la unidad de menor valor de un Euro es un céntimo, la de un dólar un centavo.

1 bitcoin es equivalente a 100 millones de Satoshi o 1 Satoshi equivale a 0,00000001 Bitcoin.

Esto permite gran flexibilidad a la hora de realizar pagos con Bitcoin.

Pools de minería conocidas:

  • AntPool
  • NanoPool
  • F2Pool

Un poco de historia

Ahora que entendemos un poco más como funciona Bitcoin, revisemos cómo y de donde surgió todo esto.

El 31 de octubre de 2008 un usuario bajo el nombre de Satoshi Nakamoto hace público un paper donde expone el protocolo de un sistema para crear dinero digital, lo puedes encontrar aquí no se sabe quien o quienes son los creadores realmente, Satoshi publica el paper, meses después comparte el software Bitcoin y no se vuelve a saber más de él.

  1. Publicación del primer paper (2008)
  2. Publicación sobre el software (2009)

Con el primer bloque generado también se generaron los primero 50 bitcoins de la historia, iniciando una innovación tecnológica que revolucionaria el mundo de las finanzas.

Primer bloque minado de la historia, cuya recompensa fue de 50 BTC

1 centavo de dólar era lo que costaba 1 bitcoin en el 2009, esto era lo que se consideraba que costaba energéticamente minar un bloque, también es cierto que muy pocas personas sabían de esta tecnología.

Todo cambio cuando un usuario en un foro hace la oferta de 10.000 bitcoins a cambio de 2 pizzas. Desde ese momento el Bitcoin toma realmente un valor.

Usuario ofrece 10.000 BTC a cambio de 2 pizzas

Hoy 25 de enero de 2021 esos 10.000 BTC equivalen a $324.337.000 USD (Trescientos veinticuatro millones trescientos treinta y siete mil dólares) o $1.163.724.399.000 COP (un billón ciento sesenta y tres mil setecientos veinticuatro millones trescientos noventa y nueve mil pesos)

Las dos pizzas más caras de la historia.

Detalles de la transacción

Sobre criptomonedas

Bitcoin fue la primera criptomoneda creada con el protocolo Blockchain, a partir del 2011 comienzan a crearse las criptomonedas alternativas o Alcoins, que, si bien cuentan con distintas propiedades y características, todas apuntan al uso de una red P2P descentralizada y segura.

Las criptomonedas más importantes:

  1. Bitcoin (BTC)
  2. Ethereum (ETH)
  3. Tether (USDT)
  4. Polkadot (DOT)
  5. XRP (XRP)

Tipos de Alcoins:

  • Monedas de privacidad: para transacciones totalmente privadas (Monero, Zcash, Dash, etc)
  • Monedas estables o Stablecoins: se busca que el valor de estas criptomonedas sea lo mas estable posible y no las afecte la volatibilidad del mercado. Para ello se utiliza un backup de respaldo, ya sea con activos financieros, materias primas u otros criptoactivos (Tether, USD Coin)
  • Tokens Exchanges: para ser utilizadas en plataformas de trading (Binance Coin, KuCoin, etc)
  • Monedas digitales del Banco Central (CBDC): son criptomonedas que han sido creadas para respaldar a un banco central o entidad gubernamental.

Ventajas y desventajas del Bitcoin y criptomonedas

Ventajas

  • Seguridad y transparencia: es imposible hacer fraude en el sistema.
  • Global y descentralizado: no importa en que lugar del mundo este, cualquiera puede acceder y ser parte.
  • Bajos costos transaccionales: la transferencia es muy rápida y efectiva.
  • La emisión del Bitcoin es limitada: En el protocolo establecido por Satoshi Nakamoto quedó expreso que solo habrá 21 millones de bitcoins, solo existirá esa cantidad, por lo tanto, la inflación es inexistente. 

Desventajas

  • Se debe tener conocimientos claro en el uso de billeteras electrónicas para realizar transacciones de manera segura, de lo contrario se puede llegar a perder grandes cantidades de dinero.
  • Bastante volatibilidad, existe mucha fluctuación en el valor de las criptomonedas.

Plataformas para comprar Bitcoin y Criptomonedas:

  • Binance
  • Buda.com
  • Bitinka
  • Localbitcoins

Billeteras electrónicas (Wallets):

  • Ledger
  • Trezor
  • Coinbase
  • MyCelium
  • Bitcoin Wallet
  • Bitpay

Escribir este post fue particularmente complejo porque estuve en la dicotomía entre hacerlo totalmente sencillo o explicarlo totalmente técnico, después de varios días creo que logré un buen punto medio.

Sin duda un tema apasionante lleno de historias, tecnología, e incluso leyendas, espero que con este post puedas adentrarte un poco más y hayas aprendido algo nuevo.

___________________________________________________________________

Enlaces de interés

___________________________________________________________________

Andrés Pérez Campo

@Andresperezfc

___________________________________________________________________

Mis otros posts:

¿Cómo funciona la bolsa de valores?

Guía básica sobre las vacunas

Me gusta2 Me gustasPublicado en: Blog, Ciencia de datos, Economía, Ingeniería, Ingeniería de sistemas, Ingeniería electrónica, Programación

Artículos relacionados

Comentarios

Bloque 10
Bloque10
Festival de Innovación educativa
Innovafest