EDITAR Hay una descripción más clara de algunas partes del problema en las preguntas del enlace.
Si hay un valor de transacción mucho más alto que el pago por minar 10 bloques nuevos, ¿cómo puedes confiar en esta transacción?
Para ir más en detalle. Si soy un chico malo y pago una gran suma con una criptomoneda de prueba de trabajo. Grande significa que el valor es mucho más alto que el pago por minar 10 bloques nuevos. Después de eso, espero un tiempo, por ejemplo, tanto tiempo que se extraen 10 bloques nuevos en el medio, para que todos piensen que la transacción es segura. Entonces soborno a los mineros con la mitad del valor de mi transacción para crear una nueva cadena sin mi transacción. Debido a que la mitad del valor de mi transacción es mucho y los mineros son egoístas, crearán la nueva cadena para obtener más pagos de esta manera.
¿Existe alguna solución para este tipo de ataques en la construcción de cualquier criptomoneda que funcione con prueba de trabajo?
La única solución que veo es que confiemos solo en valores de transacciones que sean comparables con los costos de minería. Pero entonces la criptomoneda es muy ineficiente.
Creo que lo que estás describiendo es un ataque del 51 %, pero con un tercero que no es un minero, incentivando el "mal comportamiento" del minero. Incluso con un soborno fuera de blockchain, necesitaría más del 51% de los mineros para que este ataque funcione (de lo contrario, la 'cadena original' siempre superaría a la 'cadena sobornada').
Entonces, si un minero 'egoísta' quisiera realizar este ataque, creo que tendría más sentido que lo hiciera para su propia transacción, no para otra persona. Realizar este ataque con la participación de un tercero solo aumenta el riesgo para el minero (¿y si el tercero no paga el soborno? etc.). Creo que tiene más sentido que un minero simplemente realice el ataque por sí mismo: envíe 1000 btc a un intercambio, convierta a altcoin, retire y luego retroceda la cadena de btc para eliminar la transacción que envió monedas al intercambio.
Hay una razón por la que este tipo de ataque no ha ocurrido: los mineros lo ven como menos rentable a largo plazo.
Hagamos esto asumiendo que la recompensa por bloque más las tarifas promediaron 15 btc. Esto haría que 10 bloques valieran alrededor de 150 btc.
Ataque #1 - Incentivo de transacción única:
Resultado: este método de ataque no funcionará ya que se abandonará la bifurcación.
Ataque #2 - Incentivo de transacciones múltiples:
Resultado: Sobre el papel, este método de ataque beneficia a los mineros y a Alice. Sin embargo, en la práctica, este ataque todavía se queda corto por un par de razones:
Por lo tanto, participar en un ataque de este tipo no redundará en beneficio de los mineros a largo plazo.
La única forma en que posiblemente funcione es si la mayoría de los mineros quieren que Bitcoin falle y, en ese caso, Bitcoin tiene problemas mucho mayores.
Ataque n.° 3: soborno sin tarifa de transacción:
Esto es técnicamente menos costoso que el ataque n.º 2, pero requiere la participación de más del 50 % de los mineros del mundo, por lo que el esfuerzo de coordinación es enorme. Esto se debe a que todos los mineros participantes deben coordinar su software de minería para poder jugar con estas reglas. Además, dependiendo de la cantidad de mineros/fondos de minería que no participen, esto aumentará la cantidad de bloques que Alice necesitaría flotar. Por ejemplo, si el 30% de los mineros no participa, para cuando el décimo bloque de la cadena bifurcada ruede, habrá alrededor de 13 bloques en la cadena original.
Esto volvería a tener el mismo escenario en el que sería de conocimiento público que los mineros reescribieron la historia y socavaron (sin juego de palabras) la cadena de bloques. Incluso si la transacción de Alice fuera fuera de la cadena, aún romperá el principio central de que las transacciones de 6 bloques de profundidad son seguras y, por lo tanto, devalúan Bitcoin.
Nuevamente, la única forma en que esto podría funcionar es si la mayoría de los mineros quieren que Bitcoin falle.
Creo que tienes un punto válido. Digamos que controlo el 50% de la minería. ¿Cuánto aceptaría por iniciar una nueva bifurcación desde 10 cuadras atrás?
Con el 50 % de la minería, obtendría aproximadamente la mitad de los bloques, o 5 de los 10 bloques recién extraídos. Pedirme que bifurque desde 10 cuadras hacia atrás significaría que estaría renunciando a estos 5 bloques de pago.
La pregunta entonces es cuánto tiempo me llevaría alcanzar la cadena de bloques real desde 10 cuadras atrás. Al 50% de la minería, estaría lanzando una moneda para tratar de obtener 10 caras más que cruces. En promedio, eso requiere una cierta cantidad de vueltas, digamos N. Entonces, tendría que extraer N bloques adicionales, en promedio, para alcanzar la cadena actual.
Entonces, si me paga más del valor de N+5 bloques, en promedio sería más rentable para mí comenzar una cadena para usted que continuar con la cadena actual.
Sin embargo, este es el promedio y la distribución tiene una cola larga, lo que significa que puede tomar cientos de bloques hasta que la nueva cadena sea más larga que la actual. Hay algunas maneras en las que podríamos lidiar con este riesgo:
1) Te cobro una tarifa por bloque, y me pagas mientras quieras que lo haga por ti. No hay ninguna promesa de que alguna vez me pondré al día con la cadena actual, pero seguiré intentándolo mientras sigas pagando más de lo que ganaría con la minería legítima.
2) Te cobro por adelantado y me arriesgo. En este caso, estoy en el anzuelo para ponerte al día con la cadena existente. Probablemente cobraría una gran prima en función del potencial de desviar mis recursos mineros durante mucho tiempo. Además, es posible que nunca me ponga al día, por lo que probablemente agregaría una cláusula de reembolso para reducir mis pérdidas si parece imposible.
La idea de que haría minería legítimamente porque quiero que Bitcoin tenga éxito tiene algo de verdad, porque la minería tiene un costo de instalación y quiero un retorno de esta inversión, pero por el precio correcto probablemente me arriesgaría a matar a Bitcoin. . Ese riesgo está capturado en la prima que te cobro sobre mis ingresos mineros normales.
Conectando algunos números, usaré la suposición de Briguy37 de 15 BTC por bloque extraído, y supongamos que N es 20 y mi prima es 100%. Entonces, cobraría 25*15*2 = 750 BTC para hacer esta bifurcación.
Podemos discutir los números exactos, pero el punto principal parece ser lo que estaba diciendo, que es que las transacciones grandes no son tan confiables como las pequeñas.
Yo llevaría esto un paso más allá y argumentaría que algunas transacciones más pequeñas tampoco pueden ser confiables. Supongamos que acepto pagar 10 BTC a 100 personas cada una. Son 1000 BTC de mi parte, pero cada transacción es solo 10 BTC hasta donde saben los destinatarios. si los cronometro todos iguales, el costo de revertirlos todos es el mismo que si fueran una sola transacción.
Croraf
usuario65934
Croraf
usuario65934
Croraf
usuario65934
Croraf
pieter wuille
usuario65934