BITCOIN

      No hay comentarios en BITCOIN
Bitcoin

Bitcoin

Los desarrolladores están acelerando la Red Bitcoin

Bitcoin está diseñado como una red peer-to-peer, donde los nodos se conectan al azar a otros nodos. Las transacciones y los bloques se transmiten a través de esta red por estos nodos, hasta que cada uno ha recibido todos. Esto funciona bastante bien, ya que el modelo distribuido hace Bitcoin relativamente resistente a la censura; no hay punto central de control para apagar o presión en el cumplimiento.

Pero también tiene un inconveniente importante: La red peer-to-peer es relativamente lento. Como tal, los mineros (y piscinas) veces el poder de hash residuos mineros en la parte superior de un bloque de edad, mientras que un bloque más reciente está encontrando su camino a través de la red. retardo de transmisión, la minería, por lo tanto, beneficios agruparon, así como la agrupación geográfica de los mineros, incentivando una topología de minería más centralizado. Esto es generalmente considerado como uno de los cuellos de botella de escalabilidad, como bloques más grandes (que pueden incluir más transacciones) se expanden aún más lentamente.

En los últimos años, por lo tanto, varios proyectos han estado en desarrollo para aumentar la velocidad de propagación de bloque. Estos proyectos se centran en aproximadamente dos cuestiones principales: la compresión de bloques para limitar la cantidad de datos que necesita ser propagado a través de la red, y la velocidad de relé para desconectar el tiempo necesario para que los bloques se propaguen.

Esta serie de dos partes ofrece una visión general de estos proyectos. Parte 1 cubrirá la compresión del bloque.

Bitcoin

Bitcoin

La cabeza primero Minería

Cada bloque de Bitcoin tiene una cabecera de bloque, que se refiere a todos los datos en ese bloque. Un hash de esta cabecera de bloque debe ser incluido en el bloque posterior con el fin de que el próximo bloque sea válida. Así es como se encadenan todos los bloques del blockchain.

Cuando un minero encuentra un bloque, se envía la cabecera del bloque primero – seguido rápidamente por el resto del bloque. Esta cabecera, así como el resto del bloque, se comprueba su validez mediante la recepción de los nodos. Si es válida, los mineros se Mine “en la parte superior de” ese bloque con el encabezado del bloque. El bloque (incluyendo la cabecera) también es enviada a otros nodos.

La cabeza primero Minería es un truco propuesta por el ex jefe de desarrollo de Bitcoin Core Gavin Andresen. Con cabeza primero Minería, mineros no esperan a que el bloque completo para llegar antes de que comiencen la minería una secuencia posterior. En su lugar, inmediatamente mina en la parte superior de la cabecera del bloque tan pronto como se reciben, y también envían la cabecera a otros nodos. Obviamente, esto ahorra tiempo.

La cabeza primero Minería, sin embargo, tiene dos desventajas. En primer lugar, los mineros no saben a ciencia cierta si el bloque que son la minería en la parte superior de es realmente válida. Mientras que la cabecera de bloque puede aparecer como válido (debido a una prueba suficiente de trabajo), el bloque puede ser, por ejemplo, incluir las transacciones no válidas. Como tal, hay un poco de riesgo implicado en esta solución. “Atacar” compañeros de los mineros con blockheaders falsos para tenerlos recursos de los residuos es caro, pero no imposible.

En segundo lugar, como una desventaja tal vez más grande, los mineros no tienen idea de qué transacciones se incluyen en el bloque que son la minería en la cima de. Como tal, la única forma de asegurar su bloque siguiente es válida, y no doble pasar una transacción, es mediante la inclusión de ninguna transacción en absoluto. Sólo después de que los mineros reciben el bloque completo van a trabajar en un bloque que sí incluye las transacciones.

Por supuesto, esto significa que algunos bloques estarán vacíos, lo cual no es muy grande para el rendimiento de la red. (Sin embargo, si el tamaño de bloque se puede aumentar como resultado, podría compensar.)

Los bloques compactos

