Capítulo #9
Una introducción al lado técnico de Bitcoin
|
9.0 Introducción
"Bitcoin no está "no regulado"; está regulado por un algoritmo en lugar de estar regulado por burocracias gubernamentales. No está corrupto".
En este capítulo, analizaremos más de cerca la tecnología que permite que la red Bitcoin funcione de forma totalmente descentralizada. Explicaremos en términos simples qué sucede cuando envías una transacción de bitcoin, cómo se procesan esas transacciones y qué hacen los mineros y los nodos en la red de Bitcoin. En este capítulo cubriremos algunos conceptos técnicos y desafiantes. Una cosa importante que debemos recordar: muchas personas no entienden cómo funciona Internet, pero pueden usarlo todos los días para enviar correos electrónicos, contactar amigos en las redes sociales e incluso pagar sus facturas. Aprender el aspecto técnico de cómo funciona Bitcoin es un largo viaje que quizás no todos quieran emprender, incluso si deciden usarlo como dinero. Si bien lo alentamos a que siga aprendiendo sobre los aspectos técnicos de Bitcoin, mantendremos este capítulo enfocado en conceptos clave básicos.
Si desea una comprensión técnica más profunda de cómo funciona Bitcoin, hemos incluido recursos al final de este libro de trabajo. También puedes registrarte en nuestro sitio web para obtener el Diploma Bitcoin - Edición Técnica para recibir una notificación cuando este curso más técnico esté listo.
Comencemos viendo un video que muestra cómo funciona la red Bitcoin.
Actividad: vea "Cómo funciona Bitcoin bajo el capó"
Como vio en el video, la red Bitcoin es simplemente un libro de contabilidad o registro de transacciones almacenado en múltiples computadoras llamadas nodos. El libro mayor de Bitcoin es seudónimo, lo que significa que no tiene datos personales, sólo información de transacciones y direcciones. El libro mayor muestra cada bitcoin y sus movimientos desde que comenzó la red el 3 de enero de 2009.
A continuación veremos más de cerca la tecnología que hace posible este sistema.
9.1 Claves públicas y privadas: seguridad mediante criptografía
"Lo que Bitcoin nos ofrece es una dura promesa: el programa se ejecutará exactamente como se especifica".
9.1.1 Claves públicas/privadas de criptografía
⭐ El cifrado es el proceso de tomar información y transformarla en un código especial, haciéndolo ilegible para cualquiera que no tenga el método de descifrado correcto. Esto es similar a cerrar una caja fuerte, donde sólo la persona con la llave o combinación correcta puede abrirla.
⭐ El descifrado, por otro lado, es el proceso de tomar la información cifrada y hacerla legible nuevamente, como desbloquear la caja fuerte y poder leer la información que contiene.
Por ejemplo, digamos que John quiere enviarle a Arel un mensaje secreto que no debe ser leído por nadie más. Acuerdan utilizar el método de cifrado Pigpen Cipher para disfrazar el mensaje antes de enviarlo. Sólo aquellos con el cifrado pueden descifrar el mensaje, haciéndolo ilegible para cualquier otra persona. Aunque este método no se considera seguro hoy en día, ilustra el principio de la criptografía de clave privada para enviar mensajes.
**Entonces, ¿cómo funciona la criptografía en las transacciones de bitcoins?**
En la criptografía tradicional de clave privada, John y Arel primero tendrían que compartir una clave secreta, como una contraseña o el Pigpen Cipher. Luego, John usaría esta clave para cifrar su mensaje antes de enviárselo a Arel. Arel, que también conoce la clave secreta, usaría la misma clave para descifrar el mensaje y leerlo.
Sin embargo, si alguien más está en posesión de la clave e intercepta el mensaje, podría descifrarlo y leerlo.
La criptografía de clave pública, el tipo utilizado en las transacciones de bitcoins, ha resuelto este problema. Con la criptografía de clave pública, John y Arel no necesitan compartir la contraseña ni el método de cifrado entre ellos. En cambio, cada uno tiene dos claves diferentes: una Llave pública (que es seguro compartir con cualquier persona) y un llave privada (que debe mantenerse privado).
En este caso, cuando John quiera enviar un mensaje a Arel, puede usar el mensaje de Arel. Llave pública cifrar su propio mensaje antes de enviárselo a Arel. Cuando Arel recibe el mensaje, sólo él es capaz de descifrarlo con su llave privada. Cualquier otra persona, incluso si intercepta el mensaje, no podrá leerlo. Las posibilidades de robar la llave también son mucho menores porque ni siquiera John y Arel necesitan compartir la llave entre ellos.
Entonces, la principal ventaja de la criptografía de clave pública sobre la privada es que permite una comunicación segura sin la necesidad de que el remitente y el receptor compartan primero una clave secreta (u otro método de cifrado como Pigpen Cipher), que podría ser interceptado por un tercero. .
En Bitcoin, la criptografía de clave pública no se utiliza para enviar mensajes cifrados. En cambio, se utiliza para crear diseños únicos. firmas digitales que hacen que las transacciones de bitcoins sean inmutables. A firma digital es una forma de demostrar la autenticidad de una transacción de bitcoin, de alguna manera similar a cuando escribes tu firma en un documento físico.
⭐ Las transacciones de Bitcoin implican transferir una cierta cantidad de bitcoins directamente a la cuenta de otra persona.
⭐ que sólo el verdadero poseedor de los bitcoins tiene el control para enviar su dinero a otra persona. Se asegura de que la propiedad esté protegida de actores maliciosos.
⭐ Como medida adicional de protección, cada transacción que envías en Bitcoin obtiene automáticamente un firma única. Esto firma única está potenciado por tecnología a prueba de manipulaciones que ayuda a la red a verificar que el verdadero propietario de los bitcoins, y no otra persona, los ha enviado.
Cómo funciona esto en una transacción real de bitcoin en términos simples:
1. ⭐ Creando la transacción: Un usuario inicia una transacción de bitcoins especificando detalles como la dirección del destinatario y la cantidad de bitcoins que se enviarán.
2. ⭐ Generación de Firma Digital: El remitente genera un único firma digital usando su llave privada. Esta firma es un código criptográfico único que verifica la autenticidad de la transacción.
3. ⭐ Difusión de la transacción: La transacción firmada se transmite a la red Bitcoin, lo que indica la intención de transferir la propiedad de los bitcoins del remitente al destinatario.
4. ⭐ Verificación en la Red: Los nodos de la red Bitcoin reciben la transacción y utilizan el Llave pública del destinatario para descifrar y verificar la integridad de la transacción. Al mismo tiempo, utilizan el nombre del remitente. Llave pública para verificar el firma digital.
5. ⭐ Confirmación en la red Bitcoin: Si la verificación tiene éxito, la transacción se agregará al libro mayor, que sirve como un registro seguro y transparente de todas las transacciones. Una vez confirmada, la propiedad de los bitcoins se transfiere oficialmente del remitente al destinatario.
En resumen, la firma digital, creada con la clave privada del remitente, sirve como prueba criptográfica de autenticidad y propiedad, lo que permite a la red descentralizada de Bitcoin validar y registrar la transacción en el libro mayor.
9.1.2 Explicación del hash
No se deje intimidar por los términos técnicos y conceptos matemáticos que encontrará a continuación. Entendemos que no todo el mundo está loco por las matemáticas, pero quizás te sorprendas al ver que incluso las ideas más complejas se pueden comprender con un poco de esfuerzo.
¿Qué es una función?
⭐Un función Es como una máquina que toma cierta información y la convierte en algo nuevo. La información que le das a la función se llama Las opciones de entrada. La nueva información que crea la función se llama salida. Las funciones ayudan a las computadoras a realizar tareas y resolver problemas.
Piense en ello como una receta para hacer una ensalada. La receta (o función) te indica qué ingredientes usar y cómo mezclarlos para hacer la ensalada. Puedes poner diferentes ingredientes, pero la receta siempre te dará la ensalada como resultado. Las funciones se pueden utilizar para ayudar a que las cosas sean más fáciles y eficientes.
Esta receta es una función que toma los ingredientes como Las opciones de entrada y genera la ensalada mixta como salida.
En Bitcoin, las funciones se utilizan para ejecutar transacciones. Ya sabemos que las transacciones en bitcoin son esencialmente transferencias de valor (dinero) de una dirección a otra. Para realizar una transacción, se utilizan una serie de funciones criptográficas para validar la transacción y actualizar el estado del libro mayor de Bitcoin.
Las funciones utilizadas en una transacción de bitcoin incluyen verificar la autenticidad de los datos de la transacción, verificar que el remitente tenga fondos suficientes y actualizar los saldos de las direcciones relevantes. Una vez que una transacción se verifica y se agrega a un bloque en el libro mayor, pasa a formar parte del registro permanente de todas las transacciones en la red.
¿Qué es una función unidireccional?
Una función unidireccional utiliza un conjunto de instrucciones para procesar la información y convertirla en algo nuevo, como una receta de batido convierte los ingredientes en una nueva bebida. Pero, así como no se puede desmezclar un batido para recuperar los ingredientes originales, no se puede revertir la función unidireccional para recuperar la información original.
Criptografía de clave pública, de la cual Llave pública forma parte, se basa en el uso de funciones unidireccionales, que dificultan la determinación del llave privada de la Llave pública. En teoría, no es exactamente “imposible” encontrar la llave privada de la Llave pública, pero es extremadamente difícil hacerlo y llevaría una cantidad excesiva de tiempo y potencia computacional realizar esta tarea.
Encontrar un llave privada de un Llave pública En Bitcoin es como intentar encontrar una aguja en un pajar del tamaño de un campo de fútbol. La aguja representa el llave privada y el pajar representa todo lo posible llaves privadas.
Del mismo modo, las funciones unidireccionales están diseñadas para ser irreversibles y no pueden descifrarse.
¿Qué es una función hash?
⭐ Hashing Es como una huella digital para los datos digitales. Es un proceso de tomar un mensaje digital y convertirlo en un código de longitud fija, que sirve como identificador único.
Así como una huella digital puede identificar a una persona, un hash puede identificar un mensaje digital. Los hashes se utilizan en muchas aplicaciones, incluidas las transacciones de bitcoins.
Cómo se utiliza el hash en las transacciones de bitcoins
En Bitcoin, cada transacción se procesa antes de agregarla a un bloque en el libro mayor. El hash actúa como firma de la transacción, verificando que la transacción es válida y no ha sido manipulada. Si alguien intenta cambiar incluso una sola letra en la transacción, el hash será completamente diferente, alertando a otros sobre el cambio.
El papel del hash a la hora de proporcionar seguridad
El hash es esencial para la seguridad de la red Bitcoin. Al utilizar hashes para identificar transacciones, la red puede detectar cualquier intento de cambiar o manipular una transacción. Esto ayuda a prevenir el fraude y garantizar que todas las transacciones se registren con precisión en el libro mayor.
Una función hash es un tipo de función unidireccional que toma una entrada (denominada "mensaje" o "datos") y la convierte en una representación numérica denominada "hash". El salida El hash es exclusivo de los datos de entrada, por lo que incluso un pequeño cambio en el Las opciones de entrada Los datos dan como resultado un hash completamente diferente.
⭐ Una función hash Es como una máquina de códigos secretos. Se necesita un mensaje y lo convierte en un código.
Actividad: Generar SHA 256 Hash
El sistema salida, o hash, siempre tiene la misma longitud, sin importar la longitud de la información original.
Bitcoin utiliza algunos tipos específicos de funciones hash llamadas SHA-256 y RIPEMD160. A continuación se muestran algunos ejemplos:
⭐ Observe que un pequeño cambio en la segunda entrada cambia la salida por completo en comparación con la primera.
⭐ La tercera entrada es un archivo enorme, pero la salida sigue teniendo la misma longitud fija que las otras dos.
Hashing También se puede considerar como una partitura musical que captura la esencia de una pieza musical. Así como una partitura musical es una representación única de una melodía, un valor hash es una representación única de un dato. Al comparar la partitura de una pieza musical con la interpretación real, un músico puede determinar si la interpretación es precisa. De manera similar, al comparar el valor hash de los datos recibidos con el valor hash original, se puede determinar si los datos han sido alterados durante la transmisión.
Así como una ligera desviación en una interpretación musical puede hacer que suene diferente, incluso el más mínimo cambio en los datos originales dará como resultado un valor hash diferente. Esto hace que el hashing sea una herramienta poderosa para garantizar la integridad y autenticidad de una transacción de bitcoin.
El proceso de codificación del Llave pública mediante hash se utiliza para mejorar la seguridad de la información convirtiéndola en un formato ilegible de longitud fija. Bitcoin utiliza los algoritmos SHA-256 y Ripemd-160 para producir direcciones públicas. La salida resultante sirve como un identificador único para el Llave pública y ayuda a garantizar la integridad y seguridad de las transacciones almacenadas en el libro mayor. Al cifrar la información de esta manera, resulta más difícil para personas no autorizadas acceder y manipular los datos.
⭐ Determinista. Con los mismos ingredientes siempre se obtiene el mismo batido.
⭐ Resistencia previa a la imagen. No puedes pegar una fresa cuando te dan un batido.
⭐ Resistencia a la correlación. Cambiando un poco los ingredientes se obtiene un batido completamente diferente.
⭐ Resistencia a la colisión. Es difícil encontrar diferentes ingredientes para un batido que den como resultado exactamente el mismo.
⭐ Velocidad y verificabilidad. Echa la fruta a la batidora. Es rápido y lo que sale seguro es una suavidad.
9.2 El modelo UTXO
⭐ UTXO: salida de transacciones no gastadas
¿Qué son las UTXO?
En Bitcoin, las transacciones funcionan como dividir una pieza de oro más grande en piezas más pequeñas y enviar estas piezas más pequeñas tanto a otros como a usted mismo.
Puedes pensar en los UTXO como diferentes tamaños y piezas de bitcoin o billetes con denominaciones diferentes en tu billetera. Cuando gasta un UTXO, se recrea en un nuevo UTXO para el receptor, y lo que queda se le envía de vuelta en un nuevo UTXO diferente conocido como "el UTXO de cambio". Esto es muy parecido a usar un billete de $10 para comprar dos tazas de café por $6. La cafetería se queda con la pieza de $6 y le entrega $4 de cambio.
Al enviar bitcoins, siempre envías el monto total de uno (o más) de tus UTXO en tu billetera Bitcoin. ¿Lo que sucede? Envía una parte al destinatario y recibe el monto restante como cambio a una de sus nuevas direcciones de Bitcoin. El cambio que recibe se denomina salida de transacción no gastada, o UTXO, y puede usarse como entrada para una nueva transacción futura.
El saldo de su billetera Bitcoin es la suma de todos sus diferentes UTXO. Entonces, la suma de tus UTXO es la suma de la cantidad de bitcoins que posees.
⭐ Es importante tener en cuenta que no debes informar a otros sobre tus UTXO porque cuando alguien los conoce, puede rastrear tus transacciones de bitcoins en la red y, en última instancia, sabrá cuánto dinero posees.
En conclusión, cada vez que realiza una transacción, utiliza uno o más de sus UTXO existentes para gastar bitcoins y se crean nuevos UTXO (tanto para usted como para el destinatario).
Cuando se realiza una transacción, la cantidad de bitcoins enviada se divide en múltiples salidas, cada una de las cuales está asociada con una nueva dirección de Bitcoin (una nueva UTXO).
Al enviar bitcoins a alguien, utilizará uno o más UTXO como fuente de fondos (entrada). Estos UTXO se combinarán, si es necesario, para crear nuevos resultados que pertenecen tanto al destinatario de la transacción como a usted mismo. Estas nuevas salidas, o UTXO, pasarán a ser propiedad del destinatario y de su propiedad. Estos UTXO luego se pueden utilizar como fuente de fondos en otras transacciones futuras. Esta cadena de UTXO crea un historial transparente y rastreable de todas las transacciones de bitcoin en el libro mayor de Bitcoin, comenzando desde el primer bloque (3 de enero de 2009).
Un ejemplo para ilustrar cómo funciona esto: si desea enviar dos bitcoins pero solo tiene un UTXO que vale cinco bitcoins, la diferencia de tres bitcoins se le devuelve como "cambio". Este cambio es un nuevo UTXO para usted y puede gastar ese nuevo UTXO en una transacción futura.
Otro ejemplo:
1. ⭐ Alice quiere enviarle a Bob cinco bitcoins.
2. ⭐ Combina seis bitcoins de dos de sus UTXO
3. ⭐ De estos UTXO, ella envía cinco bitcoins a Bob, recibe 0.99 bitcoins como cambio para ella y debe pagar una tarifa de transacción de 0.01.
4. ⭐ Después de la confirmación, la transacción se agrega al libro mayor de Bitcoin, actualizando todos los nodos que tienen una copia del libro mayor.
Si Alice intenta utilizar uno de sus resultados ya gastados para realizar otra transacción, los nodos la rechazarán automáticamente. Esto se debe a que los nodos mantienen una copia del libro mayor de Bitcoin (y todas sus transacciones), por lo que pueden verificar fácilmente el saldo de los UTXO de Alice y verificar que la transacción no es válida.
A continuación se muestra una captura de pantalla real de una transacción real donde solo hay una entrada. Sin embargo, el saldo inicial podría, en otro caso, ser la suma de múltiples UTXO (múltiples entradas). ¿Qué observaciones puede hacer cuando observa las dos transacciones siguientes? ¿Las entradas coinciden con las salidas? ¿Puedes describir los detalles de la transacción? ¿Existe una conexión entre las dos capturas de pantalla? ¿Y qué transacción ocurrió primero?
9.3 Una mirada más cercana a los nodos y mineros de Bitcoin
En esta sección, analizaremos más detalladamente dos partes (y participantes) muy importantes de la red Bitcoin que se introdujeron por primera vez en el Capítulo 6. Veremos:
1. ⭐ Nodos de Bitcoin: Guardianes de Validación cuyo trabajo principal es mantener una copia del libro de contabilidad de Bitcoin, asegurarse de que todas las transacciones sean válidas y que todos sigan las mismas reglas.
Al distribuir este trabajo entre muchas personas en todo el mundo, Bitcoin se mantiene fuerte frente a problemas potenciales. Estos nodos ayudan a mantener el sistema confiable y fiel a su idea descentralizada, donde ninguna persona o grupo tiene demasiado poder.
2. ⭐ Mineros de Bitcoin: Arquitectos de Seguridad que utilizan potentes ordenadores y electricidad para comprobar y confirmar transacciones, asegurándose de que todo esté seguro. Este trabajo ayuda a que el libro mayor, o blockchain, sea resistente a cualquier mal actor que intente estropear las cosas.
Juntos, los nodos y mineros de Bitcoin trabajan en equipo para mantener un sistema descentralizado, seguro y sólido: una nueva forma de manejar el dinero en la que pueden confiar personas de todo el mundo. Exploremos estos roles con más detalle para comprender cómo contribuyen al innovador sistema Bitcoin.
9.3.1 ¿Qué es un nodo Bitcoin y cómo configuro uno?
Un nodo de Bitcoin puede parecer técnico, pero es sólo una pieza de software que ejecuta una copia del libro mayor de Bitcoin. Cuando ejecuta su propio nodo Bitcoin, gana voz en la configuración de las reglas de la red Bitcoin.
Imagínese esto: si un grupo de personas intenta cambiar el funcionamiento de Bitcoin, por ejemplo alterando el suministro total de bitcoins, usted tiene voz y voto. Puede optar por no cambiar su nodo al nuevo sistema, lo que es como votar para hacer cumplir las reglas de la red que respalda.
Imaginemos un nodo Bitcoin como un policía de tráfico digital con algunas tareas esenciales:
1. ⭐ Guardianes de la Validación: Un nodo de Bitcoin mantiene una copia digital de la cadena de bloques, que es como un libro de contabilidad compartido de todas las transacciones de Bitcoin. Muchos nodos en todo el mundo ostentan este mismo récord.
2. ⭐ Centro de comunicación: Los nodos se conectan entre sí, creando una vasta red de comunicación. Comparten información, especialmente transacciones que esperan ser agregadas a la cadena de bloques, almacenadas en una sala de espera digital llamada "mempool".
3. ⭐ Comprobador de calidad: Cada incorporación a la cadena de bloques se somete a un escrutinio. Los nodos garantizan que las transacciones sean válidas, rechazando aquellas que no cumplan con las reglas de la red Bitcoin.
4. ⭐ Informante de la cadena de bloques: Otro software, como las billeteras, puede solicitar a un nodo información sobre la cadena de bloques, como los saldos de bitcoins. Los nodos sirven como centros de información.
5. ⭐ Bienvenido al nuevo nodo: Cuando un nuevo nodo quiere unirse, los nodos existentes proporcionan generosamente una copia de la cadena de bloques. El nuevo nodo verifica de forma independiente la validez de cada transacción, enfatizando un sistema sin confianza.
Actividad: Ver video sobre nodos de Bitcoin
Una de las opciones para ejecutar su propio nodo es descargar el software Bitcoin Core y darle algo de tiempo para descargar toda la cadena de bloques. Una vez listo, puedes dejarlo encendido y, aproximadamente cada 10 minutos, llegan nuevos bloques con transacciones. Su nodo verifica su validez y los agrega a su copia local de la cadena de bloques.
Ejecutar un nodo proporciona soberanía e independencia. No dependes de los demás; es tu propio policía de tránsito. A diferencia de su billetera Bitcoin, que carece de una copia de la cadena de bloques, un nodo garantiza la autosuficiencia. En lugar de confiar en otros sobre sus tenencias de bitcoins (y el estado de la red Bitcoin), su billetera se comunica con su nodo personal, lo que hace que su experiencia digital sea más segura y confiable.
9.3.2 ¿Qué es un minero de Bitcoin y cómo funciona la minería?
"El propósito de la minería no es la creación de nuevos bitcoins; ese es el sistema de incentivos. La minería es el mecanismo mediante el cual se descentraliza la seguridad de Bitcoin".
⭐ Mineros recopilar transacciones no confirmadas, formar un bloque y gastar energía para buscar una clave valiosa que agregar y asegurar el lugar del bloque en la cadena de bloques.
Los mineros están en una carrera para agregar el siguiente bloque a la cadena de bloques. El premio buscado es un "hash de bloque válido", inteligentemente escondido entre miles de millones de otros, y sólo una clave específica asignada por la red puede desbloquearlo.
Imagínese un enorme pajar lleno de millones de claves, cada una de las cuales representa un hash de bloque único. La red ha elegido una clave específica para desbloquear una valiosa recompensa. Los mineros hurgan en el pajar, probando cada llave en la cerradura, pero sólo un minero afortunado descubrirá la combinación perfecta.
Una vez que un minero encuentra el hash de bloque correcto, lo comparte con la red junto con el bloque creado de nuevas transacciones. Otros mineros verifican la solución para asegurarse de que sea la adecuada. Si todo sale bien, el bloque se agrega a la cadena de bloques, creando un libro de contabilidad público y seguro.
Los mineros obtienen recompensas por sus esfuerzos de dos maneras:
1. ⭐ Bloquear recompensas
2. ⭐ Tarifas de transacción
Las recompensas en bloque son nuevos bitcoins que se ponen en circulación con cada bloque agregado a la cadena de bloques. Las tarifas de transacción son pequeños pagos de bitcoin que los usuarios realizan para que el minero procese sus transacciones más rápido y las priorice. Los mineros pueden elegir qué transacciones incluir en el bloque que extraen, generalmente dando preferencia a aquellas con tarifas de transacción más altas.
Mitades de Bitcoin
La reducción a la mitad de bitcoin es una parte esencial del universo de Bitcoin que ayuda a mantener su escasez y valor a lo largo del tiempo. Como sabes, hay un suministro fijo de 21,000,000 de bitcoins en total. Este suministro no está completamente disponible desde el día en que se lanzó Bitcoin. En cambio, esta oferta ingresa al universo de Bitcoin paso a paso.
Satoshi Nakamoto diseñó inteligentemente un sistema de recompensas en bloque para distribuir nuevos bitcoins sin una autoridad central. En los primeros días de Bitcoin, los mineros obtenían una dulce recompensa de 50 bitcoins por cada bloque que extraían, lo que los motivó a invertir en equipos potentes y electricidad para sus operaciones mineras.
Para mantener la red estable y gestionar el nuevo suministro de bitcoins, la recompensa por bloque se reduce a la mitad aproximadamente cada 210,000 bloques. Este evento, llamado "la reducción a la mitad", disminuye la cantidad de nuevos bitcoins que entran en circulación y continúa motivando a los mineros a proteger la red y defender su descentralización. Históricamente, los eventos de reducción a la mitad han provocado aumentos significativos de precios en el mercado de Bitcoin debido a la reducción de la oferta de nuevos bitcoins que entran en circulación.
⭐ Fuente circulante se refiere a la cantidad total de una moneda. Con Bitcoin, la oferta circulante total es la cantidad de monedas que se han extraído y están en circulación en un momento dado, excluyendo las monedas que se pierden para siempre.
Durante cada evento de reducción a la mitad, los mineros reciben menos recompensas de bitcoins, lo que reduce la tasa de emisión de nuevas monedas. Como resultado, la dificultad de extracción de Bitcoin aumenta para mantener un tiempo de bloqueo de aproximadamente 10 minutos, lo que garantiza que se agreguen nuevos bloques a la cadena de bloques a un ritmo constante. La reducción de las recompensas mineras no significa necesariamente que los mineros obtengan menos ganancias, ya que también pueden ganar tarifas de transacción por verificar las transacciones y agregarlas a la cadena de bloques, lo que puede compensar la disminución de las recompensas mineras.
Los eventos de reducción a la mitad están preprogramados en el protocolo Bitcoin, lo que hace que el cronograma de suministro de bitcoins sea predecible y transparente.
⭐ El Calendario de suministro de Bitcoin es el plan público y predeterminado para la puesta en circulación de nuevos bitcoins, diseñado para mantener la escasez de Bitcoin en el tiempo.
La siguiente tabla describe los detalles de los próximos eventos de reducción a la mitad para Bitcoin, incluida la fecha prevista del próximo evento de reducción a la mitad, el número de bloque en el que se producirá el evento de reducción a la mitad, las recompensas del bloque (por bloque minado) durante ese evento de reducción a la mitad y el porcentaje. del suministro total que será minado.
Evento | Fecha esperada | Bloquear | Recompensa en bloque | Porcentaje minado |
---|---|---|---|---|
Cuarta mitad | 2024 | 840,000 | 3.125 | 96.875% |
Quinto Reducir a la Mitad | 2028 | 1,050,000 | 1.5625 | 98.4375% |
Sexta reducción a la mitad | 2032 | 1,260,000 | 0.78125 | 99.21875% |
A medida que se extraen más bitcoins, la oferta circulante y el porcentaje de la oferta total que se ha extraído seguirán aumentando hasta alcanzar la oferta total de 21,000,000. La oferta reducida, combinada con el aumento de la demanda, puede impulsar el precio de Bitcoin (medido en dólares). Esto beneficia a los primeros usuarios y también motiva a los mineros a continuar protegiendo la red y contribuyendo con su potencia y recursos informáticos.
¿Qué es un hash de bloque válido en Bitcoin?
En Bitcoin, un hash de bloque válido es como un código especial que los mineros intentan encontrar. Es un número único que ayuda a realizar un seguimiento de cada bloque de la cadena de bloques que almacena información sobre las transacciones. Los bloques se conectan en cadena desde el primero (bloque génesis) hasta el último, haciendo un registro público de todas las transacciones. Este hash de bloque es crucial porque vincula cada bloque con el anterior, lo que facilita que cualquiera pueda verificar el historial de transacciones. Es un poco como una huella digital para cada bloque, lo que garantiza que la información sea correcta y segura. El hash del bloque actúa como una forma de confirmar que los datos del bloque no han sido modificados.
Satoshi Nakamoto, el creador de Bitcoin, extrajo el bloque inicial, que contenía un total de 50 bitcoins.
La carrera para minar un bloque
Los mineros participan en una competencia para descubrir el hash del bloque que se alinea con el objetivo (un número especial) establecido por la red. El minero que sea el primero en descubrir con éxito el hash de bloque correcto tiene la oportunidad de agregar ese bloque a la cadena de bloques y asignarle el ID de hash correspondiente. Esta solución sirve como validación de la autenticidad del bloque.
La minería se puede comparar con una carrera donde el objetivo es llegar a la meta lo más rápido posible. La dificultad de encontrar el hash del bloque se ajusta periódicamente, asegurando que cada bloque continúe minándose en aproximadamente 10 minutos (a medida que los mineros se unen y se van). Este mecanismo se llama "ajuste de dificultad".
Digamos que el número objetivo establecido por la red Bitcoin es 1,000. Los mineros tendrían que usar su potencia y energía computacional para buscar un hash de bloque (un número específico) inferior a 1,000. El primer minero que encuentre un hash de bloque inferior a 1,000 podrá agregar el nuevo bloque a la cadena de bloques y será recompensado con bitcoins.
⭐ El nivel de dificultad en la minería de Bitcoin es una medida de lo difícil que es encontrar un hash de bloque válido que cumpla con el objetivo establecido por la red. Se ajusta cada 2016 bloques, o aproximadamente cada dos semanas, para garantizar que los bloques se agreguen a la cadena de bloques a un ritmo constante. El nivel de dificultad se expresa como un número, y cuanto mayor sea el nivel de dificultad, más difícil será encontrar un hash de bloque válido.
Por ejemplo, considere dos hashes diferentes:
⭐ Hash 1:
0000A1mINgF0RbL0
cK5conHth3hAy5tacK
Nivel de dificultad: 1
⭐ Hash 2:
00000000A1mINgF0RbL0
cK5conHth3hAy5tacK
Nivel de dificultad: 2
En este ejemplo, Hash 2 tiene un nivel de dificultad más alto que Hash 1 porque es un hash más largo con más ceros al principio. Sería más difícil para los mineros encontrar Hash 2 porque sus computadoras necesitarían trabajar más.
⭐ Al encontrar un hash de bloque válido, un minero demuestra que ha realizado el trabajo necesario para agregar el nuevo bloque a la cadena de bloques y recibe una recompensa en bitcoins, más tarifas de transacción, por su esfuerzo. La prueba de trabajo (PoW) es el método que utiliza la red Bitcoin para validar transacciones y agregar nuevos bloques a la cadena de bloques.
PoW mantiene a Bitcoin seguro al dificultar que cualquier persona con intenciones maliciosas tome el control.
En resumen, las tareas de los mineros consisten en:
1. ⭐ Agrupar transacciones en bloques: Mientras los nodos verifican las transacciones recién creadas que están esperando en "Mempool", los mineros seleccionan un subconjunto de ellas para incluirlas en su bloque candidato.
2. ⭐ Prueba de trabajo: Los mineros compiten entre sí para encontrar el hash de bloque válido.
3. ⭐ Transmitir bloques válidos: Después de encontrar el blockhash válido, propagan el nuevo bloque a la red.
4. ⭐ Gana recompensas: Por último, reciben bitcoins recién creados y tarifas de transacción por agregar con éxito el bloque a la cadena de bloques.
Varios mineros pueden trabajar en la creación de nuevos bloques simultáneamente. El primer minero que descubre un hash de bloque que cumple con el objetivo establecido por la red lo anuncia a la red, y los otros mineros luego verifican las transacciones en el bloque candidato de ese minero para asegurarse de que sean válidas. Si las transacciones son realmente válidas, el bloque se agrega a la cadena de bloques. Los demás bloques creados por los demás mineros en ese momento no se añaden y se descartan. Este proceso ayuda a mantener el consenso dentro de la red y evita el doble gasto.
⭐ Un bloque candidato es un conjunto de transacciones que se consideran para agregarse a la cadena de bloques pero que aún no se han agregado.
9.4 ¿Qué es el Mempool?
El “Mempool” o Memory Pool es como una sala de espera para las transacciones en la red Bitcoin. Cuando realiza una transacción, primero se transmite a Mempool antes de verificarla, seleccionarla y agregarla a la cadena de bloques.
Imagínate que estás haciendo cola en un restaurante. Su nombre se agrega a una lista de personas esperando una mesa. Cuando hay una mesa disponible, el anfitrión llama tu nombre y te sienta. De manera similar, una transacción de bitcoin se agrega al Mempool cuando se realiza y se confirma y agrega a la cadena de bloques cuando un minero la incluye en un bloque.
¿Cómo se verifican y agregan las transacciones al Mempool?
Cuando se transmiten nuevas transacciones a la red Bitcoin, los nodos verifican estas transacciones para asegurarse de que sean válidas y que los fondos no se hayan gastado antes. Una vez verificadas estas transacciones, los nodos las agregarán a su Mempool. Luego, los nodos compartirán las transacciones con otros nodos para verificarlas nuevamente. Finalmente, si la mayoría de los nodos están de acuerdo, las transacciones estarán disponibles para que los mineros las seleccionen e incluyan en un bloque. Sin embargo, existen varias razones por las que es posible que una transacción no se confirme después de 72 horas:
1. ⭐ Tarifas de transacción bajas: Es posible que las transacciones con una tarifa baja no se procesen con la suficiente rapidez, ya que es más probable que los mineros elijan transacciones con tarifas más altas para incluirlas en sus bloques.
2. ⭐ Congestión en la red: Si la red está congestionada, puede haber un retraso en la confirmación de las transacciones, incluso si tienen una tarifa alta.
3. ⭐ Intento de doble gasto: Si un actor malintencionado intenta duplicar el gasto, la red puede rechazar su transacción.
4. ⭐ Datos incorrectos o incompletos: Si una transacción contiene datos incorrectos o incompletos, la red puede rechazarla.
5. ⭐ Transacción mal formada: Si una transacción tiene un formato incorrecto, la red puede rechazarla.
Para evitar que se rechacen transacciones, se recomienda incluir una tarifa que sea lo suficientemente alta para garantizar que la transacción se procese de manera oportuna y verificar que todos los datos de la transacción sean correctos antes de enviarla.
Actividad: Mempool
1. ⭐ Escanea lo siguiente Código QR:
2. ⭐ Revise los diversos elementos que se muestran en la página, incluidos los últimos bloques, las transacciones confirmadas, la cantidad de transacciones, el uso de memoria y el valor aproximado de todo el bloque. Responde a las preguntas:
⭐ ¿Cuál fue el último bloque minado?
⭐ ¿Cuántas transacciones se incluyeron en ese bloque?
⭐ ¿Cuál es el valor total negociado en bitcoin?
⭐ ¿Cuál fue el tamaño en megas del bloque?
⭐ ¿Con cuántos ceros empieza el nonce del bloque?
⭐ ¿Cuánto bitcoin ganó el minero en total?
⭐ ¿Cuál fue el valor total de las tarifas que recibió el minero por agregar las transacciones a la red?
⭐ Elija una de las transacciones de mayor valor del bloque. ¿A cuántas direcciones de Bitcoin se distribuyó la cantidad?
9.5 Cómo funcionan las transacciones de Bitcoin de principio a fin
1. ⭐ Adam quiere enviarle bitcoins a Gerardo. Elige uno de sus UTXO, crea una transacción y agrega todos los detalles necesarios, incluida la cantidad de bitcoins que desea enviar, la dirección de recepción de Gerardo y una cantidad superior al promedio de tarifas de transacción.
2. ⭐ Después de una verificación final para garantizar que todos los detalles sean correctos, Adam usa su clave privada para firmar la transacción.
3. ⭐ Adam transmite la transacción a la red Bitcoin.
4. ⭐ Los nodos de la red reciben la transacción y verifican su validez de acuerdo con las reglas de consenso (como verificar si la firma de Adam es válida y si tiene fondos suficientes para realizar la transacción).
5. ⭐ La transacción se marca como válida y los nodos la propagan a otros nodos de la red, agregándola al Mempool.
6. ⭐ Dado que Adam eligió una tarifa de transacción bastante alta, casi todos los mineros incluyen su transacción en sus bloques.
7. ⭐ Prueba de trabajo: los mineros corren e intentan minar su bloque encontrando el hash de bloque válido. Uno de los mineros encuentra el hash y transmite su bloque a la red.
8. ⭐ Los nodos reciben el bloque recién minado y verifican su validez. Esto incluye validar todas las transacciones dentro del bloque y garantizar que se cumpla el requisito de Prueba de trabajo.
9. ⭐ La mayoría de los nodos acuerdan que el bloque es válido y lo agregan a la blockchain. Gerardo recibe los bitcoins confirmados en su dirección de recepción.
10. ⭐ A medida que se agregan bloques adicionales a la cadena de bloques en la hora siguiente, crece la cantidad de confirmaciones de la transacción. A medida que aumenta el número de confirmaciones de la transacción, Gerardo gana mayor confianza en su éxito y carácter irreversible.
⭐ En resumen, el remitente firma la transacción con su clave privada, los nodos verifican los UTXO de la transacción y los mineros agregan la transacción verificada a la blockchain. Luego, el receptor puede acceder a los bitcoins utilizando su clave privada. Una vez que se extrae un bloque, todas las transacciones incluidas en él se consideran confirmadas y los UTXO utilizados como entradas en estas transacciones se consideran gastados y no se volverán a utilizar.
A medida que concluimos este capítulo, obtendrá información valiosa sobre los conceptos fundamentales de cómo funciona Bitcoin. Hemos cubierto aspectos esenciales, desde los conceptos básicos del dinero hasta el aspecto técnico de la tecnología Bitcoin. Ahora, unámoslo todo en el próximo capítulo. Nos espera el capítulo 10, donde profundizaremos en la importante pregunta: "¿Por qué Bitcoin?"