¿Por qué se eligió el tiempo de bloqueo objetivo en 10 minutos?

De acuerdo con la wiki , se eligieron 10 minutos como una «compensación».

¿Por qué diez minutos específicamente? Es una compensación elegida por Satoshi entre el tiempo de propagación de nuevos bloques en redes grandes y la cantidad de trabajo desperdiciado debido a las divisiones de la cadena.

Sin embargo, en el artículo original de Satoshi, se suponen simplemente 10 minutos para calcular los requisitos de espacio en disco.

Un encabezado de bloque sin transacciones sería de unos 80 bytes. Si suponemos que los bloques se generan cada 10 minutos, 80 bytes * 6 * 24 * 365 = 4.2MB por año.

¿Hay alguna discusión en otro lugar que explique cómo se llegó al tiempo de bloqueo de 10 minutos?

Comentarios

  • Creo que si el requisito de bloque de 10 minutos resulta problemático por alguna razón, y la mayoría de los usuarios & mineros están de acuerdo, esto puede reducirse en el futuro.
  • Mike Hearn me explicó una vez que Satoshi estimó que el tiempo de propagación del bloque era de 1 minuto y eligió intervalos de bloque de 10 minutos porque » desperdicia » El 10% del trabajo minero fue una cantidad justa. Sin embargo, actualmente el tiempo de propagación del bloque es mucho, mucho más rápido.
  • @pinhead ¿Qué quiere decir exactamente con perder el 10% del trabajo de minería?
  • @FivePoints en este contexto, queremos decir que 10 El% de los bloques extraídos » perderá la carrera » contra otro bloque extraído casi al mismo tiempo y quedará obsoleto, es decir, el pago del subsidio a el minero nunca se podrá gastar y la energía consumida por el minero para producir ese bloque se desperdiciará.
  • @pinhead tiene sentido, pero ¿cómo se calculó ese 10%? ¿Es simplemente (latencia / tiempo de bloqueo)?

Respuesta

Los bloques de 10 minutos son simplemente un compromiso.

Tiempo de bloqueo más corto:

  • PRO: tiempo de confirmación 1 más rápido (para protegerse del doble gasto de confirmación 0)
  • PRO: menor variación de pago para los mineros (menos dependencia de grupos grandes)
  • CON: requiere mayor ancho de banda (comunicación entre nodos)
  • CON – Más bifurcaciones, bifurcaciones más largas y más tiempo de reorganización
  • CON – Se desperdicia una mayor parte del hashpower sin procesar, lo que resulta en una menor seguridad efectiva.

Con un objetivo de intervalo de bloqueo más largo de más de 10 minutos, los pros y los contras se revertirían.

El principal beneficio de un el tiempo de bloque es el tiempo de confirmación 1 reducido. Mientras que un bloque más rápido «s 1 confirmación de transacción tiene menos fuerza que un bloque más largo» s 1 confirmación de transacción, sigue siendo mejor que cualquier bloque «s 0 confirma la transacción.

La velocidad de la primera confirmación puede parecer un gran beneficio, pero en realidad para la mayoría de las transacciones urgentes y de bajo valor, como comprar una taza de café, pagar un taxi o usar una máquina expendedora, el riesgo de doble gasto es muy bajo. Tenga en cuenta que aceptar tarjetas de crédito no está exento de riesgos; sin embargo, los comerciantes han aceptado durante mucho tiempo que enfrentarán algunas pérdidas; sin embargo, si esas pérdidas son mínimas, puede verse simplemente como un costo de hacer negocios. Muchos comerciantes podrían simplemente aceptar transacciones de confirmación 0 sin exponerse a más riesgo que el que implica el fraude con tarjetas de crédito.

El otro factor que disminuye el potencial real de los intervalos de bloque de destino más cortos es que, para muchos comerciantes , incluso los tiempos de confirmación «más rápidos» todavía no son lo suficientemente rápidos. Para una transacción de punto de venta, un tiempo de confirmación promedio de 2 minutos sigue siendo significativamente más largo de lo que la mayoría de los comerciantes considerarían viable. La transacción promedio con tarjeta de crédito demora aproximadamente 20 segundos (incluidos los retrasos por parte del cliente). Toda la industria ha gastado importantes recursos para reducir incluso unos segundos. Los cambios como permitir al cliente deslizar la tarjeta, deslizar el dedo antes de que se hayan marcado todos los elementos y no requerir firmas en valores bajos se tratan reduciendo un par de segundos de un proceso que ya es rápido y el costo de esos cambios se considera aceptable para mejorar ligeramente la eficiencia de un pago.

El otro factor i s que reducir el intervalo objetivo solo reduce el tiempo medio de confirmación, pero la mitad de ellos será más largo y la cola puede ser muy larga. Debido a la naturaleza aleatoria de las soluciones de bloques, aproximadamente el 15% de los bloques tardarán más de 2 veces el objetivo, un 3% más de 3 veces el objetivo y> 7,5 minutos y aproximadamente el 0,5% tardará más de 4 veces el objetivo. Esa incertidumbre dificulta que una empresa sensible al tiempo espere, como política, las confirmaciones. Si la mayoría de las transacciones se confirman en 30 segundos, pero algunas tardan unos minutos, el cliente se sentirá frustrado en el punto de venta.

Si la economía de BTC crece lo suficiente, podríamos ver un uso ampliado de «direcciones verdes» para satisfacer la necesidad de una aceptación instantánea sin confirmaciones. Dichos servicios podrían ser proporcionados por grandes corporaciones y respaldados por un seguro contra el fraude (por una pequeña tarifa por transacción). Esta sería una solución de confirmación 0 más viable que una simple reducción del intervalo de bloqueo.

Dicho esto, el objetivo de 10 minutos probablemente fue demasiado conservador y hay algunas ventajas en un tiempo de bloqueo más corto.

Comentarios

  • Tu error es que piensas » ataque de doble gasto » significa » 51% de ataque «. Puede intentar duplicar el gasto con menos, pero ‘ no se le garantiza el éxito. Cuantos más bloques espere, menor será su oportunidad. > El 50% es el punto en el que ‘ tiene garantizado el éxito final sin importar cuántos bloques se esperen. La probabilidad de éxito con un < 50% de ataque depende de la cantidad de bloques y no de la cantidad de tiempo. Esta es una ventaja de los bloques más cortos.
  • Un tiempo de bloque más corto tiene otra variación favorable para los mineros. Además, el espacio de almacenamiento adicional para bloques cortos es insignificante ya que la mayor parte de los datos son las transacciones, no los encabezados de los bloques.
  • Tiene algunos errores tipográficos: las primeras 2 entradas para » El tiempo de bloqueo más largo » debe ser » CON » y » PRO » en lugar de » PRO » y » RRO «.
  • @MeniRosenfeld Gracias por las correcciones y agregué diferencias de variación y eliminé las diferencias de almacenamiento como tienes razón, las diferencias serán bastante pequeñas. También eliminé el aspecto basado en el tiempo porque, aunque he escuchado que requiere más confirmaciones, no ‘ no tengo conocimiento definitivo. Hay suficientes otras diferencias conocidas.
  • Muy buena actualización, me gustaría poder votar a favor de nuevo. 😉

Respuesta

Encontré esa parte del wiki frustrante también, y simplemente la edité. Apreciaría las correcciones. Esto es lo que escribí:

Satoshi eligió específicamente diez minutos como una compensación entre el tiempo de la primera confirmación y la cantidad de trabajo desperdiciado debido a roturas de cadena. Después de que se extrae un bloque, a otros mineros les lleva tiempo descubrirlo y, hasta entonces, están compitiendo contra el nuevo bloque en lugar de agregarlo. Si alguien extrae otro bloque nuevo basado en la cadena de bloques anterior, la red solo puede aceptar uno de los dos, y todo el trabajo que se realizó en el otro bloque se desperdicia. Por ejemplo, si los mineros tardan un minuto en promedio en aprender acerca de los bloques nuevos y los bloques nuevos llegan cada 10 minutos, entonces la red en general está desperdiciando alrededor del 10% de su trabajo. Alargar el tiempo entre bloques reduce este desperdicio.

Como experimento mental, ¿qué pasaría si la red Bitcoin creciera para incluir a Marte? Desde los puntos más lejanos de sus órbitas, una señal tarda unos 20 minutos en viajar desde la Tierra a Marte. Con solo 10 minutos entre nuevos bloques, los mineros en Marte siempre estarían 2 cuadras detrás de los mineros en la Tierra. Sería casi imposible para ellos contribuir a la cadena de bloques. Si quisiéramos colaborar con ese tipo de retrasos, necesitaríamos al menos unas horas entre nuevos bloques.

Comentarios

Respuesta

Como Bitcoins son la primera criptomoneda en usar la generación de bloques y así sucesivamente, uno puede asumir que 10 minutos fueron un elegido arbitrariamente. Cualquier valor que sea lo suficientemente grande como para propagar el nuevo bloque a través de la red antes de que sea probable que otro minero genere un nuevo bloque sería bueno. En el otro extremo, los bloques no deberían ser demasiado escasos, ya que llevaría demasiado tiempo obtener las confirmaciones. Una hora de cálculo se considera a salvo de ser manipulado, así que dividir ese tiempo en partes ordenadas puede darte 10 minutos.

Probablemente no haya ninguna discusión disponible sobre este tema, ya que la primera versión de Bitcoin fue creada solo por Satoshi, así que hasta que revele su verdadera identidad o regresa a la comunidad, las razones exactas «no se pueden averiguar con seguridad.

Comentarios

  • El análisis en Satoshi ‘ no ‘ no se relaciona en absoluto con la cantidad de tiempo que se debe esperar, que depende únicamente de la practicidad de mantener una tasa de hash alta durante mucho tiempo. hora.Discutió la cantidad de bloques a esperar; mostró, por ejemplo, que si el destinatario espera 6 bloques y el atacante tiene el 10% del hashrate de la red ‘, un doble- El intento de inversión solo tiene < 0.025% de probabilidad de éxito. A 1 minuto por bloque, son 6 minutos, etc.

Responder

AFAICS, el único beneficio posible para el tiempo de bloque más largo es la reducción de la sobrecarga de ancho de banda debido a la menor probabilidad de divisiones de la cadena de bloques.

Incluso dudo de esa compensación, porque si los datos de la transacción son la mayor parte, entonces existe el efecto de contrapeso más corto los tiempos de bloque significan menos datos para transmitir.

Soy muy escéptico de que deba desperdiciarse más trabajo con un tiempo de bloque más corto, si la dificultad está calibrada con el momento de llegar a un consenso. Matemáticamente, los mineros ganan un porcentaje de los bloques recién creados proporcionados aproximadamente por su porcentaje del poder de hash del sistema, independientemente de la división relativa en proporción de su suerte entre la dificultad del trabajo y las cadenas huérfanas (aleatorias).

A menos que hay una prueba, dudo de la afirmación de que los tiempos de bloque más cortos crean tiempos más largos para llegar a un consenso (es decir, reorganizar divisiones), porque, por ejemplo, si hay 4 veces más divisiones con 1/4 del tiempo de bloque, hay aproximadamente 7 más iteraciones para llegar a consenso dentro de la misma duración

dado que la irreversibilidad es una función del número de bloques & mdash;. ̶ no de tiempo y la desventaja de los retrasos en las transacciones, ̶ parece una más corta bloque de tiempo es ̶c̶o̶m̶p̶e̶l̶l̶i̶n̶g̶.̶

I apreciaría si downvoters haría al menos tratar de d Defiende su lógica con un comentario debajo de mi respuesta. Eso me da la oportunidad de debatirlos y mostrarles por qué creo que están equivocados (o de admitir mi error). El punto es asegurarnos de que colectivamente tenemos la lógica correcta.

Comentarios

  • Esta respuesta no tiene en cuenta el costo de tiempo incurrido por la transmisión en bloque y la verificación del bloque . Dado que ese tiempo es una cantidad aproximadamente fija para un bloque completo, es una porción relativa más grande de un intervalo de bloque más corto que un intervalo de bloque más largo.
  • @Murch, escribí esa respuesta unos días o semanas después iniciando mi estudio de blockchains, criptografía y Bitcoin. Mis puntos de vista han cambiado considerablemente por lo tanto. Sin embargo, suponiendo que el volumen de transacciones por bloque se reduzca dada una frecuencia de bloque más alta, su afirmación de propagación constante & tiempo de verificación no es correcta. Craig Wright ha afirmado que la red de Bitcoin se propaga al 99% del hashrate en aproximadamente un segundo.
  • Dado que prácticamente todos los mineros están conectados a Fiber y los datos publicados sugieren que ‘ s apenas un poco más lento que la velocidad de la luz, < 1 segundo no es una afirmación difícil de hacer … Sin embargo, el impacto más significativo de este año fue probablemente que los mineros actualizaron a una versión reciente de Bitcoin Core para señalar la activación de segwit. A principios de este año, todavía veíamos varios bloques huérfanos por semana. Un tiempo de bloqueo de p. Ej. 60 segundos nos habrían hecho retroceder a múltiples bloques huérfanos por día. Dado que los datos están ahí para mirar, es ‘ desconcertante que parezca negar el efecto.
  • @Murch, ¿SegWit redujo el tamaño de bloque promedio en un factor de 10? De lo contrario, es de suponer que los datos que está citando no abordan mi punto. Entiendo ahora (no es lo que hice en 2016 cuando escribí esa respuesta) que los tiempos de bloque más cortos también aumentan las ventajas asimétricas para las coaliciones de hashrate, como los grupos que ven sus bloques ganadores al instante (sin demora de propagación). Así que los huérfanos excesivos podrían ser minería egoísta en acción. Tenga en cuenta que la variante de GHOST de Ethereum es una solución parcial a algo de eso.

Deja una respuesta

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