Como se ve, los nodos Bitcoin normalmente hacia delante unos a otros bloques través de la red peer-to-peer. Desafortunadamente, esto puede causar picos de ancho de banda significativo de salida cada vez que se encuentra un nuevo bloque, lo que puede reducir la velocidad de propagación en el bloque de entre los nodos.

Los bloques compactos , desarrollado por Bitcoin Core desarrollador Matt Corallo, es un truco diseñado para disminuir la transmisión de datos. Cuando se encuentra un nuevo bloque, los nodos se comunican inicialmente sólo hashes muy compactas de datos de la transacción. Puesto que los nodos ya han recibido los datos de transacción completa cuando fue enviado originalmente por la red, pueden utilizar estos hashes de averiguar cuáles son las transacciones incluido en el bloque, y reconstruir el bloque completo de sí mismos.

Pero este truco no siempre funciona a la perfección. Si un nodo no ha recibido aún la transacción inicial antes de recibir los hashes, no puede seleccionar la transacción correspondiente. Además, en casos raros un mal transacción puede comprobación aleatoria, con un derecho de hash, engañando a un nodo en la creencia de que recibió la transacción derecha – hasta que se intenta reconstruir el bloque y lo encuentra no suma.

En estos dos casos de fallo, el nodo simplemente pide los datos de transacciones específicas, después de todo. Incluso con algunas transacciones de pleno derecho en ellos, compactos bloques se transmiten por la red mucho más rápido y requiere menos ancho de banda significativamente.

La opción Xtreme Thinblocks para Bitcoin

Bitcoin

Bitcoin

Xtreme Thinblocks , una opción incluida en Bitcoin ilimitado , es similar a los bloques compactos de muchas maneras; por ejemplo, en lugar de enviar todos los datos de la transacción, Xtreme Thinblocks transmitir valores hash más compactos.

A medida que la principal diferencia, Xtreme Thinblocks utilizan un truco matemático extra para comunicar las transacciones hashes: Bloom filtros. Sin entrar en demasiados detalles de exactamente cómo funciona este truco, Bloom Los filtros son estructuras de datos compactas ese tipo de truco a su vez el compactas bloques al revés. Los nodos pueden utilizar filtros Bloom para averiguar qué transacciones en un bloque de un nodo no está presente, y sólo éstos solicitar.

Bloques débiles

Por lo tanto, la validez de Bitcoin se bloquea, en parte, determinada por la cabecera del bloque. Más específicamente, el hash de esta cabecera de bloque debe comenzar con al menos una cantidad específica de ceros, lo que resulta en parte de un número aleatorio ( “nonce”) también se incluye en la cabecera del bloque. Tener la cantidad suficiente de ceros “demuestra” que las pruebas necesarias de trabajo fue hecho.

La cantidad específica de ceros requeridos es determinado por la dificultad. Así, como ejemplo, que en realidad no se traducen en la realidad, digamos que la dificultad es de ocho. Eso significaría que el hash de un BlockHeader tendría que comenzar con ocho ceros; una cabecera de bloque hash que se inicia con seis o siete ceros no sería válido. Tal vez sería “casi válida”, pero no del todo.

Bloques débiles , una idea relativamente antigua, son esencialmente bloques “casi válidas”. Son bloques normales en todos los sentidos: se incluyen las transacciones y todos los demás – a excepción de que el hash de su cabecera no se inicia con suficientes ceros.

Bloques débiles pueden ser útiles. Mediante la transmisión de bloques débiles través de la red, los mineros pueden indicar en qué bloque se está trabajando, y las operaciones que incluye.

Entonces, cuando un minero no encontrar alguna manera para discutir a fondo el bloque correctamente, tiene un bloque válido. Y puesto que todos los otros mineros ahora ya saben en qué bloque que estaba trabajando minera, que en realidad sólo tiene que transmitir una cantidad mínima de datos: una confirmación y el nonce correcta. Así, mientras que la cantidad total de datos enviados a través de la red es en realidad aumentada (como bloques débiles se transmiten todo el tiempo), los datos pertinentes a la mía en la parte superior de es limitado.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *