Qué problema resuelven los mineros de Bitcoin; Los 10 principales intercambios de Bitcoin 2017/8

Qué problema resuelven los mineros de Bitcoin; Los 10 principales intercambios de Bitcoin 2017/8
Author:
13 enero, 2021

Por Milly Bitcoin – 16 de mayo de 2013

Una de las preguntas más comunes sobre la minería de Bitcoin. ¿Qué están haciendo? ¿Qué problema están tratando de resolver? ¿Se puede resolver con papel y lápiz? ¿Están desperdiciando recursos? ¿Están usando el poder de la computadora para piratear algo?

El problema que se resuelve tiene que ver con la criptografía. En pocas palabras, un cifrado criptográfico convierte una cadena en otra cadena. Un cifrado simple sería multiplicar por 6.

Hay problemas con el uso de “multiplicar 6” como esquema. ¡El mayor problema es que es bastante fácil averiguar el número original simplemente buceando por 6! Además, el número aumentará cada vez más.

Para evitar esto, se realizan todo tipo de operaciones matemáticas complicadas con cadenas de números muy largas. Se necesitaría una explicación muy larga del algoritmo utilizado. A continuación se muestra el diagrama de un paso de un hash. Las cosas de la derecha son funciones matemáticas especiales que son tediosas de calcular y requieren una computadora.

Los mineros de Bitcoin modernos pueden hacer este problema aproximadamente mil millones de veces por segundo, por lo que puede que no valga la pena usar lápiz y papel.

Puede probarlo usted mismo en un sitio web http://www.xorbin.com/tools/sha256-hash-calculator. Ingrese un valor en la parte superior y verá una cadena en la parte inferior. Luego, debe seguir cambiando la entrada agregando cosas hasta que la respuesta comience con un cero.

Bitcoin es más complicado porque se debe incluir cierta información, incluido el hash del último bloque. De esa manera, el bloque actual depende de todos los bloques anteriores, por lo que está “encadenado”, por lo que se llama “Blockchain”. La “dificultad” del problema se cambia simplemente aumentando el número de ceros al comienzo de la respuesta (0h4fgs64j…, 00h3uyf8h…, 000yheofle…) por lo que es más difícil encontrar la respuesta. A medida que más gente mina, el problema se vuelve más difícil y el problema se ajusta, por lo que se resuelve cada 10 minutos en promedio.

Las ideas de Proof of Work (PoW) se remontan a un concepto llamado HashCash que pretendía disuadir el spam. El remitente debe proporcionar una solución a un problema criptográfico antes de que se acepte el mensaje.

Por ejemplo, tome un hash criptográfico utilizando el algoritmo de hash SHA256 del término “mensaje” (sin comillas) y obtendrá:

Ahora, si las reglas dicen que debe tener un hash que comience con un cero, puede comenzar a agregar cosas hasta que obtenga un hash que funcione:

Después de revisar los números secuencialmente, 51 fue el primero que funcionó. Siempre que se envíe “51” junto con el mensaje, el receptor puede verificar rápidamente que cumple con los requisitos realizando el hash y aceptando el mensaje. La porción agregada, en este caso “51”, se denomina “nonce”.

La minería de Bitcoin funciona compilando las transacciones, el valor que depende de todos los bloques anteriores, y luego encontrando un “nonce” que cumpla con los criterios.

El propósito de resolver este problema es simplemente mostrar que se trabajó para obtener la respuesta. Viene de un problema llamado el “problema del general bizantino”. Tienes un general que está dando órdenes de “atacar” o “retirarse” y envía esas órdenes a sus subordinados. Estos subordinados luego transmiten las órdenes a las tropas. El problema es que un pequeño número de subordinados son traidores y transmitirán órdenes falsas. Para evitar que los traidores causen resultados catastróficos, no se acepta una orden a menos que se reciba de múltiples fuentes. Para recrear el mensaje falso, un traidor tendría que hacer una enorme cantidad de trabajo. El propósito de todo el trabajo adicional es evitar que los traidores envíen mensajes falsos, pero no tiene otro propósito.

Cuando se extrae un bloque, el algoritmo de minería de Bitcoin funciona así:

  1. Un bloque comienza con un encabezado y una sola transacción para pagar la recompensa del minero. Esta transacción tiene un nombre especial (llamado “coinbase”).
  2. Las transacciones se agregan al bloque.
  3. Un “encabezado” de bloque de longitud fija se forma haciendo hashes criptográficos de las transacciones (llamado raíz de Merkle).
  4. La minería utiliza criptografía SHA256 que divide los datos en bloques de 64 bytes y opera en cada fragmento, por lo que en este caso hay 2 fragmentos y 2 pasos para el algoritmo SHA256.
  5. El primer paso sha256 se realiza en el primer fragmento del encabezado y eso no cambia. A esto se le llama “midstate” porque es parte del proceso SHA256, que en este caso consta de 2 pasos. El “estado medio” se envía al procesador ASIC,
  6. El segundo paso de SHA256 se realiza en el segundo fragmento del encabezado. Esto incluye el campo nonce. Esto se realiza en el chip de circuito integrado específico de la aplicación (ASIC).
  7. La solución completa pasa por una segunda ronda de SHA256 y la solución se compara con la dificultad (que es parte del encabezado del bloque). El nonce se devuelve si encuentra la dificultad. Esto se hace en el chip ASIC.
  8. El nonce se incrementa y los últimos 2 pasos (6 y 7) se repiten 2 ** 32 veces para agotar todos los posibles valores de nonce. Esto se hace en el chip ASIC.
  9. Si no se encuentra una solución, se incrementa otro nonce contenido dentro de la transacción de coinbase. Esto cambia el hash de la transacción de coinbase y la raíz de merkle
  10. El proceso vuelve al paso 5 y continúa hasta que se encuentra una solución.

Debido a que los chips hacen 2 rondas de SHA256, no se pueden usar para otras tareas de SHA256 que generalmente solo usan 1 pasada. Esto significa que los chips ASIC mineros de Bitcoin no se pueden utilizar para nada más que la minería de Bitcoin.