He hecho una pregunta similar aquí: ¿Es perfecto el protocolo de chismes en Bitcoin? Pero no obtuve una respuesta a mi pregunta realmente. Estoy ideando un algoritmo de consenso y necesito una respuesta definitiva.
¿Podemos dar por sentado que si en el período de tiempo t hubo 10 000 pares conectados (sin nuevos pares que se conectan, sin pares que se desconectan), todos con buena conexión a Internet y hardware, entonces si cada uno de esos 10 000 pares originó una transacción (o cualquier tipo de transacción)? mensaje) a sus pares, ¿podemos dar por sentado absolutamente que eventualmente cada uno de esos 10,000 pares conectados tienen en su mempool las 10,000 transacciones, incluidas las suyas y las de otros 9,999 pares y absolutamente ninguna transacción faltará en el mempool de cualquier de esos nodos (todos tendrán el mismo conjunto de datos)? En caso afirmativo, ¿y podría ser el tiempo estimado (segundos, minutos, horas)?
Y ahora: cosas como los gastos dobles, la corrección de transacciones, la conexión y desconexión de pares de la red, etc. que suceden en los sistemas de criptomonedas reales no son relevantes aquí; esta es una pregunta teórica y una situación teórica.
¿Podemos dar por sentado que si en el período de tiempo t hubo 10 000 pares conectados (sin nuevos pares que se conectan, sin pares que se desconectan), todos con buena conexión a Internet y hardware, entonces si cada uno de esos 10 000 pares originó una transacción (o cualquier tipo de transacción)? mensaje) a sus pares, ¿podemos dar por sentado absolutamente que eventualmente cada uno de esos 10,000 pares conectados tienen en su mempool las 10,000 transacciones, incluidas las suyas y las de otros 9,999 pares y absolutamente ninguna transacción faltará en el mempool de cualquier de esos nodos (todos tendrán el mismo conjunto de datos)?
Si también incluye que nadie está actuando maliciosamente, entonces sí, en estas condiciones perfectas sin actores maliciosos, da por sentado que una transacción llegará a todos los nodos dentro de un tiempo desconocido t
. Sin embargo, si hay actores maliciosos, entonces no.
En caso afirmativo, ¿y podría ser el tiempo estimado (segundos, minutos, horas)?
Esto es imposible de saber. Depende del hardware, en qué consisten las transacciones, la conexión a Internet, etc. En el mejor de los casos, probablemente tomaría unos cientos de milisegundos. En el peor de los casos, probablemente unos minutos. Sin parámetros más específicos, es imposible saberlo.
pieter wuille
sanket1729